[syslog-ng] linking changes

Balazs Scheidler bazsi at balabit.hu
Wed Feb 23 13:05:58 CET 2011


Hi,

I've tried to put a closure on how syslog-ng 3.2 and above is being
linked. There were numerous problems as it started to get into Linux
distributions.

This patch documents the intent with --enable-mixed-linking and how that
behaves wrt the executables & shared libraries that syslog-ng installs.

commit f2c7f3ea16d81e82b79582d3f2fe3882add4eb23
Author: Balazs Scheidler <bazsi at balabit.hu>
Date:   Wed Feb 23 13:01:02 2011 +0100

    configure.in: reorganize LIBS variables so that unit tests/programs can be linked in mixed mode too
    
    Previously if --enable-mixed-linking was specified, unit tests and other
    tools (like pdbtool) couldn't be linked properly.
    
    The situation with --enable-mixed-linking is:
      * the primary aim here is to have a syslog-ng executable that can be
        started early in the boot process, and not a set of syslog-ng
        executables that can be distributed to different hosts that lack
        the required dependencies.
      * syslog-ng contains all static libs required by libsyslog-ng.so
      * therefore libsyslog-ng.so cannot be used outside the syslog-ng
        binary (except if the executable is linked against the required libs)
      * tools like pdbtool will be linked dynamically
      * unit tests will be linked dynamically too
    
    This patch cleans up and documents the purpose of various _DEPS_LIBS
    variables and updates Makefile.am files to use the updated names.
    
    A static GLib detection bug was also fixed.
    
    Reported-By: Arkadiusz Miśkiewicz <arekm at maven.pl>
    Signed-off-by: Balazs Scheidler <bazsi at balabit.hu>


A related change is that the shared library libsyslog-ng-patterndb.so
that was introduced in 3.2.2 will be dropped.

Also, the main syslog-ng executable is not linked against
libssl/libcrypto on purpose, it is only used by the afsocket module
(which implements the tcp/syslog destinations).

Could anyone who is in charge of maintaining syslog-ng binaries in
various distributions give this a test so 3.2.3 will compile everywhere
out-of-the-box?

Thanks in advance,

-- 
Bazsi




More information about the syslog-ng mailing list