[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[FYI] {maint} tests: fix spurious failures with "chatty" make implementa
From: |
Stefano Lattarini |
Subject: |
[FYI] {maint} tests: fix spurious failures with "chatty" make implementations |
Date: |
Thu, 20 Oct 2011 21:32:11 +0200 |
* tests/distcheck-missing-m4.test: On failure, some make
implementations (such as Solaris make) print the whole failed
recipe on standard output. This was causing a spurious failure
in the checks grepping the output from make. Work around this.
* tests/distcheck-outdated-m4.test: Likewise.
---
ChangeLog | 9 +++++++++
tests/distcheck-missing-m4.test | 15 +++++++++++----
tests/distcheck-outdated-m4.test | 16 +++++++++++-----
3 files changed, 31 insertions(+), 9 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index c87185f..9e81436 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,14 @@
2011-10-20 Stefano Lattarini <address@hidden>
+ tests: fix spurious failures with "chatty" make implementations
+ * tests/distcheck-missing-m4.test: On failure, some make
+ implementations (such as Solaris make) print the whole failed
+ recipe on standard output. This was causing a spurious failure
+ in the checks grepping the output from make. Work around this.
+ * tests/distcheck-outdated-m4.test: Likewise.
+
+2011-10-20 Stefano Lattarini <address@hidden>
+
tests: fix spurious failure on fast machines
* tests/aclocal-path-precedence.test: Also remove the `configure'
script between different test runs, to ensure it is always remade
diff --git a/tests/distcheck-missing-m4.test b/tests/distcheck-missing-m4.test
index 1a2b62f..1d42748 100755
--- a/tests/distcheck-missing-m4.test
+++ b/tests/distcheck-missing-m4.test
@@ -65,6 +65,15 @@ $AUTOCONF
$EGREP 'MY_(FOO|BAR|BAZ|ZAR)' configure && Exit 1 # Sanity check.
$AUTOMAKE
+check_no_spurious_error ()
+{
+ $EGREP -i 'mkdir:|:.*(permission|denied)' output && Exit 1
+ # On failure, some make implementations (such as Solaris make) print the
+ # whole failed recipe on stdout. The first grep works around this.
+ grep -v 'rm -rf ' output | grep -i 'autom4te.*\.cache' && Exit 1
+ : # To placate `set -e'.
+}
+
./configure
$MAKE distcheck >output 2>&1 && { cat output; Exit 1; }
@@ -72,8 +81,7 @@ cat output
for x in bar baz zar; do
$EGREP "required m4 file.*not distributed.* $x.m4( |$)" output
done
-# Check that we don't fail for spurious errors.
-$EGREP -i 'mkdir:|autom4te.*\.cache|:.*(permission|denied)' output && Exit 1
+check_no_spurious_error
# Now we use `--install', and "make distcheck" should pass.
$ACLOCAL -I m4 --install
@@ -98,8 +106,7 @@ $MAKE distcheck >output 2>&1 && { cat output; Exit 1; }
cat output
$EGREP "required m4 file.*not distributed.* qux.m4( |$)" output
$EGREP "required m4 file.*not distributed.* bla.m4( |$)" output
-# Check that we don't fail for spurious errors.
-$EGREP -i 'mkdir:|autom4te.*\.cache|permission|denied' output && Exit 1
+check_no_spurious_error
# Check that we don't complain for files that should have been found.
$FGREP " (bar|baz|zar).m4" output && Exit 1
diff --git a/tests/distcheck-outdated-m4.test b/tests/distcheck-outdated-m4.test
index 7a3ade8..e3f265e 100755
--- a/tests/distcheck-outdated-m4.test
+++ b/tests/distcheck-outdated-m4.test
@@ -59,6 +59,15 @@ $AUTOMAKE
./configure
$MAKE distcheck # Sanity check.
+check_no_spurious_error ()
+{
+ $EGREP -i 'mkdir:|:.*(permission|denied)' output && Exit 1
+ # On failure, some make implementations (such as Solaris make) print the
+ # whole failed recipe on stdout. The first grep works around this.
+ grep -v 'rm -rf ' output | grep -i 'autom4te.*\.cache' && Exit 1
+ : # To placate `set -e'.
+}
+
# We start to use a new "third-party" macro in a new version
# of a pre-existing third-party m4 file, but forget to re-run
# "aclocal --install" by hand, relying on automatic remake
@@ -76,8 +85,7 @@ $MAKE distcheck >output 2>&1 && { cat output; Exit 1; }
cat output
$EGREP "required m4 file.* outdated.* baz.m4( |$)" output
-# Check that we don't fail for spurious errors.
-$EGREP -i 'mkdir:|autom4te.*\.cache|permission|denied' output && Exit 1
+check_no_spurious_error
# Check that we don't complain for files that aren't outdated.
$EGREP " (foo|bar).m4" output && Exit 1
@@ -117,10 +125,8 @@ END
$MAKE # Rebuild configure and makefiles.
$MAKE distcheck >output 2>&1 && { cat output; Exit 1; }
cat output
-
$EGREP "required m4 file.* outdated.* fnord.m4( |$)" output
-# Check that we don't fail for spurious errors.
-$EGREP -i 'mkdir:|autom4te.*\.cache|permission|denied' output && Exit 1
+check_no_spurious_error
# Check that we don't complain for files that aren't outdated.
$EGREP " (foo|bar|baz).m4" output && Exit 1
--
1.7.2.3
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [FYI] {maint} tests: fix spurious failures with "chatty" make implementations,
Stefano Lattarini <=