This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [patch] Fix parallel gdb/ make check//%
On Tue, 30 Jun 2009 21:49:49 +0200, Tom Tromey wrote:
> I'd like to nuke all the subdir Makefiles and configure stuff below
> testsuite. It is a lot of stuff that does very little -- it doesn't
> even really do the one thing it is intended to do.
OK, I see it now.
> Jan> -TEST_DIRS = gdb.base1 gdb.base2 $(filter-out gdb.base,$(sort $(notdir $(patsubst %/,%,$(dir $(wildcard $(srcdir)/gdb.*/*.exp))))))
> Jan> +TEST_DIRS = gdb.base1 gdb.base2 $(filter-out gdb.base,$(ALL_SUBDIRS))
I only limited the number of directories to run hiding the real problem.
> I don't really understand what caused the error you saw.
VPATH. Hopefully this patch is OK.
Thanks,
Jan
gdb/testsuite/
2009-06-30 Jan Kratochvil <jan.kratochvil@redhat.com>
Fix `make check//%' target after `make check' has been ran.
* Makefile.in (TEST_TARGETS): Remove the %/.dir dependency. Add
a mkdir call.
(check-gdb.base%): Remove the gdb.base%/.dir dependency.
(%/.dir): Remove.
--- a/gdb/testsuite/Makefile.in
+++ b/gdb/testsuite/Makefile.in
@@ -170,7 +170,8 @@ check-parallel:
$(SHELL) $(srcdir)/dg-extract-results.sh -L \
$(addsuffix /gdb.log,$(TEST_DIRS)) > gdb.log
-$(filter-out check-gdb.base%,$(TEST_TARGETS)): check-gdb.%: all site.exp gdb.%/.dir
+$(filter-out check-gdb.base%,$(TEST_TARGETS)): check-gdb.%: all site.exp
+ @if test ! -d gdb.$*; then mkdir gdb.$*; fi
$(DO_RUNTEST) --directory=gdb.$* --outdir=gdb.$* $(RUNTESTFLAGS)
# Each half (roughly) of the .exp files from gdb.base.
@@ -178,14 +179,10 @@ BASE1_FILES = $(patsubst $(srcdir)/%,%,$(wildcard $(srcdir)/gdb.base/[a-m]*.exp)
BASE2_FILES = $(patsubst $(srcdir)/%,%,$(wildcard $(srcdir)/gdb.base/[n-z]*.exp))
# Handle each half of gdb.base.
-check-gdb.base%: all site.exp gdb.base%/.dir
+check-gdb.base%: all site.exp
@if test ! -d gdb.base$*; then mkdir gdb.base$*; fi
$(DO_RUNTEST) $(BASE$*_FILES) --outdir gdb.base$* $(RUNTESTFLAGS)
-%/.dir:
- @-if test ! -d $*; then mkdir $*; fi
- @echo > $@
-
subdir_do: force
@for i in $(DODIRS); do \
if [ -d ./$$i ] ; then \