- Enhance .POSIX to set -e when invoking shells, as demanded by a
[make.git] / tests / scripts / variables / MAKE_RESTARTS
blob53ab738639633923a3fa66f57ff032c88e98a563
1 #                                                                    -*-perl-*-
3 $description = "Test the MAKE_RESTARTS variable.";
5 # Test basic capability
7 run_make_test('
8 all: ; @:
9 $(info MAKE_RESTARTS=$(MAKE_RESTARTS))
10 include foo.x
11 foo.x: ; @touch $@
13               '', 'MAKE_RESTARTS=
14 #MAKEFILE#:4: foo.x: No such file or directory
15 MAKE_RESTARTS=1');
17 rmfiles('foo.x');
19 # Test multiple restarts
21 run_make_test('
22 all: ; @:
23 $(info MAKE_RESTARTS=$(MAKE_RESTARTS))
24 include foo.x
25 foo.x: ; @echo "include bar.x" > $@
26 bar.x: ; @touch $@
28               '', 'MAKE_RESTARTS=
29 #MAKEFILE#:4: foo.x: No such file or directory
30 MAKE_RESTARTS=1
31 foo.x:1: bar.x: No such file or directory
32 MAKE_RESTARTS=2');
34 rmfiles('foo.x', 'bar.x');
36 # Test multiple restarts and make sure the variable is cleaned up
38 run_make_test('
39 recurse:
40         @echo recurse MAKE_RESTARTS=$$MAKE_RESTARTS
41         @$(MAKE) -f #MAKEFILE# all
42 all:
43         @echo all MAKE_RESTARTS=$$MAKE_RESTARTS
44 $(info MAKE_RESTARTS=$(MAKE_RESTARTS))
45 include foo.x
46 foo.x: ; @echo "include bar.x" > $@
47 bar.x: ; @touch $@
49               '', "MAKE_RESTARTS=
50 #MAKEFILE#:8: foo.x: No such file or directory
51 MAKE_RESTARTS=1
52 foo.x:1: bar.x: No such file or directory
53 MAKE_RESTARTS=2
54 recurse MAKE_RESTARTS=
55 MAKE_RESTARTS=
56 #MAKE#[1]: Entering directory `#PWD#'
57 all MAKE_RESTARTS=
58 #MAKE#[1]: Leaving directory `#PWD#'");
60 rmfiles('foo.x', 'bar.x');