aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>2018-08-07 13:20:40 +0200
committerRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>2018-08-07 13:20:40 +0200
commit96d68bd48c77fa44e517c3380ee8f224cbce00e5 (patch)
tree76dcee68d9135d0477f405c6890f5c6b24f38e85
parentdf136d64fa2fd23052d7a5fcb7059c29d8e6385d (diff)
downloadgdb-96d68bd48c77fa44e517c3380ee8f224cbce00e5.zip
gdb-96d68bd48c77fa44e517c3380ee8f224cbce00e5.tar.gz
gdb-96d68bd48c77fa44e517c3380ee8f224cbce00e5.tar.bz2
Support parallel make check with GNU make 4.2+
I noticed that make -jN check would run make check-single when using GNU make 4.2.1. In the end, it turned out that this is due to this change from the make 4.2 NEWS file: * The amount of parallelism can be determined by querying MAKEFLAGS, even when the job server is enabled (previously MAKEFLAGS would always contain only "-j", with no number, when job server was enabled). The fix is trivial: just accept an optional arg to -j in Makefile.in (saw_dash_j). Tested on i386-pc-solaris2.11 with just make and make -j/-jN with both make 3.82 and 4.2.1. * Makefile.in (saw_dash_j): Allow for GNU make 4.2+ passing -jN in MAKEFLAGS.
-rw-r--r--gdb/testsuite/ChangeLog5
-rw-r--r--gdb/testsuite/Makefile.in9
2 files changed, 10 insertions, 4 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 3ec7580..f86e8fb 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2018-08-07 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * Makefile.in (saw_dash_j): Allow for GNU make 4.2+ passing -jN in
+ MAKEFLAGS.
+
2018-08-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* dg-extract-results.sh: Move to toplevel contrib.
diff --git a/gdb/testsuite/Makefile.in b/gdb/testsuite/Makefile.in
index c8e3749..f669a3c 100644
--- a/gdb/testsuite/Makefile.in
+++ b/gdb/testsuite/Makefile.in
@@ -137,10 +137,11 @@ $(abs_builddir)/site.exp site.exp: ./config.status Makefile
installcheck:
-# See whether -j was given to make. Either it was given with no
-# arguments, and appears as "j" in the first word, or it was given an
-# argument and appears as "-j" in a separate word.
-saw_dash_j = $(or $(findstring j,$(firstword $(MAKEFLAGS))),$(filter -j,$(MAKEFLAGS)))
+# See whether -j was given to make. Before GNU make 4.2, either it was
+# given with no arguments, and appears as "j" in the first word, or it was
+# given an argument and appears as "-j" in a separate word. Starting with
+# GNU make 4.2, it always appears as "-j"/"-jN" in a separate word.
+saw_dash_j = $(or $(findstring j,$(firstword $(MAKEFLAGS))),$(filter -j%,$(MAKEFLAGS)))
# Try to run the tests in parallel if any -j option is given. If RUNTESTFLAGS
# is not empty, then by default the tests will be serialized. This can be