automake-patches
[Top][All Lists]
Advanced

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

Re: Add missing '$' for variable expansion in depout.m4


From: Gavin Smith
Subject: Re: Add missing '$' for variable expansion in depout.m4
Date: Thu, 11 Apr 2013 20:09:18 +0100

The code here is looking for lines including *.Po dependency files in
output Makefiles. It never caused a problem because if am__include
wasn't set in the output file, then there would be unlikely to be any
lines picked up by the sed expression looking for the include lines.

I found this really by accident. I've been patching automake to see if
I can make it output plain Makefiles. I've arranged for many autoconf
output variables to be in a Makefile include file, so a line like
"am__include = include" was not in the Makefile, but in the include
file. However, I found that it would get past this check anyway.

am__include seems only to be set as a make variable so that
config.status can read it. Otherwise you would expect it to be
declared with _AM_SUBST_NOTMAKE. automake is passing config.status a
note via Makefile.in; there aren't any other ways for them to
communicate (although an unusual way of doing it would be for automake
to generate files which are source'd or m4_include'd from
configure.ac).

On Thu, Apr 11, 2013 at 7:45 PM, Nick Bowler <address@hidden> wrote:
> On 2013-04-11 19:12 +0100, Gavin Smith wrote:
>> (I hope I have prepared this patch properly.)
>>
>>     Add missing '$' for variable expansion in depout.m4
>>
>>     * m4/depout.m4: "am__include" appeared where "$am__include" was meant.
>>
>> diff --git a/m4/depout.m4 b/m4/depout.m4
>> index 880a597..c79d04b 100644
>> --- a/m4/depout.m4
>> +++ b/m4/depout.m4
>> @@ -40,7 +40,7 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
>>      DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
>>      test -z "$DEPDIR" && continue
>>      am__include=`sed -n 's/^am__include = //p' < "$mf"`
>> -    test -z "am__include" && continue
>> +    test -z "$am__include" && continue
>
> Well-spotted!  This definitely looks like a mistake.  How did you
> find this?
>
> The test appears to have been defective ever since it was introduced
> almost 10 years ago.  At this point, it may be better to simply remove
> the dead code entirely unless this is known to fix a real problem.
>
> Cheers,
> --
> Nick Bowler, Elliptic Technologies (http://www.elliptictech.com/)



reply via email to

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