diff options
author | Rainer M. Canavan <git@canavan.de> | 2015-11-06 02:11:37 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2015-11-06 09:41:08 -0800 |
commit | bac2c5bf1a74fbdb901c6c939e6ec1bb085749f8 (patch) | |
tree | 9d56ce2a197554de0b883aa903f9001539613c52 | |
parent | 282616c72d1d08a77ca4fe1186cb708c38408d87 (diff) | |
download | git-bac2c5bf1a74fbdb901c6c939e6ec1bb085749f8.tar.gz |
configure.ac: use $LIBS not $CFLAGS when testing -lpthreadrc/configure-use-libs-when-checking-a-lib
Some linkers, namely the one on IRIX are rather strict concerning
the order or arguments for symbol resolution, i.e. no libraries
listed before objects or other libraries on the command line are
considered for symbol resolution. Therefore, -lpthread can't work
if it's put in CFLAGS, because it will not be considered for
resolving pthread_key_create in conftest.o. Use $LIBS instead.
Signed-off-by: Rainer Canavan <git@canavan.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | configure.ac | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac index b7112542b4..7b3ade9fc0 100644 --- a/configure.ac +++ b/configure.ac @@ -1013,7 +1013,12 @@ elif test -z "$PTHREAD_CFLAGS"; then # would then trigger compiler warnings on every single file we compile. for opt in "" -mt -pthread -lpthread; do old_CFLAGS="$CFLAGS" - CFLAGS="$opt $CFLAGS" + old_LIBS="$LIBS" + case "$opt" in + -l*) LIBS="$opt $LIBS" ;; + *) CFLAGS="$opt $CFLAGS" ;; + esac + AC_MSG_CHECKING([for POSIX Threads with '$opt']) AC_LINK_IFELSE([PTHREADTEST_SRC], [AC_MSG_RESULT([yes]) @@ -1025,6 +1030,7 @@ elif test -z "$PTHREAD_CFLAGS"; then ], [AC_MSG_RESULT([no])]) CFLAGS="$old_CFLAGS" + LIBS="$old_LIBS" done if test $threads_found != yes; then AC_CHECK_LIB([pthread], [pthread_create], |