Hi,

[EMAIL PROTECTED] wrote on 31.03.2008 17:05:35:

> So the arguments are expanded as you described, the $(and) function 
expands to
> the expansion of the last argument (y), which is != nothing.
> 
> Should be right. Stand alone example:
> 
> [EMAIL PROTECTED]:~$ cat Makefile
> BAZ=$(and $(FOO),$(BAR))
> 
> all:
>         @echo $(BAZ)
> [EMAIL PROTECTED]:~$ make FOO= BAR=
> 
> [EMAIL PROTECTED]:~$ make FOO=y BAR=
> 
> [EMAIL PROTECTED]:~$ make FOO= BAR=y
> 
> [EMAIL PROTECTED]:~$ make FOO=y BAR=y
> y
> 
> Q.E.D.

If i do the same, the result is different... but why ?

[EMAIL PROTECTED]:~> cat Makefile
BAZ=$(and $(FOO),$(BAR))

all:
        @echo $(BAZ)
[EMAIL PROTECTED]:~> make FOO= BAR=

[EMAIL PROTECTED]:~> make FOO=y BAR=

[EMAIL PROTECTED]:~> make FOO= BAR=y

[EMAIL PROTECTED]:~> make FOO=y BAR=y

[EMAIL PROTECTED]:~>

Maybe the 'make' version ?

[EMAIL PROTECTED]:~> make -v
GNU Make 3.80
Copyright (C) 2002  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
[EMAIL PROTECTED]:~>

-Jürgen

--
ptxdist mailing list
ptxdist@pengutronix.de

Reply via email to