Mailing List Archive

[PATCH] Fix latest "NetBSD fix"
Hi,

the latest NetBSD related commits (configure.ac/Makefile.am) break the
compilation on Linux. Variable assignments mustn't have whitespace,
otherwise have_libdl and as a result HAVE_LIBDL is not defined.

To fix the issue though, I'd simply recommend to remove the hard coded
-ldl from Makefile.am instead of the proposed solution.
The AC_CHECK_LIB macro [2] already appends -ldl to LIBS, depending on
the outcome of the check [2]. The global LIBS variable (similar to
CFLAGS e.g.) is used for linking all binaries.

Linked (see, I learned my lesson :-p) is the patch [1] to address this.

The only downside of AC_CHECK_LIB is, that it assigns -ldl (and -lrt)
to the global LIBS variable. This means that all binaries are linked
with -ldl -lrt, as mentioned above, even if they don't need them (i.e.
ommysql/ompsql plugin, rklogd rfc3195d).

I can prepare a patch to address this issue correctly, if wanted.

Cheers,
Michael

[1] http://debs.michaelbiebl.de/rsyslog/fix_dl_compilation.patch
[2] http://www.gnu.org/software/automake/manual/autoconf/Libraries.html

--
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?
[PATCH] Fix latest "NetBSD fix" [ In reply to ]
Hi Michael,

many thanks for the information. Actually, you were quicker than me ;) I
worked with Bartosz on the issue yesterday, but needed to leave before I
could finalize it.

I would appreciate if you could provide the "big patch" you wrote about.
That will ensure that autotools is used in the best possible way :)

Rainer

On Tue, 2007-12-04 at 03:58 +0100, Michael Biebl wrote:
> Hi,
>
> the latest NetBSD related commits (configure.ac/Makefile.am) break the
> compilation on Linux. Variable assignments mustn't have whitespace,
> otherwise have_libdl and as a result HAVE_LIBDL is not defined.
>
> To fix the issue though, I'd simply recommend to remove the hard coded
> -ldl from Makefile.am instead of the proposed solution.
> The AC_CHECK_LIB macro [2] already appends -ldl to LIBS, depending on
> the outcome of the check [2]. The global LIBS variable (similar to
> CFLAGS e.g.) is used for linking all binaries.
>
> Linked (see, I learned my lesson :-p) is the patch [1] to address this.
>
> The only downside of AC_CHECK_LIB is, that it assigns -ldl (and -lrt)
> to the global LIBS variable. This means that all binaries are linked
> with -ldl -lrt, as mentioned above, even if they don't need them (i.e.
> ommysql/ompsql plugin, rklogd rfc3195d).
>
> I can prepare a patch to address this issue correctly, if wanted.
>
> Cheers,
> Michael
>
> [1] http://debs.michaelbiebl.de/rsyslog/fix_dl_compilation.patch
> [2] http://www.gnu.org/software/automake/manual/autoconf/Libraries.html
>