diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2012-07-04 21:28:15 -0700 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2012-07-04 23:17:52 -0700 |
commit | 31ec8584048ce391f1ff4fb26fde3c7389c656f3 (patch) | |
tree | 753ea15848d0a0c0eb3349cc511ca137db846f73 | |
parent | d8f90adf5f01512958b6da46bd5eea01294a434e (diff) | |
download | gnulib-31ec8584048ce391f1ff4fb26fde3c7389c656f3.tar.gz |
pthread: check for pthread_create, not pthread_join
* m4/pthread.m4 (gl_PTHREAD_CHECK): Check for pthread_create, not
pthread_join. On FreeBSD 9, pthread_create is in libpthread but
pthread_join in libc. I hope this removes the need for all the
OSF/1 5.1 pthread_join business. Reported by Richard Yao in
<http://lists.gnu.org/archive/html/bug-gnulib/2012-07/msg00042.html>.
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | m4/pthread.m4 | 33 |
2 files changed, 16 insertions, 26 deletions
@@ -1,3 +1,12 @@ +2012-07-04 Paul Eggert <eggert@cs.ucla.edu> + + pthread: check for pthread_create, not pthread_join + * m4/pthread.m4 (gl_PTHREAD_CHECK): Check for pthread_create, not + pthread_join. On FreeBSD 9, pthread_create is in libpthread but + pthread_join in libc. I hope this removes the need for all the + OSF/1 5.1 pthread_join business. Reported by Richard Yao in + <http://lists.gnu.org/archive/html/bug-gnulib/2012-07/msg00042.html>. + 2012-07-04 Jim Meyering <meyering@redhat.com> parse-datetime: fix failure to diagnose invalid input diff --git a/m4/pthread.m4 b/m4/pthread.m4 index 42a2a69c57..99c1d20916 100644 --- a/m4/pthread.m4 +++ b/m4/pthread.m4 @@ -1,4 +1,4 @@ -# pthread.m4 serial 3 +# pthread.m4 serial 4 dnl Copyright (C) 2009-2012 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -38,31 +38,12 @@ AC_DEFUN([gl_PTHREAD_CHECK], LIB_PTHREAD= if test $ac_cv_header_pthread_h = yes; then - dnl We cannot use AC_SEARCH_LIBS here, because on OSF/1 5.1 pthread_join - dnl is defined as a macro which expands to __phread_join, and libpthread - dnl contains a definition for __phread_join but none for pthread_join. - AC_CACHE_CHECK([for library containing pthread_join], - [gl_cv_search_pthread_join], - [gl_saved_libs="$LIBS" - gl_cv_search_pthread_join= - AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[#include <pthread.h>]], - [[pthread_join (pthread_self (), (void **) 0);]])], - [gl_cv_search_pthread_join="none required"]) - if test -z "$gl_cv_search_pthread_join"; then - LIBS="-lpthread $gl_saved_libs" - AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[#include <pthread.h>]], - [[pthread_join (pthread_self (), (void **) 0);]])], - [gl_cv_search_pthread_join="-lpthread"]) - fi - LIBS="$gl_saved_libs" - ]) - if test "$gl_cv_search_pthread_join" != "none required"; then - LIB_PTHREAD="$gl_cv_search_pthread_join" - fi + gl_saved_libs=$LIBS + AC_SEARCH_LIBS([pthread_create], [pthread], + [if test "$ac_cv_search_pthread_create" != "none required"; then + LIB_PTHREAD="$ac_cv_search_pthread_create" + fi]) + LIBS="$gl_saved_libs" fi AC_SUBST([LIB_PTHREAD]) |