SHA256
1
0
forked from pool/make
make/make-slowdown-parallelism.diff
Matthias Hopf 0f6ebe3101 - Update to 3.82
- Bug fixes
  - Backwards Incompatibilities:
    - Makefiles with .POSIX target: shells called with -e
    - $? contains prerequisites even if not existent
    - Prerequisite with '=' cannot be backslash escaped any more
      (use variable with '=' instead)
    - Variable names may not contain whitespaces any more
    - Mixture of explicit and pattern targets didn't always fail
    - Pattern specific rules application order changed
    - Library search behavior now compatible with standard linker
  - New features
    - --eval=STRING: Evaluate makefile syntax string before makefile
    - Variable .RECIPEPREFIX: Exchange TAB character
    - Variable .SHELLFLAGS:   Options passed to shells
    - Target   .ONESHELL:     Single instance of shell for recipe
    - Modifier  private:      Suppresses inheritance of variables
    - Directive undefine:     Undefine variable
  - Changed features
    - Multiple modifiers for variables allowed now.
    - Directive define:       Allow variable assignment operator.
- Nuke memory-hog-2.diff which didn't apply since 3.81
- Addapt make-slowdown-parallelism.diff to new parallelization tests
- Separate make checks into %checks section

OBS-URL: https://build.opensuse.org/package/show/Base:System/make?expand=0&rev=10
2010-08-25 16:25:13 +00:00

136 lines
4.6 KiB
Diff

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 <matz@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;