On Aug 30, 10 19:52:48 +0200, Matthias Hopf wrote:
> That results in make not building reliable on our opensuse build system;
> I'm currently using the attached patch to increase the sleep times by a
> factor of four. A reasonable solution would probably use a configurable
> factor, so you can run quicker tests on a local workstation.

This probably helps more with the patch attached...

Matthias

-- 
Matthias Hopf <mh...@suse.de>      __        __   __
Maxfeldstr. 5 / 90409 Nuernberg   (_   | |  (_   |__          m...@mshopf.de
Phone +49-911-74053-715           __)  |_|  __)  |__  R & D   www.mshopf.de
Index: tests/scripts/features/double_colon
===================================================================
--- tests/scripts/features/double_colon.orig
+++ tests/scripts/features/double_colon
@@ -23,7 +23,7 @@ all: baz
 foo:: f1.h ; @echo foo FIRST
 foo:: f2.h ; @echo foo SECOND
 
-bar:: ; @echo aaa; sleep 1; echo aaa done
+bar:: ; @echo aaa; sleep 4; echo aaa done
 bar:: ; @echo bbb
 
 baz:: ; @echo aaa
Index: tests/scripts/features/parallelism
===================================================================
--- tests/scripts/features/parallelism.orig
+++ tests/scripts/features/parallelism
@@ -27,9 +27,9 @@ else {
 
 run_make_test("
 all : def_1 def_2 def_3
-def_1 : ; \...@echo ONE; $sleep_command 3 ; echo TWO
-def_2 : ; \...@$sleep_command 2 ; echo THREE
-def_3 : ; \...@$sleep_command 1 ; echo FOUR",
+def_1 : ; \...@echo ONE; $sleep_command 12 ; echo TWO
+def_2 : ; \...@$sleep_command 8 ; echo THREE
+def_3 : ; \...@$sleep_command 4 ; echo FOUR",
               '-j4', "ONE\nFOUR\nTHREE\nTWO");
 
 # Test parallelism with included files.  Here we sleep/echo while
@@ -38,8 +38,8 @@ def_3 : ; \...@$sleep_command 1 ; echo FOUR
 run_make_test("
 all: 1 2; \...@echo success
 -include 1.inc 2.inc
-1.inc: ; \...@echo ONE.inc; $sleep_command 2; echo TWO.inc; echo '1: ; \...@echo ONE; $sleep_command 2; echo TWO' > \$\@
-2.inc: ; \...@$sleep_command 1; echo THREE.inc; echo '2: ; \...@$sleep_command 1; echo THREE' > \$\@",
+1.inc: ; \...@echo ONE.inc; $sleep_command 8; echo TWO.inc; echo '1: ; \...@echo ONE; $sleep_command 8; echo TWO' > \$\@
+2.inc: ; \...@$sleep_command 4; echo THREE.inc; echo '2: ; \...@$sleep_command 4; echo THREE' > \$\@",
               "-j4",
               "ONE.inc\nTHREE.inc\nTWO.inc\nONE\nTHREE\nTWO\nsuccess\n");
 
@@ -57,8 +57,8 @@ ifeq (\$(INC),yes)
 -include 1.inc 2.inc
 endif
 
-1.inc: ; \...@echo ONE.inc; $sleep_command 2; echo TWO.inc; echo '1: ; \...@echo ONE; $sleep_command 2; echo TWO' > \$\@
-2.inc: ; \...@$sleep_command 1; echo THREE.inc; echo '2: ; \...@$sleep_command 1; echo THREE' > \$\@",
+1.inc: ; \...@echo ONE.inc; $sleep_command 8; echo TWO.inc; echo '1: ; \...@echo ONE; $sleep_command 8; echo TWO' > \$\@
+2.inc: ; \...@$sleep_command 4; echo THREE.inc; echo '2: ; \...@$sleep_command 4; echo THREE' > \$\@",
               "-j4",
               "ONE.inc\nTHREE.inc\nTWO.inc\nONE\nTHREE\nTWO\nsuccess\n");
 
@@ -74,37 +74,37 @@ rmfiles(qw(1.inc 2.inc));
 run_make_test("
 export HI = \$(shell \$(\...@.cmd))
 first.CMD = echo hi
-second.CMD = $sleep_command 4; echo hi
+second.CMD = $sleep_command 16; echo hi
 
 .PHONY: all first second
 all: first second
 
-first second: ; \...@echo \$\@; $sleep_command 1; echo \$\@",
-              '-j2', "first\nfirst\nsecond\nsecond", 0, 7);
+first second: ; \...@echo \$\@; $sleep_command 4; echo \$\@",
+              '-j2', "first\nfirst\nsecond\nsecond", 0, 28);
 
 # Michael Matz <m...@suse.de> reported a bug where if make is running in
 # parallel without -k and two jobs die in a row, but not too close to each
 # other, then make will quit without waiting for the rest of the jobs to die.
 
 run_make_test("
-.PHONY: all fail.1 fail.2 fail.3 ok
-all: fail.1 ok fail.2 fail.3
+.PHONY: all fail.3 fail.6 fail.9 ok
+all: fail.3 ok fail.6 fail.9
 
-fail.1 fail.2 fail.3:
+fail.3 fail.6 fail.9:
 	\...@sleep \$(patsubst fail.%,%,\$\@)
 	\...@echo Fail
 	\...@exit 1
 
 ok:
-	\...@sleep 4
+	\...@sleep 12
 	\...@echo Ok done",
               '-rR -j5', 'Fail
-#MAKE#: *** [fail.1] Error 1
+#MAKE#: *** [fail.3] Error 1
 #MAKE#: *** Waiting for unfinished jobs....
 Fail
-#MAKE#: *** [fail.2] Error 1
+#MAKE#: *** [fail.6] Error 1
 Fail
-#MAKE#: *** [fail.3] Error 1
+#MAKE#: *** [fail.9] Error 1
 Ok done',
              512);
 
Index: tests/scripts/options/dash-l
===================================================================
--- tests/scripts/options/dash-l.orig
+++ tests/scripts/options/dash-l
@@ -25,7 +25,7 @@ SHELL = /bin/sh
 
 define test
 if [ ! -f test-file ]; then \
-  echo >> test-file; sleep 2; rm -f test-file; \
+  echo >> test-file; sleep 8; rm -f test-file; \
 else \
   echo $@ FAILED; \
 fi
@@ -46,7 +46,7 @@ $mkoptions = "-l 0.0001";
 $mkoptions .= " -j 4" if ($parallel_jobs);
 
 # We have to wait longer than the default (5s).
-&run_make_with_options($makefile, $mkoptions, &get_logfile, 0, 8);
+&run_make_with_options($makefile, $mkoptions, &get_logfile, 0, 32);
 
 $slurp = &read_file_into_string (&get_logfile(1));
 if ($slurp !~ /cannot enforce load limit/) {
Index: tests/test_driver.pl
===================================================================
--- tests/test_driver.pl.orig
+++ tests/test_driver.pl
@@ -52,7 +52,7 @@ $test_passed = 1;
 
 
 # Timeout in seconds.  If the test takes longer than this we'll fail it.
-$test_timeout = 5;
+$test_timeout = 20;
 
 # Path to Perl
 $perl_name = $^X;
_______________________________________________
Bug-make mailing list
Bug-make@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-make

Reply via email to