summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2013-09-15 15:21:33 -0400
committerPaul Smith <psmith@gnu.org>2013-09-15 15:21:33 -0400
commitcd92db36736b7ce7ed71e4dfad7de3e957c24ef2 (patch)
tree13315e9de3f19f3a144774a008bd3100633a31c3 /tests
parent2f279c370a8736ee71e87d721ea914cd7ec2bf9a (diff)
downloadmake-cd92db36736b7ce7ed71e4dfad7de3e957c24ef2.tar.gz
[SV 39934] Verify jobserver FDs before something else uses them.
Diffstat (limited to 'tests')
-rw-r--r--tests/ChangeLog3
-rw-r--r--tests/scripts/features/parallelism20
2 files changed, 23 insertions, 0 deletions
diff --git a/tests/ChangeLog b/tests/ChangeLog
index c629a0ed..d97e7e21 100644
--- a/tests/ChangeLog
+++ b/tests/ChangeLog
@@ -1,5 +1,8 @@
2013-09-15 Paul Smith <psmith@gnu.org>
+ * scripts/features/parallelism: Test broken jobserver on recursion.
+ Test for Savannah bug #39934.
+
* scripts/options/eval: Verify --eval during restart.
Test for Savannah bug #39203.
diff --git a/tests/scripts/features/parallelism b/tests/scripts/features/parallelism
index a8955174..6e8376d1 100644
--- a/tests/scripts/features/parallelism
+++ b/tests/scripts/features/parallelism
@@ -254,6 +254,26 @@ true
');
}
+# Test recursion when make doesn't think it exists.
+# See Savannah bug #39934
+# Or Red Hat bug https://bugzilla.redhat.com/show_bug.cgi?id=885474
+
+open(MAKEFILE,"> Makefile2");
+print MAKEFILE <<EOF;
+vpath %.c $ENV{HOME}/
+foo:
+EOF
+close(MAKEFILE);
+
+run_make_test(q!
+default: ; @ #MAKEPATH# -f Makefile2
+!,
+ '-j2 --no-print-directory',
+"#MAKE#[1]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule.
+#MAKE#[1]: Nothing to be done for 'foo'.");
+
+unlink('Makefile2');
+
# Make sure that all jobserver FDs are closed if we need to re-exec the
# master copy.
#