[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
AC_CHECK_LIB / AC_SEARCH_LIBS buglet
From: |
Carson Gaspar |
Subject: |
AC_CHECK_LIB / AC_SEARCH_LIBS buglet |
Date: |
Tue, 30 Dec 2008 05:24:54 -0800 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1b3pre) Gecko/20081227 Shredder/3.0b2pre |
Both AC_CHECK_LIB and AC_SEARCH_LIBS put "-lmylib" before
OTHER-LIBRARIES. In practice, this causes configure to try things like:
cc foo.c -lmylib -L/path/to/mypkg/lib ...
On Solaris (and other systems) this is fatal, as it is required to
specify -L before any -l args that live in the path specified by -L.
A simple change fixes this:
--- autoconf-2.63/lib/autoconf/libs.m4.DIST Tue Dec 30 05:08:38 2008
+++ autoconf-2.63/lib/autoconf/libs.m4 Tue Dec 30 05:08:52 2008
@@ -76,7 +76,7 @@
ac_res="none required"
else
ac_res=-l$ac_lib
- LIBS="-l$ac_lib $5 $ac_func_search_save_LIBS"
+ LIBS="$5 -l$ac_lib $ac_func_search_save_LIBS"
fi
AC_LINK_IFELSE([], [AS_VAR_SET([ac_Search], [$ac_res])])
AS_VAR_SET_IF([ac_Search], [break])dnl
@@ -125,7 +125,7 @@
[AS_VAR_PUSHDEF([ac_Lib], [ac_cv_lib_$1''_$2])])dnl
AC_CACHE_CHECK([for $2 in -l$1], [ac_Lib],
[ac_check_lib_save_LIBS=$LIBS
-LIBS="-l$1 $5 $LIBS"
+LIBS="$5 -l$1 $LIBS"
AC_LINK_IFELSE([AC_LANG_CALL([], [$2])],
[AS_VAR_SET([ac_Lib], [yes])],
[AS_VAR_SET([ac_Lib], [no])])
--
Carson
- AC_CHECK_LIB / AC_SEARCH_LIBS buglet,
Carson Gaspar <=