mirror of
https://git.savannah.gnu.org/git/make.git
synced 2025-01-06 05:04:42 +00:00
63 lines
1.3 KiB
Text
63 lines
1.3 KiB
Text
|
# -*-perl-*-
|
||
|
|
||
|
$description = "Test the MAKE_RESTARTS variable.";
|
||
|
|
||
|
# Test basic capability
|
||
|
|
||
|
run_make_test('
|
||
|
all: ; @:
|
||
|
$(info MAKE_RESTARTS=$(MAKE_RESTARTS))
|
||
|
include foo.x
|
||
|
foo.x: ; @touch $@
|
||
|
',
|
||
|
'', 'MAKE_RESTARTS=
|
||
|
#MAKEFILE#:4: foo.x: No such file or directory
|
||
|
MAKE_RESTARTS=1');
|
||
|
|
||
|
rmfiles('foo.x');
|
||
|
|
||
|
# Test multiple restarts
|
||
|
|
||
|
run_make_test('
|
||
|
all: ; @:
|
||
|
$(info MAKE_RESTARTS=$(MAKE_RESTARTS))
|
||
|
include foo.x
|
||
|
foo.x: ; @echo "include bar.x" > $@
|
||
|
bar.x: ; @touch $@
|
||
|
',
|
||
|
'', 'MAKE_RESTARTS=
|
||
|
#MAKEFILE#:4: foo.x: No such file or directory
|
||
|
MAKE_RESTARTS=1
|
||
|
foo.x:1: bar.x: No such file or directory
|
||
|
MAKE_RESTARTS=2');
|
||
|
|
||
|
rmfiles('foo.x', 'bar.x');
|
||
|
|
||
|
# Test multiple restarts and make sure the variable is cleaned up
|
||
|
|
||
|
run_make_test('
|
||
|
recurse:
|
||
|
@echo recurse MAKE_RESTARTS=$$MAKE_RESTARTS
|
||
|
@$(MAKE) -f #MAKEFILE# all
|
||
|
all:
|
||
|
@echo all MAKE_RESTARTS=$$MAKE_RESTARTS
|
||
|
$(info MAKE_RESTARTS=$(MAKE_RESTARTS))
|
||
|
include foo.x
|
||
|
foo.x: ; @echo "include bar.x" > $@
|
||
|
bar.x: ; @touch $@
|
||
|
',
|
||
|
'', "MAKE_RESTARTS=
|
||
|
#MAKEFILE#:8: foo.x: No such file or directory
|
||
|
MAKE_RESTARTS=1
|
||
|
foo.x:1: bar.x: No such file or directory
|
||
|
MAKE_RESTARTS=2
|
||
|
recurse MAKE_RESTARTS=
|
||
|
MAKE_RESTARTS=
|
||
|
#MAKE#[1]: Entering directory `#PWD#'
|
||
|
all MAKE_RESTARTS=
|
||
|
#MAKE#[1]: Leaving directory `#PWD#'");
|
||
|
|
||
|
rmfiles('foo.x', 'bar.x');
|
||
|
|
||
|
1;
|