[syslog-ng] linking changes
Corinna Vinschen
vinschen at redhat.com
Wed Mar 2 12:52:58 CET 2011
On Mar 2 10:47, Balazs Scheidler wrote:
> On Wed, 2011-03-02 at 09:57 +0100, Corinna Vinschen wrote:
> > On Mar 1 19:23, Balazs Scheidler wrote:
> > > So the general idea is:
> > > * everything gets linked into the main syslog-ng binary and
> > > libsyslog-ng.so/libivykis.so is not used.
> > > * even some of the selected modules can be linked in, which is a
> > > performance win
> > >
> > > The issue with that is that the final link probably can't be performed
> > > by libtool, I've just manually edited the command line that it emitted.
> > >
> > > I guess this can be a good solution for cygwin too, and will probably
> > > not be available for all platforms.
> >
> > Thanks for the info. I'm curious how this will work.
>
> well, something along the lines of
>
> --enable-static --disable-shared
>
> and some libtool magic to get all .a files linked into the syslog-ng
> binary with -Wl,--whole-archive
>
> This doesn't need PIC compilation (as the .a files will be linked into
> the main executable) and can be done even for embedded libraries.
>
> plugin loading would work on platforms where the .so files can use
> symbols from the executable:
> * this is the case on Linux
> * this is definitely not the case on AIX
> * on cygwin, if my guess is right, this will not work, so there all
> syslog-ng plugins must be linked in statically too.
>
> The alternative is to introduce ivykis as a separate package on cygwin.
> Would that be a doable alternative?
We only allow packages in the distro for which we have a an active
maintainer. If you're willing to package and maintain ivykis for
Cygwin, or if you have somebody who's willing to do so, then that
would be a doable solution, yes.
I gave ivykis a quick whirl, but it doesn't build on Cygwin because
Cygwin has no support for pthread_spinlocks so far.
Corinna
--
Corinna Vinschen
Cygwin Project Co-Leader
Red Hat
More information about the syslog-ng
mailing list