diff options
Diffstat (limited to 'common/acx_pthread.m4')
-rw-r--r-- | common/acx_pthread.m4 | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/common/acx_pthread.m4 b/common/acx_pthread.m4 index 75f6a80..dcf6332 100644 --- a/common/acx_pthread.m4 +++ b/common/acx_pthread.m4 @@ -43,7 +43,7 @@ dnl We are also grateful for the helpful feedback of numerous users. dnl dnl @category InstalledPackages dnl @author Steven G. Johnson <stevenj@alum.mit.edu> -dnl @version 2005-06-15 +dnl @version 2006-05-29 dnl @license GPLWithACException dnl dnl Checks for GCC shared/pthread inconsistency based on work by @@ -219,19 +219,24 @@ if test "x$acx_pthread_ok" = xyes; then LIBS="$save_LIBS" CFLAGS="$save_CFLAGS" - - # More AIX lossage: must compile with cc_r - AC_CHECK_PROG(PTHREAD_CC, cc_r, cc_r, ${CC}) + # More AIX lossage: must compile with xlc_r or cc_r + if test x"$GCC" != xyes; then + AC_CHECK_PROGS(PTHREAD_CC, xlc_r cc_r, ${CC}) + else + PTHREAD_CC=$CC + fi # The next part tries to detect GCC inconsistency with -shared on some # architectures and systems. The problem is that in certain # configurations, when -shared is specified, GCC "forgets" to # internally use various flags which are still necessary. - # First, check whether caller wants us to skip -shared checks - # this is useful AC_MSG_CHECKING([whether to check for GCC pthread/shared inconsistencies]) - if test x"$GCC" != xyes; then + check_inconsistencies=yes + case "${host_cpu}-${host_os}" in + *-darwin*) check_inconsistencies=no ;; + esac + if test x"$GCC" != xyes -o "x$check_inconsistencies" != xyes ; then AC_MSG_RESULT([no]) else AC_MSG_RESULT([yes]) |