In GNU make 3.80, only the first pattern-specific variable definition that matches a given target is used.
In future releases all pattern-specific variable definitions that match are used, in the order in which they were defined. This change has already been made in the source. With the latest version of GNU make from CVS your example gives:
$ ./make hello a a+b c
Thanks. I got the latest CVS and verified this. But now I have a new oddness:
x=hello
david.a.b: x=david
%.b: x+=a
%.a.b: x+=a+b
david.a.b: x+=c
david.a.b: @echo $(x)
3.80 gives "hello a david c" cvs gives "hello a a+b david c"
Neither of those seem correct. What are the rules for mixing pattern specific variables and target specific variables?
-David
_______________________________________________ Bug-make mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-make