bug-autoconf
[Top][All Lists]
Advanced

[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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]