This failure, albeit caused by automake PR 8485, uncovered a real bug in my testcase, which was causing the required 'ylwrap' script not to be distributed as it should have been.
Notice that, even with this patch, the testscase still fails due to PR 8485; I will soon check in a temporary workaround for this test (sorry if this is unclean, but I'm finishing the patch series to enhance bison support and fix bug#7648 and PR automake/491, and I don't want to be hampered by spurious failures in the testsuite). Regards, Stefano
From 69513875e7847a5b6b89ffb58721daee9a49f06b Mon Sep 17 00:00:00 2001 From: Stefano Lattarini <stefano.lattar...@gmail.com> Date: Tue, 12 Apr 2011 18:19:41 +0200 Subject: [PATCH] tests: fix spurious failure in test 'yacc-d-cxx.test' * tests/yacc-d-cxx.test: Create ylwrap script before calling automake for the first time, so that the script gets correctly distributed. Add checks verifying it indeed is. --- ChangeLog | 7 +++++++ tests/yacc-d-cxx.test | 25 ++++++++++++++++--------- 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/ChangeLog b/ChangeLog index 871aadf..6e522d8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2011-04-12 Stefano Lattarini <stefano.lattar...@gmail.com> + tests: fix spurious failure in test 'yacc-d-cxx.test' + * tests/yacc-d-cxx.test: Create ylwrap script before calling + automake for the first time, so that the script gets correctly + distributed. Add checks verifying it indeed is. + +2011-04-12 Stefano Lattarini <stefano.lattar...@gmail.com> + tests cosmetics: remove redundant definitions of variable $tab * tests/yacc-d-basic.test ($tab): Remove definition: it's already defined in `tests/defs'. diff --git a/tests/yacc-d-cxx.test b/tests/yacc-d-cxx.test index 67e4dab..4381346 100755 --- a/tests/yacc-d-cxx.test +++ b/tests/yacc-d-cxx.test @@ -64,28 +64,30 @@ AC_CONFIG_FILES([foo/Makefile bar/Makefile baz/Makefile qux/Makefile]) AC_OUTPUT END -cat > Makefile.am <<'END' -SUBDIRS = foo bar baz qux -END - mkdir foo bar baz qux baz/sub # These makefiles will be extended later. -cat > foo/Makefile.am <<'END' +cat > Makefile.am <<'END' .PHONY: echo-distcom echo-distcom: @echo ' ' $(DIST_COMMON) ' ' END -cp foo/Makefile.am bar/Makefile.am -cp foo/Makefile.am baz/Makefile.am -cp foo/Makefile.am qux/Makefile.am +cp Makefile.am foo/Makefile.am +cp Makefile.am bar/Makefile.am +cp Makefile.am baz/Makefile.am +cp Makefile.am qux/Makefile.am + +cat >> Makefile.am <<'END' +SUBDIRS = foo bar baz qux +END $ACLOCAL $AUTOCONF -$AUTOMAKE Makefile cp $testsrcdir/../lib/ylwrap . +$AUTOMAKE Makefile + # Try with -d in $(YFLAGS) (don't do this in real life!). cat >> foo/Makefile.am <<END bin_PROGRAMS = zardoz @@ -155,6 +157,10 @@ test -f baz/sub/parse.h++ test -f qux/maude-parse.cxx test -f qux/maude-parse.hxx +# The ylwrap script must be shipped. +$MAKE echo-distcom +$MAKE -s echo-distcom | grep '[ /]ylwrap ' + # The generated C++ source and header files must be shipped. cd foo $MAKE echo-distcom @@ -180,6 +186,7 @@ cd .. $MAKE distdir find $distdir # For debugging. +test -f $distdir/ylwrap test -f $distdir/foo/parse.cc test -f $distdir/foo/parse.hh test -f $distdir/bar/parse.cpp -- 1.7.2.3