Subject: bug#18930: install-data-local fails with 2.4.3

From: Allan McRae <[email-masked]>
Date: Mon, 03 Nov 2014 22:33:29 +1000

On 03/11/14 21:29, Gary V. Vaughan wrote:
> Hi Allan,
> 
>> On Nov 3, 2014, at 5:19 AM, Allan McRae <[email-masked]> wrote:
>>
>> With the 2.4.3 release, I can no longer run "make
>> DESTDIR=/install/install-data-local".  I get the following error:
>>
>> GREP='/usr/bin/grep' SED='/usr/bin/sed' './build-aux/inline-source'
>> libtoolize > '/install/usr/bin/libtoolize';
>> /bin/sh: /install/usr/bin/libtoolize: No such file or directory
>>
>> It looks like install-data-local requires libtoolize to be installed and
>> should depend on install-binSCRIPTS.  Or even better, do not adjust
>> libtoolize if it has not been installed (useful for installing libltdl
>> files separately).
> 
> Thanks for the report.  I'm afraid I can't reproduce this.  From a
> freshly downloaded and configured libtool-2.4.3.tar.gz, everything works
> just fine here.
> 
> A few hints though:
> 
> - the invocation "build-aux/inline-source libtoolize > $destination" looks
>   how I would expect, that's running the inline-source script over the
>   just built libtoolize file in the build directory.
> 
> - there's no reason to set DESTDIR during regular make, it's only used
>   when you run 'make install' (or sub-rules of install).
> 
> - if you have an install-data-local file in the current directory, then
>   most make programs will consider the install-data-local rule to be
>   already satisfied, and not bother to re-run it.  GNU make has the
>   `.PHONY` pseudo-target to mitigate this issue though, and install-data-
>   local is added to .PHONY in the libtool-2.4.2 Makefile, so GNU make at
>   least ought to behave reasonably here.
> 
> I've changed the way libtoolize is installed since the 2.4.3 release on the
> master branch though, and your message reminds me that I need to manually
> add .PHONY dependencies to the new targets I added.
> 
> If you are comfortable with bootstrapping the autotools generated files
> from a repository clone, and taking account of my hints above, please do
> try again with the current master HEAD revision and let me know if you are
> still having trouble.
> 

Just to note there was a typo in my command:

make DESTDIR=/install/ install-data-local

So it is a "make install" type operation.  It is also replicable on
current master.

I have just looked at the error...
/bin/sh: /install/usr/bin/libtoolize: No such file or directory

I am assuming this is because the /install/usr/bin directory has not
been made yet.

Allan