From 152fcd209b21d8a588e787d60abd59d74bbeb69b Mon Sep 17 00:00:00 2001 From: Stefano Lattarini Date: Mon, 8 Aug 2011 00:16:56 +0200 Subject: [PATCH] parallel-tests: work around Solaris XPG4 make segfault Issue exposed by test `posixsubst-tests-p.test', and similar to the problem solved by commit `v1.11-159-ge7aa360'. * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Trim trailing whitespace from $list, to avoid triggering a nasty bug (potential segfault) on Solaris XPG4 make and Heirloom make. --- ChangeLog | 9 +++++++++ lib/Automake/tests/Makefile.in | 1 + lib/am/check.am | 3 +++ tests/Makefile.in | 1 + 4 files changed, 14 insertions(+) diff --git a/ChangeLog b/ChangeLog index d50418d8e..e715e8977 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2011-08-07 Stefano Lattarini + + parallel-tests: work around Solaris XPG4 make segfault + Issue exposed by test `posixsubst-tests-p.test', and similar to + the problem solved by commit `v1.11-159-ge7aa360'. + * lib/am/check.am [%?PARALLEL_TESTS%] (check-TESTS): Trim trailing + whitespace from $list, to avoid triggering a nasty bug (potential + segfault) on Solaris XPG4 make and Heirloom make. + 2011-08-07 Stefano Lattarini testsuite: fix weird spurious failure with Solaris /bin/sh diff --git a/lib/Automake/tests/Makefile.in b/lib/Automake/tests/Makefile.in index ad08b6636..fc0ccf8d3 100644 --- a/lib/Automake/tests/Makefile.in +++ b/lib/Automake/tests/Makefile.in @@ -461,6 +461,7 @@ check-TESTS: list=`for f in $$list; do \ test .log = $$f || echo $$f; \ done | tr '\012\015' ' '`; \ + list=`echo "$$list" | sed 's/ *$$//'`; \ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$list" .log.html: diff --git a/lib/am/check.am b/lib/am/check.am index 8340850ac..840914a8b 100644 --- a/lib/am/check.am +++ b/lib/am/check.am @@ -294,6 +294,9 @@ check-TESTS: list=`for f in $$list; do \ test .log = $$f || echo $$f; \ done | tr '\012\015' ' '`; \ +## This apparently useless munging helps to avoid a nasty bug (a +## segmentation fault!) on Solaris XPG4 make. + list=`echo "$$list" | sed 's/ *$$//'`; \ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$list" AM_RECURSIVE_TARGETS += check diff --git a/tests/Makefile.in b/tests/Makefile.in index d98f473a0..3da9cab87 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -1614,6 +1614,7 @@ check-TESTS: list=`for f in $$list; do \ test .log = $$f || echo $$f; \ done | tr '\012\015' ' '`; \ + list=`echo "$$list" | sed 's/ *$$//'`; \ $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$list" .log.html: -- 2.47.2