diff --git a/tests/scripts/features/output-sync b/tests/scripts/features/output-sync index 13a54ca0..40546994 100644 --- a/tests/scripts/features/output-sync +++ b/tests/scripts/features/output-sync @@ -360,7 +360,7 @@ use POSIX (); # file. run_make_test(q! pid:=$(shell echo $$PPID) -all:; @kill -TERM $(pid) && sleep 16 +all:; @#HELPER# term $(pid) sleep 10 !, '-O -j2', '/#MAKE#: \*\*\* \[#MAKEFILE#:3: all] Terminated/', POSIX::SIGTERM); } diff --git a/tests/scripts/features/temp_stdin b/tests/scripts/features/temp_stdin index b06df53e..c01d627c 100644 --- a/tests/scripts/features/temp_stdin +++ b/tests/scripts/features/temp_stdin @@ -71,7 +71,7 @@ run_make_test(q! include bye.mk pid:=$(shell echo $$PPID) all:; -bye.mk: force; @kill -TERM $(pid) && sleep 16 +bye.mk: force; @#HELPER# term $(pid) sleep 10 force: !, '-f-', '/#MAKE#: \*\*\* \[#MAKEFILE#:5: bye.mk] Terminated/', POSIX::SIGTERM); } diff --git a/tests/thelp.pl b/tests/thelp.pl index 993339cb..c243bcb8 100755 --- a/tests/thelp.pl +++ b/tests/thelp.pl @@ -16,6 +16,7 @@ # wait : wait for a file named to exist # tmout : Change the timeout for waiting. Default is 4 seconds. # sleep : Sleep for seconds then echo +# term : send SIGTERM to PID # fail : echo to stdout then exit with error code err # # If given -q only the "out" command generates output. @@ -95,6 +96,12 @@ sub op { return 1; } + if ($op eq 'term') { + print "term $nm\n"; + kill('TERM', $nm); + return 1; + } + if ($op eq 'fail') { print "fail $nm\n"; exit($nm);