Imported Upstream version 4.0
[platform/upstream/make.git] / tests / scripts / options / eval
1 #                                                                    -*-perl-*-
2
3 $description = "Test the --eval option.";
4
5 $details = "Verify that --eval options take effect,
6 and are passed to sub-makes.";
7
8 # Verify that --eval is evaluated first
9 run_make_test(q!
10 BAR = bar
11 all: ; @echo all
12 recurse: ; @$(MAKE) -f #MAKEFILE# && echo recurse!,
13               '--eval=\$\(info\ eval\) FOO=\$\(BAR\)', "eval\nall");
14
15 # Make sure that --eval is handled correctly during recursion
16 run_make_test(undef, '--no-print-directory --eval=\$\(info\ eval\) recurse',
17               "eval\neval\nall\nrecurse");
18
19 # Make sure that --eval is handled correctly during restarting
20 run_make_test(q!
21 all: ; @echo $@
22 -include gen.mk
23 gen.mk: ; @echo > $@
24 !,
25               '--eval=\$\(info\ eval\)', "eval\neval\nall");
26
27 unlink('gen.mk');
28
29 1;