# -*-perl-*- $description = "Test the --eval option."; $details = "Verify that --eval options take effect, and are passed to sub-makes."; # Verify that --eval is evaluated first run_make_test(q! $(info infile) BAR = bar all: ; @echo all recurse: ; @$(MAKE) -f #MAKEFILE# && echo recurse!, ['--eval=$(info eval)', 'FOO=$(BAR)'], "eval\ninfile\nall"); # Make sure that --eval is handled correctly during recursion run_make_test(undef, ['--no-print-directory', '--eval=$(info eval)', 'recurse'], "eval\ninfile\neval\ninfile\nall\nrecurse"); # Make sure that --eval is not passed in MAKEFLAGS run_make_test(q! all: ; @echo "MAKEFLAGS=$$MAKEFLAGS" !, ['--eval=$(info eval)'], "eval\n".'MAKEFLAGS= --eval=$$(info\ eval)'); # Make sure that --eval is handled correctly during restarting run_make_test(q! all: ; @echo $@ -include gen.mk gen.mk: ; @echo > $@ !, ['--eval=$(info eval)'], "eval\neval\nall"); unlink('gen.mk'); # Check -E run_make_test(q! BAR = bar all: ; @echo all recurse: ; @$(MAKE) -f #MAKEFILE# && echo recurse!, ['-E', '$(info eval)', 'FOO=$(BAR)'], "eval\nall"); 1;