On Wed, 2017-08-02 at 20:40 +0100, Sven C. Dack wrote: > It's my understanding that we don't actually know what Benjamin wants to > do, because nobody has asked. So I don't see how this would make me wrong. > > From his mail am I assuming he wants his Makefile to print "BAR" for a > target "test-stem" as well as "subdir/test-stem", which is what he will > get when he uses $(eval ...).
Because he is using a pattern-specific variable assignment instead of just assigning the variable globally we can infer that he would like to have the "FOO = BAR" assignment only in the context of targets that match that pattern but not other targets. So for this makefile: test-%: FOO = BAR test-%: echo $(FOO) other: echo $(FOO) He would like to see: $ make test-foo echo BAR BAR $ make other echo If we change the pattern-specific variable to use $(eval FOO = BAR) he would see: $ make test-foo echo BAR BAR $ make other echo BAR BAR _______________________________________________ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make