Thanks for the report. On 02/20/2012 01:09 AM, Panther Martin wrote: > > Hi I'm reporting 1 test-suite failure on 64bit OSX Lion 10.7.3 using > > llvm-gcc-4.2.1 (5658) > autoconf-2.68 > automake-1.11.3 > gawk-4.0.0 > > FAIL: conffile-leading-dot.test (exit: 1) > ========================================= > > /private/tmp/homebrew-automake-1.11.3-vk9X/automake-1.11.3/tests:... > conffile-leading-dot: running make --version -v | grep GNU > GNU Make 3.81 > === Running test ./conffile-leading-dot.test > ++ pwd > /private/tmp/homebrew-automake-1.11.3-vk9X/automake-1.11.3/tests/conffile-leading-dot.dir > + set -e > + cat > + echo foo = barbarbar > + touch a.in b.in c.in > + aclocal-1.11 -Werror > + AUTOMAKE_fails -Wnone -Wunsupported > + AUTOMAKE_run 1 -Wnone -Wunsupported > + expected_exitcode=1 > + shift > + exitcode=0 > + automake-1.11 --foreign -Werror -Wall -Wnone -Wunsupported > + exitcode=1 > + cat stderr > configure.in:3: omit leading './' from config file names such as './Makefile'; > configure.in:3: remake rules might be subtly broken otherwise > configure.in:4: omit leading './' from config file names such as './foo'; > configure.in:4: remake rules might be subtly broken otherwise > + cat stdout > + test 1 = 1 > + grep '^configure\.in:3:.*'\''\./Makefile'\''' stderr > configure.in:3: omit leading './' from config file names such as './Makefile'; > + grep '^configure\.in:3:.* omit leading '\''\./'\''' stderr > configure.in:3: omit leading './' from config file names such as './Makefile'; > + grep '^configure\.in:3:.*remake rules might be subtly broken' stderr > configure.in:3: remake rules might be subtly broken otherwise > + grep '^configure\.in:4:.*'\''\./foo'\''' stderr > configure.in:4: omit leading './' from config file names such as './foo'; > + grep '^configure\.in:4:.* omit leading '\''\./'\''' stderr > configure.in:4: omit leading './' from config file names such as './foo'; > + grep '^configure\.in:4:.*remake rules might be subtly broken' stderr > configure.in:4: remake rules might be subtly broken otherwise > + autoconf -B /no/such/dir > + automake-1.11 --foreign -Werror -Wall -Wall -Wno-unsupported > + ./configure > checking for a BSD-compatible install... /usr/bin/install -c > checking whether build environment is sane... yes > checking for a thread-safe mkdir -p... ./install-sh -c -d > checking for gawk... gawk > checking whether make sets $(MAKE)... yes > configure: creating ./config.status > config.status: creating ./Makefile > config.status: creating ./foo > + make > make: Nothing to be done for `all'. > + grep barbarbar Makefile > foo = barbarbar > + echo foo = bazbazbaz > + make > cd . && /bin/sh /.../missing --run automake-1.11 --foreign ./Makefile > make: Nothing to be done for `all'. > The failure is here. I suspect this might be yet another timestamp issue. Could you please answer the following questions?
1. Is your system quite fast? (I'd assume yes, given the contents of config.log) 2. Does the directory you are building Automake into have sub-second timestamp resolution? 3. Does the reported failure happen consistently, or is it subject to a race? If the answers to the questions above are respectively "yes", "no" and "yes it's a racy failure", then I think the attached patch might fix the issue. Regards, Stefano
>From db73aeeae958c122b551bd36066997177cc4653f Mon Sep 17 00:00:00 2001 Message-Id: <db73aeeae958c122b551bd36066997177cc4653f.1329744217.git.stefano.lattar...@gmail.com> From: Stefano Lattarini <stefano.lattar...@gmail.com> Date: Mon, 20 Feb 2012 14:04:46 +0100 Subject: [PATCH] tests: fix a timestamp issue, and other minor buglets Reported by Panther Martin in automake bug#10848. * tests/conffile-leading-dot.test: Add a proper '$sleep' invocation, to avoid spurious failures on fast systems without sub-second timestamp resolutions. Add other minor related and unrelated improvements and fixlets since we are at it. --- THANKS | 1 + tests/conffile-leading-dot.test | 15 ++++++++------- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/THANKS b/THANKS index 3d1f75a..36f8f4b 100644 --- a/THANKS +++ b/THANKS @@ -267,6 +267,7 @@ Olivier Louchart-Fletcher oliv...@zipworld.com.au Olly Betts o...@muscat.co.uk Oren Ben-Kiki o...@ben-kiki.org Owen Taylor otay...@redhat.com +Panther Martin mrsmile...@lycos.com Patrick Welche pr...@newn.cam.ac.uk Patrik Weiskircher m...@justp.at Paul Berrevoets p...@swi.com diff --git a/tests/conffile-leading-dot.test b/tests/conffile-leading-dot.test index bfe81b5..732e10f 100755 --- a/tests/conffile-leading-dot.test +++ b/tests/conffile-leading-dot.test @@ -29,9 +29,7 @@ AC_CONFIG_FILES([./foo:a.in:b.in:c.in]) AC_OUTPUT END -echo foo = barbarbar > Makefile.am - -touch a.in b.in c.in +touch a.in b.in c.in Makefile.am $ACLOCAL @@ -44,16 +42,19 @@ grep "^configure\.in:4:.* omit leading '\\./'" stderr grep "^configure\.in:4:.*remake rules might be subtly broken" stderr # Check that our warning was actually justified. +sed 's/^AM_INIT_AUTOMAKE/&([-Wall -Wno-unsupported])/' <configure.in >t +mv -f t configure.in +rm -rf autom4te*.cache +$ACLOCAL $AUTOCONF $AUTOMAKE -Wall -Wno-unsupported ./configure $MAKE -grep barbarbar Makefile -# No need to sleep here, configure did that for us already. -echo foo = bazbazbaz > Makefile.am +$sleep +touch Makefile.am # Check that remake rules do truly break -- otherwise automake is # giving a bogus warning. -$MAKE 2>stderr && { cat stderr >&2 Exit 1; } +$MAKE 2>stderr && { cat stderr >&2; Exit 1; } cat stderr >&2 grep "config\\.status:.*invalid argument.*Makefile" stderr -- 1.7.9