libtool
[Top][All Lists]
Advanced

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

Re: TODO


From: Noah Misch
Subject: Re: TODO
Date: Wed, 10 Nov 2004 12:43:27 -0800
User-agent: Mutt/1.5.6i

On Wed, Nov 10, 2004 at 08:52:00PM +0100, Ralf Wildenhues wrote:

> * Bob Friesenhahn wrote on Wed, Nov 10, 2004 at 08:31:15PM CET:
> > On Wed, 10 Nov 2004, Noah Misch wrote:

> > >If Automake descends into SUBDIRS to install in the same order it
> > >does to build and uses `make' dependencies to ensure proper ordering
> > >within each SUBDIR, then the products should relink/install in the
> > >correct order.  Right?
> > 
> > That would be my assumption as well.  The current library install 
> > mechanism does not ensure that libraries are installed in the same 
> > order that they are built.
> 
> This statement seems to me to imply that Automake should be able to do
> the job on its own, without any additional information from libtool,
> given the library dependencies are stated correctly in the
> Makefile.am's.

I think so.  Every working build order is a correct installation order.  If the
build succeeds, Automake knows one working build order.  It therefore knows one
workable installation order.

> So, can the user not enforce inter-Makefile dependencies through the use
> of `libfoo_la_DEPENDENCIES = sub/libbar.la' ?

That would not improve installation order correctness at this time.

> > A problem exists in that if a library is already installed on 
> > the system, it may be used by accident, either at build time, or at 
> > install time.  This masks serious build/install ordering issues.
> 
> Yes.

Automake could unmask these issues by unlinking every file it is about to
install before installing them.  Unfortunately, this would keep the user from
meaningfully specifying `install' options to, for example, make backup copies.
As you say, using distcheck is a robust way to flush out these issues.

> > Package developers usually already have the library installed on the 
> > system so they may not see the failure in their environment, but 
> > end-users do.  'make distcheck' helps significantly with discovering 
> > these problems.
> 
> BTW, this topic shouldn't have any extra issues in the cases of staged
> installs (checked by `make distcheck') and cross-compilation, right?

I cannot think of any.




reply via email to

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