GNU bug report logs - #25371
sed-4.3: Build fails when build in a separate directory and --disable-dependency-tracking is used.

Previous Next

Package: sed;

Reported by: Juan Manuel Guerrero <juan.guerrero <at> gmx.de>

Date: Fri, 6 Jan 2017 01:43:02 UTC

Severity: normal

Tags: fixed

Done: Assaf Gordon <assafgordon <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 25371 in the body.
You can then email your comments to 25371 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-sed <at> gnu.org:
bug#25371; Package sed. (Fri, 06 Jan 2017 01:43:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Juan Manuel Guerrero <juan.guerrero <at> gmx.de>:
New bug report received and forwarded. Copy sent to bug-sed <at> gnu.org. (Fri, 06 Jan 2017 01:43:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Juan Manuel Guerrero <juan.guerrero <at> gmx.de>
To: bug-sed <at> gnu.org
Subject: sed-4.3: Build fails when build in a separate directory and
 --disable-dependency-tracking is used.
Date: Fri, 06 Jan 2017 02:34:42 +0100
Although I was trying to build this sed version with DJGPP, the issue can be
reproduced on linux too.
I have tried to build sed in a separate build directory using the option --disable-dependency-tracking.
In this case only the directories gnulib-tests and po are created.  The corresponding
makefiles are created inside these directories.  No error is shown during the
configuration process.  All other directories are missing.  When I start make
I get the following error message:

  GEN      lib/alloca.h
/bin/sh: line 4: lib/alloca.h-t: No such file or directory
make: *** [lib/alloca.h] Fehler 1

If I do not use the --disable-dependency-tracking option then all directories
are created and sed is build flawlessly.  sed is also build flawlessly
if I configure in the top source directory (aka sed-4.3) no matter if the option
--disable-dependency-tracking is used or not.  Is this a bug or a feature?
The linux system is:
Linux 0015CE400E51 3.0.101-105-desktop #1 SMP PREEMPT Thu Oct 20 11:31:37 UTC 2016 (026b465) x86_64 x86_64 x86_64 GNU/Linux

Regards,
Juan M. Guerrero




Information forwarded to bug-sed <at> gnu.org:
bug#25371; Package sed. (Fri, 06 Jan 2017 15:17:02 GMT) Full text and rfc822 format available.

Message #8 received at 25371 <at> debbugs.gnu.org (full text, mbox):

From: Assaf Gordon <assafgordon <at> gmail.com>
To: Juan Manuel Guerrero <juan.guerrero <at> gmx.de>, 25371 <at> debbugs.gnu.org
Subject: Re: bug#25371: sed-4.3: Build fails when build in a separate
 directory and --disable-dependency-tracking is used.
Date: Fri, 6 Jan 2017 10:16:39 -0500
Hello,

On 01/05/2017 08:34 PM, Juan Manuel Guerrero wrote:
> I have tried to build sed in a separate build directory using the option
> --disable-dependency-tracking.
[...]
>   GEN      lib/alloca.h
> /bin/sh: line 4: lib/alloca.h-t: No such file or directory
> make: *** [lib/alloca.h] Fehler 1

Thanks for the report.

I can confirm this is reproducible.

Creating the directories manually is sufficient to work-around this, e.g.:

    tar -xf sed-4.3.tar.xz
    mkdir build ; cd build
    ../sed-4.3/configure --disable-dependency-tracking
    mkdir lib sed
    make

In sed's "doc/local.mk" there is an explicit command to create the 'doc'
directory:

    doc/sed.1: sed/sed$(EXEEXT) .version $(srcdir)/doc/sed.x
            $(AM_V_GEN)$(MKDIR_P) doc
            [...]

So we can easily add similar commands for 'sed' and 'lib' directories
(I'm just looking for the optimal place to add this).


 - assaf








Information forwarded to bug-sed <at> gnu.org:
bug#25371; Package sed. (Sat, 07 Jan 2017 05:25:02 GMT) Full text and rfc822 format available.

Message #11 received at 25371 <at> debbugs.gnu.org (full text, mbox):

From: Assaf Gordon <assafgordon <at> gmail.com>
To: Juan Manuel Guerrero <juan.guerrero <at> gmx.de>,
 25371 <at> debbugs.gnu.org
Subject: Re: bug#25371: sed-4.3: Build fails when build in a separate
 directory and --disable-dependency-tracking is used.
Date: Sat, 7 Jan 2017 00:24:06 -0500
[Message part 1 (text/plain, inline)]
Hi,

> On Jan 6, 2017, at 10:16, Assaf Gordon <assafgordon <at> gmail.com> wrote:
> 
> On 01/05/2017 08:34 PM, Juan Manuel Guerrero wrote:
>> I have tried to build sed in a separate build directory using the option
>> --disable-dependency-tracking.
> 
> Creating the directories manually is sufficient to work-around this, e.g.:
> [...]
>    mkdir lib sed
> [...]
> So we can easily add similar commands for 'sed' and 'lib' directories
> (I'm just looking for the optimal place to add this).

I came up with this (creating the subdirs from 'configure').
This works in and out of tree, and with --disable-dependency-tracking.

Jim,
What do you think?
I couldn't find a simple target in the makefile that would create the subdirectories before anything else, yet not force a rebuild of everything every time.
For comparison, in 'coreutils' there is
   $(AM_V_at)${MKDIR_P} src
repeated several times in src/local.mk.

Comments welcomed,
 - assaf


[0001-build-fix-out-of-tree-builds-without-dep-tracking.patch (application/octet-stream, attachment)]
[Message part 3 (text/plain, inline)]



Information forwarded to bug-sed <at> gnu.org:
bug#25371; Package sed. (Sun, 08 Jan 2017 18:04:02 GMT) Full text and rfc822 format available.

Message #14 received at 25371 <at> debbugs.gnu.org (full text, mbox):

From: Jim Meyering <jim <at> meyering.net>
To: Assaf Gordon <assafgordon <at> gmail.com>
Cc: 25371 <at> debbugs.gnu.org, Juan Manuel Guerrero <juan.guerrero <at> gmx.de>
Subject: Re: bug#25371: sed-4.3: Build fails when build in a separate
 directory and --disable-dependency-tracking is used.
Date: Sun, 8 Jan 2017 19:02:55 +0100
[Message part 1 (text/plain, inline)]
On Sat, Jan 7, 2017 at 6:24 AM, Assaf Gordon <assafgordon <at> gmail.com> wrote:
> Hi,
>
>> On Jan 6, 2017, at 10:16, Assaf Gordon <assafgordon <at> gmail.com> wrote:
>>
>> On 01/05/2017 08:34 PM, Juan Manuel Guerrero wrote:
>>> I have tried to build sed in a separate build directory using the option
>>> --disable-dependency-tracking.
>>
>> Creating the directories manually is sufficient to work-around this, e.g.:
>> [...]
>>    mkdir lib sed
>> [...]
>> So we can easily add similar commands for 'sed' and 'lib' directories
>> (I'm just looking for the optimal place to add this).
>
> I came up with this (creating the subdirs from 'configure').
> This works in and out of tree, and with --disable-dependency-tracking.
>
> Jim,
> What do you think?
> I couldn't find a simple target in the makefile that would create the subdirectories before anything else, yet not force a rebuild of everything every time.
> For comparison, in 'coreutils' there is
>    $(AM_V_at)${MKDIR_P} src
> repeated several times in src/local.mk.

Hi Assaf,

That sounds fine. However, please apply this touch-up patch to add
"[]" quotes around each argument and to adjust the comment. Also, I
prefer to run these commands before the AC_OUTPUT, so that if any of
them fails, we do not create a Makefile.

Thank you for working on this.
[sed-touch-up.diff (text/plain, attachment)]

Information forwarded to bug-sed <at> gnu.org:
bug#25371; Package sed. (Mon, 09 Jan 2017 02:50:02 GMT) Full text and rfc822 format available.

Message #17 received at 25371 <at> debbugs.gnu.org (full text, mbox):

From: Assaf Gordon <assafgordon <at> gmail.com>
To: Jim Meyering <jim <at> meyering.net>
Cc: 25371 <at> debbugs.gnu.org, Juan Manuel Guerrero <juan.guerrero <at> gmx.de>
Subject: Re: bug#25371: sed-4.3: Build fails when build in a separate
 directory and --disable-dependency-tracking is used.
Date: Sun, 8 Jan 2017 21:49:45 -0500
tag 25371 fixed
close 25371
thanks


Thanks for the review.
Pushed here:
  http://git.savannah.gnu.org/cgit/sed.git/commit/?id=ad68a128df9d41784ad7bf774f2aa1c4b8b89eb8

Marking bug as done.

-assaf





Added tag(s) fixed. Request was from Assaf Gordon <assafgordon <at> gmail.com> to control <at> debbugs.gnu.org. (Tue, 24 Jan 2017 23:33:03 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 25371 <at> debbugs.gnu.org and Juan Manuel Guerrero <juan.guerrero <at> gmx.de> Request was from Assaf Gordon <assafgordon <at> gmail.com> to control <at> debbugs.gnu.org. (Tue, 24 Jan 2017 23:33:03 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 22 Feb 2017 12:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 8 years and 170 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.