+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.
-# 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,
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])