This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[patch] Enable parallel make check also from gdb/
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: gdb-patches at sourceware dot org
- Cc: Tom Tromey <tromey at redhat dot com>
- Date: Tue, 30 Jun 2009 19:37:18 +0200
- Subject: [patch] Enable parallel make check also from gdb/
Hi,
fix for:
RFC: parallelize "make check", Tom Tromey
http://sourceware.org/ml/gdb-patches/2009-06/threads.html#00660
which works from gdb/testsuite/ but not from gdb/ for running:
make check//unix/-m32
etc.
TARGET_FLAGS_TO_PASS the patch modifies only for `make check',
not for `make check//unix...'.
Thanks,
Jan
gdb/
2009-06-30 Jan Kratochvil <jan.kratochvil@redhat.com>
* Makefile.in (TARGET_FLAGS_TO_PASS): Include also FORCE_PARALLEL.
(check//%): Construct FORCE_PARALLEL for the sub-make. Extend the
comment for it.
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -620,7 +620,8 @@ TARGET_FLAGS_TO_PASS = \
"MAKEINFO=$(MAKEINFO)" \
"MAKEHTML=$(MAKEHTML)" \
"RUNTEST=$(RUNTEST)" \
- "RUNTESTFLAGS=$(RUNTESTFLAGS)"
+ "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
+ "FORCE_PARALLEL=$(FORCE_PARALLEL)"
# All source files that go into linking GDB.
# Links made at configuration time should not be specified here, since
@@ -885,7 +886,8 @@ check: force
# will run 3 concurrent sessions of check, eventually testing all 10
# combinations. GNU make is required for the % pattern to work, as is
# a shell that expands alternations within braces. If GNU make is not
-# used, this rule will harmlessly fail to match.
+# used, this rule will harmlessly fail to match. Used FORCE_PARALLEL to
+# prevent serialized checking due to the passed RUNTESTFLAGS.
check//%: force
@if [ -f testsuite/config.status ]; then \
rootme=`pwd`; export rootme; \
@@ -905,6 +907,7 @@ check//%: force
else :; fi && cd $$testdir && \
$(MAKE) $(TARGET_FLAGS_TO_PASS) \
RUNTESTFLAGS="--target_board=$$variant $(RUNTESTFLAGS)" \
+ FORCE_PARALLEL=$(if $(FORCE_PARALLEL),1,$(if $(RUNTESTFLAGS),,1)) \
"$$target"; \
else true; fi