libtool-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] AIX SONAME emulation, simplified implementation


From: Daniel Ruoso (BLOOMBERG/ 731 LEX)
Subject: Re: [PATCH] AIX SONAME emulation, simplified implementation
Date: Tue, 7 Jul 2015 15:45:48 -0000

Hi...

From: address@hidden At: Jul 7 2015 11:30:17
To: Daniel Ruoso (BLOOMBERG/ 731 LEX)
Cc: address@hidden, address@hidden
Subject: Re: [PATCH] AIX SONAME emulation, simplified implementation
For non-libtool build systems: Have you considered to add (optional) libtool support
instead of implementing sharedlib details? This does not mean to completely libtoolize,
but to use the (separate) libtool script[1] as the compiler/linker - something like:

What we have been doing in cases like this is to generate everything after the fact (and sometimes
re-invoke the linker for case of transitive dependencies inside a single project. This without any
change whatsoever to the actual source code of the project.

In other cases (mysql, for instance), there is already some support for generating the export file
for Windows builds, in which case it's trivial to trick the build system into implementing the
simplified SONAME emulation.

> I'll investigate how hard would it be to use your version of it for libtool projects
> (even if I still do the simplified version for hand-rolled build systems).
I've experienced that there isn't so much difference adding svr4-mode to whatever
build system compared to adding simple-mode, given that you have to non-trivially
touch that build system anyway.

That's the thing, implementing the simple-mode from outside the build system works trivially
on almost every case. When there is transitive dependencies inside a project it requires a bit more
work, but in general I don't have to patch anything.


OTOH, once I've wrapped[2] the ld command to accept the '-soname' flag.
Combined with an mkexpfile[3] command to get the exported symbols right,
the diff for any build system can become quite small[4].
[2] https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-devel/native-cctools/files/aix-2/ld?revision=1.1&view=markup
[3] https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-devel/native-cctools/files/aix-2/mkexpfile?revision=1.1&view=markup
[4] http://sourceforge.net/p/gentooprefixtree/code/ci/23181bf2b106f56e25446acb519563e19fb5747c/tree/sys-libs/readline/files/readline-6.2-aixso.patch

Hah, I think we are doing the same thing in different ways, you're using Gentoo and I'm using Debian
as the base for maintaining a collection of software on top of a foreign environment.

reply via email to

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