Subject: bug#12613: Subordinate libltdl builds convenience library when it should build shared library

From: Bob Friesenhahn <[email-masked]>
Date: Wed, 10 Oct 2012 11:14:02 -0500 (CDT)

On Wed, 10 Oct 2012, Gary V. Vaughan wrote:
>
> I assume you are using run-time linking on AIX?  I find almost all free software requires CFLAGS=-brtl.

Yes.  The GraphicsMagick configure script is automatically adding it.

>> If I then configure with --enable-ltdl-install, I see that libltdl 
>> is being built as a shared library but there is a bug in that the 
>> dependent software is being told to link with already installed 
>> /usr/local/lib/libltdl.la rather than the uninstalled libltdl in 
>> the build tree.
>
> That seems like the correct behaviour to me, your package should use 
> the system libltdl if it is new enough unless you specificaly 
> request the bundled version.

No that is the wrong behavior since the application is linked with a 
libltdl different than the one that it is installing.  It should link 
against the libltdl that it is installing.  Anything else is a bug.

I think that supporting installing a bundled libltd is a bug.  It is a 
very dangerous feature.  The dangers become very evident after one 
does 'make uninstall' after doing 'make install' on a system which 
already included the same version of libltdl so previously-existing 
libltdl is now completely deleted.

Linking a libltdl convenience library into a library to be installed 
is also a bug.

> No need to install autoconf or GNU m4 to build a distributed libtool 
> tarball, just ./configure && make all check && sudo make install.

Ok, better than I thought.  But still libtool stuff gets installed 
when the user only intended/needed to install libltdl.

> worrying about fitting into the libtool release schedule.  I think 
> that decoupling would also make it much easier for GraphicsMagick 
> and others to just depend on (new-enough) installed system libltdl, 
> and fix your problems.

At this point in time I am thinking about stripping bundled libltdl 
out of GraphicsMagick and treating libltdl like any other library that 
it optionally depends on.

> I'm very open to discussion on those possibilities on the appropriate lists.

Yes, feature discussions do not belong here.

Bob
-- 
Bob Friesenhahn
[email-masked], http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/