libtool
[Top][All Lists]
Advanced

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

Re: [PATCH] Don't install .la files when --no-la-files is used


From: Ralf Wildenhues
Subject: Re: [PATCH] Don't install .la files when --no-la-files is used
Date: Mon, 3 Nov 2008 23:05:11 +0100
User-agent: Mutt/1.5.18 (2008-05-17)

Hello Dan,

* Dan Nicholson wrote on Mon, Nov 03, 2008 at 03:17:53PM CET:
> On Sun, Nov 2, 2008 at 12:59 PM, Ralf Wildenhues <address@hidden> wrote:
> > * Dan Nicholson wrote on Sat, Nov 01, 2008 at 09:48:28PM CET:
> >> Add an option, --no-la-files, which skips installing the .la files. When
> >> used with --mode=uninstall, libtool tries to use the .lai file from the
> >> build directory.

> >>  Does this seem reasonable? I've checked that this doesn't break
> >>  uninstall or distcheck.
> >
> > It does break third-party packages that would like to link against your
> > library.  So we should not encourage it.
> 
> It doesn't break 3rd party packages when you're installing a system
> library. Would it make any difference if I reworked the patch to:

No, it would not; sorry.

During the last twelve months, I think I have had to tell maybe a dozen
people not to remove installed .la files to fix their problems.  As
nobody is volunteering to do this work for, let's pick a random number,
say the next three years from now on, I see no reason to justify making
the removal of .la files easier for libtool users.

Rather, the right solution is to make libtool work right in the presence
of installed .la files in those cases where it does not do the right
thing at the moment.

> 1) Only apply when the destination directory is a system libdir

> 2) Print a big warning that --no-la-files can break 3rd party packages

I don't think a warning helps.  I see no justifiable use case except to
paper over bugs.

> >> +     if $opt_no_la_files; then
> >> +       file=.libs/"$name"i
> >> +       test -f "$file" || file=`find . -type f -name "$name"i`
> >
> > Not safe when files with whitespace in the name are present.
> 
> Because the `find` command substitution is not quoted?

Oh, the whitespace hint was bogus, sorry.  But if there is no file
.libs/"$name"i, then just blindly picking another file with a similar
name is just not right.

FWIW, I haven't checked the patch for semantic correctness (i.e.,
that it does what you want it to do).

Cheers,
Ralf




reply via email to

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