cvs commit: ports/devel/libvanessa_adt Makefile pkg-plist
ports/devel/libvanessa_adt/files patch-ltmain.sh
Michael Nottebrock
michaelnottebrock at gmx.net
Wed Mar 24 21:28:05 PST 2004
On Thursday 25 March 2004 05:37, Oliver Eikemeier wrote:
> Michael Nottebrock wrote:
>
> [...]
>
> >>So far I followed the former discussions, but I can't remember an example
> >>where something *really* uses the .la files.
> >
> > Yes, although I keep repeating it, nobody seems to ever remember: KDE
> > _really_ uses them, as it _really_ uses lt_dlopen(). Also third party KDE
> > applications will use them (if they happen to load modules or plugins - a
> > simple preferences dialog can be such a module for example), since they
> > use kdelibs which in turn use lt_dlopen().
>
> Ehm, yes, but this is a case for modules or plugins, which should be easily
> coordinated (since they won't be loaded otherwise).
Yet the .la files are needed - if they weren't, we could just nuke them in the
KDE ports. Also, the libidn-kdelibs example shows a scenario where
lt_dlopen() is used on a file installed by a different package.
> I think this is self-evident, but if you want to state it explicit that's
> fine with me. Maybe not in RFC-style, though ;) A comment in the Makefile
> or packing list, stating which ports are clients of the .la files may be a
> nice addition.
I think something like
LIBTOOLFLAGS= # none, we want to keep libwv2.la
(taken from textproc/wv2) is probably sufficient enough to keep any
anti-libtool-archive crusaders away (that libtool archive is kept for koffice
btw).
The really funny thing is - I've just looked at the porter's handbook again
and there simply isn't any good place to add this paragraph to, because there
is no section dealing with libtool archives or ".la files" and the why/why
not/whatisitgoodforanyway at all.
From digging in the commitlogs I can reconstruct that the default
"--disable-ltlibs" argument to ltconfig was added to bsd.port.mk in revision
1.319 (that was back in 1999) and the portlint warnings were added a few
months later (revision 1.30 of devel/portlint/Makefile has the commit
message).
In none of these commits/commitmessages there is any indication that anybody
was ever convinced of the fact that libtool archives were useless or unneeded
- they would just not be created by default for any port that defines
USE_LIBTOOL (at that time this probably worked - it doesn't really anymore
today, extra patches and hacks are often needed - in case of textproc/wv2 a
patch to the configure script), but that behaviour could and can easily be
overridden by redefining LIBTOOLFLAGS (see above).
Also, from what I can gather from the commit logs, USE_LIBTOOL was _not_ added
to bsd.port.mk to get rid of libtool archives - that 'feature' was added
later.
This, plus the fact that nobody ever created any documentation about libtool
archives and their (non)-uses leads me to believe that ".la files are not
needed on FreeBSD" really is just a legend, born out of erroneous statements
on mailing lists and the fact that ports using lt_dlopen() on
shared-libraries not installed by themselves are indeed quite rare and thus
disproof of such claims was not readily available for everybody to observe.
It's quite fascinating how the "convention" of avoiding libtool archives
established itself out of (almost) thin air, and how nobody ever asked "Where
is this documented?". Until now, that is.
Anyway, Mark: I will try to write up something about libtool archives,
libltdl, USE_LIBTOOL, lt_dlopen(), life, the universe and everything and then
condense it again so it will fit in the porter's handbook somewhere, but it
might take some time - I suck at writing concise documentation. :)
--
,_, | Michael Nottebrock | lofi at freebsd.org
(/^ ^\) | FreeBSD - The Power to Serve | http://www.freebsd.org
\u/ | K Desktop Environment on FreeBSD | http://freebsd.kde.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: signature
Url : http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20040325/f45c0c9b/attachment.bin
More information about the freebsd-ports
mailing list