[binutils-gdb] sim: testsuite: improve parallel test processing

Michael Frysinger vapier@sourceware.org
Wed Oct 26 10:09:00 GMT 2022


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=8f97b519fb061a7243344905cc23a77adda6be7a

commit 8f97b519fb061a7243344905cc23a77adda6be7a
Author: Mike Frysinger <vapier@gentoo.org>
Date:   Mon Oct 24 01:30:18 2022 +0545

    sim: testsuite: improve parallel test processing
    
    The current logic limits itself to a maxdepth of 4 when looking for
    results.  This wouldn't be a problem if cris didn't have a testsuite
    at a depth of 5 which we end up ignoring when summarizing.  Rather
    than bump the number from 4 to 5, rework the code so that we gather
    the exact set of tests that we tried to run.

Diff:
---
 sim/Makefile.in        | 9 +++++----
 sim/testsuite/local.mk | 9 +++++----
 2 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/sim/Makefile.in b/sim/Makefile.in
index 18e84e52266..f471289600c 100644
--- a/sim/Makefile.in
+++ b/sim/Makefile.in
@@ -2474,13 +2474,14 @@ check/%.exp:
 
 check-DEJAGNU-parallel:
 	$(AM_V_at)( \
-	$(MAKE) -k \
-	  `cd $(srcdir)/testsuite && find . -name '*.exp' -printf 'check/%P '`; \
+	set -- `cd $(srcdir)/testsuite && find . -name '*.exp' -printf '%P\n' | sed 's:[.]exp$$::'`; \
+	$(MAKE) -k `printf 'check/%s.exp ' $$@`; \
 	ret=$$?; \
+	set -- `printf 'testsuite/%s/ ' $$@`; \
 	$(SHELL) $(srcroot)/contrib/dg-extract-results.sh \
-	  `find testsuite/ -maxdepth 4 -name testrun.sum | sort` > testrun.sum; \
+	  `find $$@ -maxdepth 1 -name testrun.sum 2>/dev/null | sort` > testrun.sum; \
 	$(SHELL) $(srcroot)/contrib/dg-extract-results.sh -L \
-	  `find testsuite/ -maxdepth 4 -name testrun.log | sort` > testrun.log; \
+	  `find $$@ -maxdepth 1 -name testrun.log 2>/dev/null | sort` > testrun.log; \
 	echo; \
 	$(SED) -n '/^.*===.*Summary.*===/,$$p' testrun.sum; \
 	exit $$ret)
diff --git a/sim/testsuite/local.mk b/sim/testsuite/local.mk
index b8114a56599..cee51f24ae0 100644
--- a/sim/testsuite/local.mk
+++ b/sim/testsuite/local.mk
@@ -50,13 +50,14 @@ check/%.exp:
 
 check-DEJAGNU-parallel:
 	$(AM_V_at)( \
-	$(MAKE) -k \
-	  `cd $(srcdir)/testsuite && find . -name '*.exp' -printf 'check/%P '`; \
+	set -- `cd $(srcdir)/testsuite && find . -name '*.exp' -printf '%P\n' | sed 's:[.]exp$$::'`; \
+	$(MAKE) -k `printf 'check/%s.exp ' $$@`; \
 	ret=$$?; \
+	set -- `printf 'testsuite/%s/ ' $$@`; \
 	$(SHELL) $(srcroot)/contrib/dg-extract-results.sh \
-	  `find testsuite/ -maxdepth 4 -name testrun.sum | sort` > testrun.sum; \
+	  `find $$@ -maxdepth 1 -name testrun.sum 2>/dev/null | sort` > testrun.sum; \
 	$(SHELL) $(srcroot)/contrib/dg-extract-results.sh -L \
-	  `find testsuite/ -maxdepth 4 -name testrun.log | sort` > testrun.log; \
+	  `find $$@ -maxdepth 1 -name testrun.log 2>/dev/null | sort` > testrun.log; \
 	echo; \
 	$(SED) -n '/^.*===.*Summary.*===/,$$p' testrun.sum; \
 	exit $$ret)


More information about the Gdb-cvs mailing list