Mercurial > hg > octave-nkf > gnulib-hg
changeset 15584:e6d5882454bc
pthread: Determine $(LIB_PTHREAD) correctly on OSF/1 5.1.
* m4/pthread.m4 (gl_PTHREAD_CHECK): Use AC_CACHE_CHECK and
AC_LINK_IFELSE instead of AC_SEARCH_LIBS.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Thu, 08 Sep 2011 00:48:59 +0200 |
parents | 716e67b8d5a9 |
children | baa1c5c05e71 |
files | ChangeLog m4/pthread.m4 |
diffstat | 2 files changed, 32 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2011-09-07 Bruno Haible <bruno@clisp.org> + + pthread: Determine $(LIB_PTHREAD) correctly on OSF/1 5.1. + * m4/pthread.m4 (gl_PTHREAD_CHECK): Use AC_CACHE_CHECK and + AC_LINK_IFELSE instead of AC_SEARCH_LIBS. + 2011-09-07 Bruno Haible <bruno@clisp.org> openat: Work around compilation error with OSF/1 5.1 DTK cc.
--- a/m4/pthread.m4 +++ b/m4/pthread.m4 @@ -1,4 +1,4 @@ -# pthread.m4 serial 2 +# pthread.m4 serial 3 dnl Copyright (C) 2009-2011 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,12 +38,31 @@ LIB_PTHREAD= if test $ac_cv_header_pthread_h = yes; then - gl_saved_libs=$LIBS - AC_SEARCH_LIBS([pthread_join], [pthread], - [if test "$ac_cv_search_pthread_join" != "none required"; then - LIB_PTHREAD="$ac_cv_search_pthread_join" - fi]) - LIBS="$gl_saved_libs" + 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 fi AC_SUBST([LIB_PTHREAD])