On Wed, 2011-05-18 at 15:02 +0200, Mario Schwalbe wrote: > $ LC_ALL=C make -f Makefile.private-bug > prereq: > make: *** No rule to make target `private', needed by `target'. Stop. > > $ LC_ALL=C make -v > GNU Make 3.81
The "private" feature was added in GNU make 3.82. It's not available in GNU make 3.81. If you use "make -p" you'll see that your makefile is not being interpreted at all as you expect. This line: > private GLOBAL = global is creating a variable named "private GLOBAL", which is why your echo of $(GLOBAL) shows nothing; you never set the variable $(GLOBAL). Similarly, this line: > target: private LOCAL = local is not declaring a target-specific variable at all: it declares a target "target" with four prerequisites: "private", "LOCAL", "=", and "local". -- ------------------------------------------------------------------------------- Paul D. Smith <psm...@gnu.org> Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.net "Please remain calm...I may be mad, but I am a professional." --Mad Scientist _______________________________________________ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make