GNU bug report logs -
#14501
dependency generation FAIL in t/subobj11a.sh
Previous Next
Reported by: Peter Rosin <peda <at> lysator.liu.se>
Date: Wed, 29 May 2013 07:44:01 UTC
Severity: minor
Tags: patch
Done: Stefano Lattarini <stefano.lattarini <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 14501 in the body.
You can then email your comments to 14501 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-automake <at> gnu.org
:
bug#14501
; Package
automake
.
(Wed, 29 May 2013 07:44:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Peter Rosin <peda <at> lysator.liu.se>
:
New bug report received and forwarded. Copy sent to
bug-automake <at> gnu.org
.
(Wed, 29 May 2013 07:44:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hi!
On Automake master (baf8a1c22acce0908), t/subobj11a.sh fails
on MSYS/MSVC (depmode=msvc7msys), like this:
+ make quux
src/.deps/foo.Po:1: *** target pattern contains no `%'. Stop.
It appears that the generated foo.Po is broken. Adding a
cat "$depdir"/foo.Po
just before the $MAKE quux invocation reveals that the originally
generated foo.Po has this single line content:
src/foo.obj : \
Notice the trailing backslash. When the testcase then adds a
line of its own, the trailing backslash makes it blow up.
Cheers,
Peter
Information forwarded
to
bug-automake <at> gnu.org
:
bug#14501
; Package
automake
.
(Wed, 29 May 2013 07:50:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 14501 <at> debbugs.gnu.org (full text, mbox):
On 2013-05-29 09:41, Peter Rosin wrote:
> Hi!
>
> On Automake master (baf8a1c22acce0908), t/subobj11a.sh fails
> on MSYS/MSVC (depmode=msvc7msys), like this:
>
> + make quux
> src/.deps/foo.Po:1: *** target pattern contains no `%'. Stop.
>
>
> It appears that the generated foo.Po is broken. Adding a
> cat "$depdir"/foo.Po
> just before the $MAKE quux invocation reveals that the originally
> generated foo.Po has this single line content:
>
> src/foo.obj : \
>
> Notice the trailing backslash. When the testcase then adds a
> line of its own, the trailing backslash makes it blow up.
I forgot to mention that adding an empty line before the other
added line, e.g. with
echo >> "$depdir"/foo.Po
works around the problem and makes the test pass.
Cheers,
Peter
Information forwarded
to
bug-automake <at> gnu.org
:
bug#14501
; Package
automake
.
(Wed, 29 May 2013 09:25:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 14501 <at> debbugs.gnu.org (full text, mbox):
On 05/29/2013 09:48 AM, Peter Rosin wrote:
> On 2013-05-29 09:41, Peter Rosin wrote:
>> Hi!
>>
>> On Automake master (baf8a1c22acce0908), t/subobj11a.sh fails
>> on MSYS/MSVC (depmode=msvc7msys), like this:
>>
>> + make quux
>> src/.deps/foo.Po:1: *** target pattern contains no `%'. Stop.
>>
>>
>> It appears that the generated foo.Po is broken. Adding a
>> cat "$depdir"/foo.Po
>> just before the $MAKE quux invocation reveals that the originally
>> generated foo.Po has this single line content:
>>
>> src/foo.obj : \
>>
>> Notice the trailing backslash.
>>
And I assume this, by itself, doesn't cause any problem to make,
correct?
>> When the testcase then adds a
>> line of its own, the trailing backslash makes it blow up.
>
> I forgot to mention that adding an empty line before the other
> added line, e.g. with
>
> echo >> "$depdir"/foo.Po
>
> works around the problem and makes the test pass.
>
I think we should go this way, yes. After all, albeit the trailing
'\' in the .Po file looks strange, it's not causing any problem in
practice, and it's only our hacky editing of said .Po that is
triggering the failure. So let's fix this editing and live happy.
Any patch that does so (and adds brief a comment explaining why we
need the extra 'echo') can be considered pre-approved.
Thanks,
Stefano
Information forwarded
to
bug-automake <at> gnu.org
:
bug#14501
; Package
automake
.
(Thu, 30 May 2013 07:31:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 14501 <at> debbugs.gnu.org (full text, mbox):
On 2013-05-29 11:23, Stefano Lattarini wrote:
> On 05/29/2013 09:48 AM, Peter Rosin wrote:
>> On 2013-05-29 09:41, Peter Rosin wrote:
>>> Hi!
>>>
>>> On Automake master (baf8a1c22acce0908), t/subobj11a.sh fails
>>> on MSYS/MSVC (depmode=msvc7msys), like this:
>>>
>>> + make quux
>>> src/.deps/foo.Po:1: *** target pattern contains no `%'. Stop.
>>>
>>>
>>> It appears that the generated foo.Po is broken. Adding a
>>> cat "$depdir"/foo.Po
>>> just before the $MAKE quux invocation reveals that the originally
>>> generated foo.Po has this single line content:
>>>
>>> src/foo.obj : \
>>>
>>> Notice the trailing backslash.
>>>
> And I assume this, by itself, doesn't cause any problem to make,
> correct?
Not that I have seen, no. But it feels fishy all the same.
>>> When the testcase then adds a
>>> line of its own, the trailing backslash makes it blow up.
>>
>> I forgot to mention that adding an empty line before the other
>> added line, e.g. with
>>
>> echo >> "$depdir"/foo.Po
>>
>> works around the problem and makes the test pass.
>>
> I think we should go this way, yes. After all, albeit the trailing
> '\' in the .Po file looks strange, it's not causing any problem in
> practice, and it's only our hacky editing of said .Po that is
> triggering the failure. So let's fix this editing and live happy.
>
> Any patch that does so (and adds brief a comment explaining why we
> need the extra 'echo') can be considered pre-approved.
So, I think the below is a better fix. Ok for micro?
Cheers,
Peter
From 2131bd330a167d37274ee9b179d3885e090d0839 Mon Sep 17 00:00:00 2001
From: Peter Rosin <peda <at> lysator.liu.se>
Date: Thu, 30 May 2013 09:26:45 +0200
Subject: [PATCH] depcomp: make sure the depfile ends nicely for depmode=msvc7
When compiling a file without any dependencies (no #includes), the
msvc7 depmode (and consequently msvc7msys) generates a depfile
Makefile fragment with the last line ending with a backslash. This
is less robust than needed.
Fixes automake bug#14501.
* lib/depcomp (msvc7): Finish off the depfile Makefile fragment with
an empty line.
(scriptversion): Update.
Signed-off-by: Peter Rosin <peda <at> lysator.liu.se>
---
lib/depcomp | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/lib/depcomp b/lib/depcomp
index 06b0882..4ebd5b3 100755
--- a/lib/depcomp
+++ b/lib/depcomp
@@ -1,7 +1,7 @@
#! /bin/sh
# depcomp - compile a program generating dependencies as side-effects
-scriptversion=2012-10-18.11; # UTC
+scriptversion=2013-05-30.07; # UTC
# Copyright (C) 1999-2013 Free Software Foundation, Inc.
@@ -552,6 +552,7 @@ $ {
G
p
}' >> "$depfile"
+ echo >> "$depfile" # make sure the fragment doesn't end with a backslash
rm -f "$tmpdepfile"
;;
--
1.7.9
Information forwarded
to
bug-automake <at> gnu.org
:
bug#14501
; Package
automake
.
(Thu, 30 May 2013 08:47:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 14501 <at> debbugs.gnu.org (full text, mbox):
On 05/30/2013 09:28 AM, Peter Rosin wrote:
> On 2013-05-29 11:23, Stefano Lattarini wrote:
>> On 05/29/2013 09:48 AM, Peter Rosin wrote:
>>> On 2013-05-29 09:41, Peter Rosin wrote:
>>>> Hi!
>>>>
>>>> On Automake master (baf8a1c22acce0908), t/subobj11a.sh fails
>>>> on MSYS/MSVC (depmode=msvc7msys), like this:
>>>>
>>>> + make quux
>>>> src/.deps/foo.Po:1: *** target pattern contains no `%'. Stop.
>>>>
>>>>
>>>> It appears that the generated foo.Po is broken. Adding a
>>>> cat "$depdir"/foo.Po
>>>> just before the $MAKE quux invocation reveals that the originally
>>>> generated foo.Po has this single line content:
>>>>
>>>> src/foo.obj : \
>>>>
>>>> Notice the trailing backslash.
>>>>
>> And I assume this, by itself, doesn't cause any problem to make,
>> correct?
>
> Not that I have seen, no. But it feels fishy all the same.
>
>>>> When the testcase then adds a
>>>> line of its own, the trailing backslash makes it blow up.
>>>
>>> I forgot to mention that adding an empty line before the other
>>> added line, e.g. with
>>>
>>> echo >> "$depdir"/foo.Po
>>>
>>> works around the problem and makes the test pass.
>>>
>> I think we should go this way, yes. After all, albeit the trailing
>> '\' in the .Po file looks strange, it's not causing any problem in
>> practice, and it's only our hacky editing of said .Po that is
>> triggering the failure. So let's fix this editing and live happy.
>>
>> Any patch that does so (and adds brief a comment explaining why we
>> need the extra 'echo') can be considered pre-approved.
>
> So, I think the below is a better fix. Ok for micro?
>
> Cheers,
> Peter
>
>
>
> From 2131bd330a167d37274ee9b179d3885e090d0839 Mon Sep 17 00:00:00 2001
> From: Peter Rosin <peda <at> lysator.liu.se>
> Date: Thu, 30 May 2013 09:26:45 +0200
> Subject: [PATCH] depcomp: make sure the depfile ends nicely for depmode=msvc7
>
Or even "depcmp: avoid trailing backslash in depfile for depmode=msvc7",
maybe?
> When compiling a file without any dependencies (no #includes), the
> msvc7 depmode (and consequently msvc7msys) generates a depfile
> Makefile fragment with the last line ending with a backslash. This
> is less robust than needed.
>
> Fixes automake bug#14501.
>
> * lib/depcomp (msvc7): Finish off the depfile Makefile fragment with
> an empty line.
> (scriptversion): Update.
>
> Signed-off-by: Peter Rosin <peda <at> lysator.liu.se>
> ---
> lib/depcomp | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/lib/depcomp b/lib/depcomp
> index 06b0882..4ebd5b3 100755
> --- a/lib/depcomp
> +++ b/lib/depcomp
> @@ -1,7 +1,7 @@
> #! /bin/sh
> # depcomp - compile a program generating dependencies as side-effects
>
> -scriptversion=2012-10-18.11; # UTC
> +scriptversion=2013-05-30.07; # UTC
>
> # Copyright (C) 1999-2013 Free Software Foundation, Inc.
>
> @@ -552,6 +552,7 @@ $ {
> G
> p
> }' >> "$depfile"
> + echo >> "$depfile" # make sure the fragment doesn't end with a backslash
> rm -f "$tmpdepfile"
> ;;
>
ACK, with either your original subject line or with the one I suggested
(as you prefer).
Thanks,
Stefano
Information forwarded
to
bug-automake <at> gnu.org
:
bug#14501
; Package
automake
.
(Thu, 30 May 2013 08:55:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 14501 <at> debbugs.gnu.org (full text, mbox):
On 2013-05-30 10:44, Stefano Lattarini wrote:
> Or even "depcmp: avoid trailing backslash in depfile for depmode=msvc7",
> maybe?
Pushed with your subject. Thanks!
Cheers,
Peter
Added tag(s) patch.
Request was from
Stefano Lattarini <stefano.lattarini <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Thu, 30 May 2013 21:08:02 GMT)
Full text and
rfc822 format available.
Severity set to 'minor' from 'normal'
Request was from
Stefano Lattarini <stefano.lattarini <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Thu, 30 May 2013 21:08:02 GMT)
Full text and
rfc822 format available.
bug closed, send any further explanations to
14501 <at> debbugs.gnu.org and Peter Rosin <peda <at> lysator.liu.se>
Request was from
Stefano Lattarini <stefano.lattarini <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Thu, 30 May 2013 21:08: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
.
(Fri, 28 Jun 2013 11:24:03 GMT)
Full text and
rfc822 format available.
This bug report was last modified 12 years and 72 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.