bug-make
[Top][All Lists]
Advanced

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

There is a bug in the make manual!!


From: ali hagigat
Subject: There is a bug in the make manual!!
Date: Sat, 4 Sep 2010 11:12:47 +0430

Please check the following section of the make manual:
--------------------------------------------------------------------------------
Secondary Expansion of Explicit Rules
tively. In the third they will have values foo.1, foo.1 bar.1 foo.2
bar.2, and foo.1 bar.1 foo.2 bar.2 respectively.
--------------------------------------------------------------------------------
I used the attached make manual, GNU make Version 3.81, April 2006,
ISBN 1-882114-83-5,
This is Edition 0.70, last updated 1 April 2006, of The GNU Make
Manual, for GNU make version 3.81.


I had a consult with Paul Smith and he verified me:

On Tue, Aug 31, 2010 at 4:36 PM, Paul Smith <address@hidden> wrote:
> On Tue, 2010-08-31 at 11:28 +0430, ali hagigat wrote:
>> Secondary Expansion of Explicit Rules
>> .SECONDEXPANSION:
>> foo: foo.1 bar.1 $$< $$^ $$+   # line #1
>> foo: foo.2 bar.2 $$< $$^ $$+   # line #2
>> foo: foo.3 bar.3 $$< $$^ $$+   # line #3
>> In the first prerequisite list, all three variables ($$<, $$^, and $$+)
>> expand to the empty
>> string. In the second, they will have values foo.1, foo.1 bar.1, and
>> foo.1 bar.1 respec-
>> tively. In the third they will have values foo.1, foo.1 bar.1 foo.2
>> bar.2, and foo.1
>> bar.1 foo.2 bar.2 respectively.
>> ------------------------------------------------------------------------------------------------------------------------
>> In page 21 of the make manual, there is an example of secondary
>> expansion. The written result of the third $$+ seems wrong. It should
>> be:
>> foo.1 bar.1 foo.2 bar.2 foo.1 foo.1 bar.1 foo.1 bar.1
>> Please correct me if I am wrong.
>
> I'm not sure what you're looking at; maybe an older version of the
> manual where this is incorrect?  But the current version of the manual
> says:
> http://www.gnu.org/software/make/manual/html_node/Secondary-Expansion.html#index-explicit-rules_002c-secondary-expansion-of-118
>
>        In the first prerequisite list, all three variables ($$<, $$^,
>        and $$+) expand to the empty string. In the second, they will
>        have values foo.1, foo.1 bar.1, and foo.1 bar.1 respectively. In
>        the third they will have values foo.1, foo.1 bar.1 foo.2 bar.2,
>        and foo.1 bar.1 foo.2 bar.2 foo.1 foo.1 bar.1 foo.1 bar.1
>        respectively.
>
> which I believe is correct.
>
>



reply via email to

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