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 19:23:51 PST 2004


On Thursday 25 March 2004 03:29, Oliver Eikemeier wrote:

----------- [Long monologue following - skip forward to the last paragraph if 
you're easily annoyed by long mails] ----------------------------------------

> 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().

> Just `they might be used' is 
> not really helpful.
> I guess documentation when and why these 
> should be installed would be nice. Otherwise you have lots of ports where
> they would be needed, but aren't there, or ports where they are useless
> but are installed.

That is exactly the problem.

Imagine this: A programmer, sometime in the future, writes an application in 
which he uses lt_dlopen() to load a shared-library installed by your port and 
somebody makes a FreeBSD port of said application and finds that the 
application does not work because the .la file is missing. You cannot predict 
this. You cannot tell if an .la file will be useless forever or if it will be 
needed by something tomorrow.

This actually happened a short while ago btw. KDE 3.2.1 (kdelibs-3.2.1, more 
precisely) can use libidn to translate International Domain Names. It tries 
to lt_dlopen() libidn - and it doesn't work on FreeBSD, because the libidn 
porter made sure the port doesn't install libtool archives, in 'good 
tradition'.

We at kde@ decided that in this case, we would rather NOT stir up yet another 
debate about libtool archives, since we're all really quite fed up being told 
that lt_dlopen() sucks and libltdl should be fixed and that nobody should 
really need libtool archives. So Andy Fawcett made a patch to kdelibs to use 
the native FreeBSD dlopen() - unportable of course, but in this case this is 
bearable since in KDE HEAD libidn will actually be linked into KDE in the 
traditional way and not be (lt_)dlopen()'d anymore.

As you might notice, I'm really tired of the whole subject. If we could just 
drop the 'good tradition' until somebody _really_ changes libltdl to not 
require libtool archives on the FreeBSD platform (note that I'm talking about 
an upstream fix here, in the GNU source), everybody would have at max one 
megabyte or so less diskspace less in the future (taken by libtool archives) 
and that's it. Then, with time, as projects adopt the new version of libltdl, 
the libtool archives would simply fade out of existence again.

-------------------------------[End of monologue]-----------------------------


However, I would already be totally happy if we could just add a paragraph to 
the porter's handbook that says

"If a port maintainer requests that your port SHOULD install libtool archives 
because another port needs them, you shall comply with his request."

To me, this seems like a workable and fair compromise and it would be a nice 
thing to point to if anybody feels like beating the dead horse again. We 
wouldn't even need to change portlint's warnings that way. Sound good?

-- 
   ,_,   | 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/ff43c905/attachment.bin


More information about the freebsd-ports mailing list