On Sunday 2009-05-24 15:24, Thomas Dickey wrote:
> On Sun, 24 May 2009, Bruno Haible wrote:
>
>>> - The `silent-rules' option enables Linux kernel-style silent build output.
>>>   This option requires the widely supported but non-POSIX `make' feature
>>>   of recursive variable expansion,
>>
>> We are talking about constructs like this:
>>
>> ====== Makefile ======
>> all :
>>      echo $(XY_V)
>>
>> XY_V = $(XY_$(V))
>> XY_0 = silent
>> XY_1 = verbose
>> XY_ = unknown
>> ======================
>>
>> I think this is supported by POSIX. POSIX [1] says: "Macros can appear
>> anywhere
>> in the makefile.".
>
> POSIX says that; however different implementations of 'make' treat
> forward-references differently.


Well that's when you would put XY_V last, just to be sure:

XY_ = unknown
XY_0 = silent
XY_1 = verbose
XY_V = $(XY_$(V))

then there is no forward reference.



Reply via email to