From: Stefano Lattarini Date: Tue, 22 Nov 2011 19:50:53 +0000 (+0100) Subject: coverage: expose automake bug#10111 in the testsuite X-Git-Tag: v1.11.1b~6^2~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=833741419e4df9adcf1a1aa86088e562e0ba46ad;p=thirdparty%2Fautomake.git coverage: expose automake bug#10111 in the testsuite * tests/remake-am-pr10111.test: New test, xfailing. * tests/remake-m4-pr10111.test: Likewise. * tests/Makefile.am (TESTS, XFAIL_TESTS): Add them. --- diff --git a/ChangeLog b/ChangeLog index a828c2174..e3787bbbc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2011-11-22 Stefano Lattarini + + coverage: expose automake bug#10111 in the testsuite + * tests/remake-am-pr10111.test: New test, xfailing. + * tests/remake-m4-pr10111.test: Likewise. + * tests/Makefile.am (TESTS, XFAIL_TESTS): Add them. + 2011-11-19 Stefano Lattarini texinfo: work around Solaris 10 xpg4 shell bug in install rules diff --git a/tests/Makefile.am b/tests/Makefile.am index dd3fb4615..936b781eb 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -26,6 +26,8 @@ gcj6.test \ java-nobase.test \ pr8365-remake-timing.test \ lex-subobj-nodep.test \ +remake-am-pr10111.test \ +remake-m4-pr10111.test \ vala-vpath.test \ txinfo5.test @@ -722,6 +724,8 @@ remake-subdir-gnu.test \ remake-subdir.test \ remake-subdir2.test \ remake-subdir-long-time.test \ +remake-am-pr10111.test \ +remake-m4-pr10111.test \ pr8365-remake-timing.test \ regex.test \ req.test \ diff --git a/tests/Makefile.in b/tests/Makefile.in index d2085c849..18983aea9 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -297,6 +297,8 @@ gcj6.test \ java-nobase.test \ pr8365-remake-timing.test \ lex-subobj-nodep.test \ +remake-am-pr10111.test \ +remake-m4-pr10111.test \ vala-vpath.test \ txinfo5.test @@ -1006,6 +1008,8 @@ remake-subdir-gnu.test \ remake-subdir.test \ remake-subdir2.test \ remake-subdir-long-time.test \ +remake-am-pr10111.test \ +remake-m4-pr10111.test \ pr8365-remake-timing.test \ regex.test \ req.test \ diff --git a/tests/remake-am-pr10111.test b/tests/remake-am-pr10111.test new file mode 100644 index 000000000..a8c2dc61f --- /dev/null +++ b/tests/remake-am-pr10111.test @@ -0,0 +1,64 @@ +#! /bin/sh +# Copyright (C) 2011 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Check that our remake rules doesn't give spurious successes in +# some corner case situations where they should actually fail. +# See automake bug#10111. +# To be clear, we are speaking about *very* corner-case situations here, +# and the fact that the remake rules might get confused in them is not a +# big deal in practice (in fact, this test *currently fails*). Still, +# keeping the limitation exposed is a good idea anyway. + +. ./defs || Exit 1 + +set -e + +cat >> configure.in <<'END' +AC_OUTPUT +END + +: > foobar.am + +cat > Makefile.am <<'END' +include $(srcdir)/foobar.am +$(srcdir)/foobar.am: +## Creative quoring to avoid spurious matches in the grepping +## of Makefile.in, later. + echo '#' 'foobar' 'was 'here' '#' > $@ +END + +$ACLOCAL +$AUTOCONF +$AUTOMAKE + +./configure + +# OK, so the developer wants to interactively try out how the +# "distributed form" of his package behaves. +$MAKE distdir +cd $distdir +# He's interested in trying out a VPATH build. +mkdir build +cd build +../configure +# He wants to verify that the rules he's written to rebuild a file +# included by configure.in works also in VPATH builds. +rm -f ../foobar.am +$MAKE +grep '# foobar was here #' ../Makefile.in +$MAKE distcheck + +: diff --git a/tests/remake-m4-pr10111.test b/tests/remake-m4-pr10111.test new file mode 100644 index 000000000..2d89c2592 --- /dev/null +++ b/tests/remake-m4-pr10111.test @@ -0,0 +1,62 @@ +#! /bin/sh +# Copyright (C) 2011 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Check that our remake rules doesn't give spurious successes in +# some corner case situations where they should actually fail. +# See automake bug#10111. +# To be clear, we are speaking about *very* corner-case situations here, +# and the fact that the remake rules might get confused in them is not a +# big deal in practice (in fact, this test *currently fails*). Still, +# keeping the limitation exposed is a good idea anyway. + +. ./defs || Exit 1 + +set -e + +cat >> configure.in <<'END' +m4_include([foobar.m4]) +AC_OUTPUT +END + +: > foobar.m4 + +cat > Makefile.am <<'END' +$(srcdir)/foobar.m4: + echo ': foobar was here :' > $@ +END + +$ACLOCAL +$AUTOCONF +$AUTOMAKE + +./configure + +# OK, so the developer wants to interactively try out how the +# "distributed form" of his package behaves. +$MAKE distdir +cd $distdir +# He's interested in trying out a VPATH build. +mkdir build +cd build +../configure +# He wants to verify that the rules he's written to rebuild a file +# included by configure.in works also in VPATH builds. +rm -f ../foobar.m4 +$MAKE +grep ': foobar was here :' ../configure +$MAKE distcheck + +: