* Jan Engelhardt wrote on Wed, May 27, 2009 at 09:12:44PM CEST:
> On Sunday 2009-05-24 15:24, Thomas Dickey wrote:
> >> 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.

I wouldn't know a construct where the order of variable assignments is
treated differently by different make implementations.  Can you give an
example, Thomas?  Thanks.

The portability issue I was speaking about was purely about variable
references $(V) within "$(" and ")".

Cheers,
Ralf


Reply via email to