# -*-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;