This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Plugin support for FreeBSD and OS X


"Nicholas \"Indy\" Ray" <arelius@gmail.com> writes:

> So are you suggesting that the entire block:
>
>   LIBS="$LIBS -ldl"
>   AC_MSG_CHECKING([for -ldl])
>   AC_TRY_LINK(
>     [#include <dlfcn.h>],
>     [volatile int f = 0; if (f) dlopen ("dummy", 0);],
>     [AC_MSG_RESULT([yes]); have_dl=yes],
>     [AC_MSG_RESULT([no])])
>   if test x"$have_dl" = x"yes"; then
>     pluginlibs="$pluginlibs -ldl"
>   fi
>
> should be replaced with something based on AC_CHECK_LIB? I'll give that a test!

I hadn't looked at that code.  That all looks fine to me, although
AC_CHECK_LIB would be simpler.

Are you saying that that does not work on FreeBSD?  How does it fail?

Wait, I think I see the problem: the code sets LIBS to include -ldl,
but fails to reset it if the test fails.  Probably all it needs is two
new lines:

   if test x"$have_dl" = x"yes"; then
     pluginlibs="$pluginlibs -ldl"
+  else
+    LIBS="$saved_LIBS"
   fi

Ian


> On Mon, Oct 5, 2009 at 3:38 PM, Ian Lance Taylor <iant@google.com> wrote:
>> "Nicholas \"Indy\" Ray" <arelius@gmail.com> writes:
>>
>>> The problem is that on FreeBSD -ldl is not available or required, the
>>> functionality is provided by libc
>>
>> I think understand that. ÂWhat I am saying is that the configure
>> script should test for that property--the fact that -ldl is not
>> available or required--rather than test the type of host for which gcc
>> is being configured.
>>
>> Ian
>>
>>
>>> Nicholas "Indy" Ray
>>>
>>> On Mon, Oct 5, 2009 at 3:05 PM, Ian Lance Taylor <iant@google.com> wrote:
>>>> "Nicholas \"Indy\" Ray" <arelius@gmail.com> writes:
>>>>
>>>>> Indeed, I've sent in a small patch for a warning I got on FreeBSD,
>>>>> however I'm not sure how to get autoconf to check the host system,
>>>>> I'll examine other locations in the code and see if I can't cobble a
>>>>> patch together.
>>>>
>>>> When possible, a configure script should test for features, not
>>>> operating systems. ÂSo, for example, the goal would be not to check
>>>> for FreeBSD, but rather to check for the availability of -ldl, which
>>>> is typically done using AC_CHECK_LIB.
>>>>
>>>> Ian
>>>>
>>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]