Bug#873929: gcc7: Enable libgo tests and rebuilds with make -C
On Sat, 2017-09-02 at 14:44 +0200, Svante Signell wrote:
> On Sat, 2017-09-02 at 04:07 +0200, Matthias Klose wrote:
> If I understand you correctly the behavior in gcc-6 is correct.
> Attached is an updated libgo-testsuite.diff file fixing the if-then-
> else-fi logic in the same way as for gcc-6 (including the whitespace
> fix). Tested on an amd64 box, and only the 64-bit target is run.
>
> The other patch, libgo-Makefile.diff, adds to the CLEANFILES enabling
> libgo rebuilds with make -C ...
>
Neither patch made it to gcc-7-7.2.0-4. Why?
(libgo-Makefile.diff should be named libgo-cleanfiles.diff)
Attaching the patches again.
Index: gcc-7-7.2.0/src/libgo/Makefile.am
===================================================================
--- gcc-7-7.2.0.orig/src/libgo/Makefile.am
+++ gcc-7-7.2.0/src/libgo/Makefile.am
@@ -1423,7 +1423,9 @@ mostlyclean-local:
find . -name '*-testsum' -print | xargs rm -f
find . -name '*-testlog' -print | xargs rm -f
-CLEANFILES = *.go *.gox goc2c *.c s-version libgo.sum libgo.log
+CLEANFILES = *.go *.gox goc2c *.c s-* libgo.sum libgo.log \
+ *.dep */*.dep */*/*.dep */*/*/*.dep */*/*.dep */*/*/*/*.dep \
+ */*/*/*/*/*.dep
clean-local:
find . -name '*.la' -print | xargs $(LIBTOOL) --mode=clean rm -f
Index: gcc-7-7.2.0/src/libgo/Makefile.in
===================================================================
--- gcc-7-7.2.0.orig/src/libgo/Makefile.in
+++ gcc-7-7.2.0/src/libgo/Makefile.in
@@ -1347,7 +1347,10 @@ TEST_PACKAGES = \
unicode/utf8/check
MOSTLYCLEAN_FILES = libgo.head libgo.sum.sep libgo.log.sep
-CLEANFILES = *.go *.gox goc2c *.c s-version libgo.sum libgo.log
+CLEANFILES = *.go *.gox goc2c *.c s-* libgo.sum libgo.log \
+ *.dep */*.dep */*/*.dep */*/*/*.dep */*/*.dep */*/*/*/*.dep \
+ */*/*/*/*/*.dep
+
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
# DP: Only run the libgo testsuite for flags configured in RUNTESTFLAGS
Index: gcc-7-7.2.0/src/libgo/Makefile.am
===================================================================
--- gcc-7-7.2.0.orig/src/libgo/Makefile.am
+++ gcc-7-7.2.0/src/libgo/Makefile.am
@@ -929,7 +929,7 @@ BUILDGOX = \
$(SHELL) $(srcdir)/mvifdiff.sh $@.tmp `echo $@ | sed -e 's/s-gox/gox/'`
GOTESTFLAGS =
-GOBENCH =
+GOBENCH =
# Check a package.
CHECK = \
@@ -948,6 +948,12 @@ CHECK = \
$(MKDIR_P) $(@D); \
rm -f $@-testsum $@-testlog; \
files=`$(SHELL) $(srcdir)/match.sh --goarch=$(GOARCH) --goos=$(GOOS) --srcdir=$(srcdir)/go/$(@D) --extrafiles="$(extra_go_files_$(subst /,_,$(@D)))" $(matchargs_$(subst /,_,$(@D)))`; \
+ run_check=yes; \
+ MULTILIBDIR="$(MULTILIBDIR)"; \
+ case "$$MULTILIBDIR" in /64|/x32) \
+ echo "$$RUNTESTFLAGS" | grep -q "$${MULTILIBDIR\#/*}" || run_check=; \
+ esac; \
+ if test "$$run_check" = "yes"; then \
if test "$(USE_DEJAGNU)" = "yes"; then \
$(SHELL) $(srcdir)/testsuite/gotest --goarch=$(GOARCH) --goos=$(GOOS) --dejagnu=yes --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --pkgpath="$(@D)" --pkgfiles="$$files" --testname="$(@D)" $(GOTESTFLAGS); \
elif test "$(GOBENCH)" != ""; then \
@@ -963,6 +969,7 @@ CHECK = \
echo "FAIL: $(@D)" > $@-testsum; \
exit 1; \
fi; \
+ fi; \
fi
# Build all packages before checking any.
Index: gcc-7-7.2.0/src/libgo/Makefile.in
===================================================================
--- gcc-7-7.2.0.orig/src/libgo/Makefile.in
+++ gcc-7-7.2.0/src/libgo/Makefile.in
@@ -1085,7 +1085,7 @@ BUILDGOX = \
$(SHELL) $(srcdir)/mvifdiff.sh $@.tmp `echo $@ | sed -e 's/s-gox/gox/'`
GOTESTFLAGS =
-GOBENCH =
+GOBENCH =
# Check a package.
CHECK = \
@@ -1104,6 +1104,12 @@ CHECK = \
$(MKDIR_P) $(@D); \
rm -f $@-testsum $@-testlog; \
files=`$(SHELL) $(srcdir)/match.sh --goarch=$(GOARCH) --goos=$(GOOS) --srcdir=$(srcdir)/go/$(@D) --extrafiles="$(extra_go_files_$(subst /,_,$(@D)))" $(matchargs_$(subst /,_,$(@D)))`; \
+ run_check=yes; \
+ MULTILIBDIR="$(MULTILIBDIR)"; \
+ case "$$MULTILIBDIR" in /64|/x32) \
+ echo "$$RUNTESTFLAGS" | grep -q "$${MULTILIBDIR\#/*}" || run_check=; \
+ esac; \
+ if test "$$run_check" = "yes"; then \
if test "$(USE_DEJAGNU)" = "yes"; then \
$(SHELL) $(srcdir)/testsuite/gotest --goarch=$(GOARCH) --goos=$(GOOS) --dejagnu=yes --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --pkgpath="$(@D)" --pkgfiles="$$files" --testname="$(@D)" $(GOTESTFLAGS); \
elif test "$(GOBENCH)" != ""; then \
@@ -1119,6 +1125,7 @@ CHECK = \
echo "FAIL: $(@D)" > $@-testsum; \
exit 1; \
fi; \
+ fi; \
fi
Reply to: