Subject: bug#9147: 6 test failures on Fedora 15 with latest from git

From: Stefano Lattarini <[email-masked]>
Date: Fri, 22 Jul 2011 14:08:55 +0200

On Friday 22 July 2011, Jim Meyering wrote:
> Hi,
Hi Jim, thanks for the report.

> I built the latest and ran "make check TESTSUITEFLAGS=-j20" on Fedora 15.
>
Note that the `TESTSUITEFLAGS' variable has no effect on Automake-generated
testsuite harness.  What you probably wanted was simply "make check -j20".

> There were 6 failures.
> I barely have time to send this, so haven't tried to analyze the failures.

> FAIL: cond35.test (exit: 2)
> ===========================
> 
> /h/j/w/co/automake/tests:/opt/cov-sa-linux64-5.3.0/bin:/usr/lib64/ccache:/h/j/bin/perl:/h/j/bin:/p/p/git/bin:/p/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/local:/usr/local/bin
> cond35: running flex --version
> flex 2.5.35
> cond35: running bison --version
> bison (GNU Bison) 2.4.593-10e0
> Written by Robert Corbett and Richard Stallman.
> 
> Copyright (C) 2011 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> cond35: running gcc --version
> gcc (GCC) 4.7.0 20110708 (experimental)
> Copyright (C) 2011 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> 
> cond35: running gcc -v
> Using built-in specs.
> COLLECT_GCC=/p/bin/gcc
> COLLECT_LTO_WRAPPER=/h/p/p/gcc-2011-07-08.18h49/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.7.0/lto-wrapper
> Target: x86_64-unknown-linux-gnu
> Configured with: /h/j/w/co/gcc-svn/configure --prefix=/p/p/gcc-2011-07-08.18h49 --disable-multilib --disable-libmudflap --disable-nls --enable-languages=c
> Thread model: posix
> gcc version 4.7.0 20110708 (experimental) (GCC)
> ++ set -e
> ++ pwd
> /h/j/w/co/automake/tests/cond35.dir
> + cat
> + cat
> + aclocal-1.11a -Werror
> + autoconf
> + automake-1.11a --foreign -Werror -Wall --add-missing
> configure.in: installing `./ylwrap'
> ++ grep tparse.h: Makefile.in
> ++ wc -l
> + test 1 = 1
> + cat
> + cat
> + cat
> + cp ta.c tb.c
> + ./configure
> checking for a BSD-compatible install... /p/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /p/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking for style of include used by make... GNU
> checking dependency style of gcc... gcc3
> checking for flex... flex
> checking lex output file root... lex.yy
> checking lex library... none needed
> checking whether yytext is a pointer... no
> checking for bison... bison -y
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: executing depfiles commands
> + make
> /bin/sh ./ylwrap tparse.y y.tab.c tparse.c y.tab.h tparse.h y.output tparse.output -- bison -y -d
> updating tparse.h
> make  all-am
> make[1]: Entering directory `/h/j/w/co/automake/tests/cond35.dir'
> gcc -DPACKAGE_NAME=\"cond35\" -DPACKAGE_TARNAME=\"cond35\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"cond35\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"cond35\" -DVERSION=\"1.0\" -I.     -g -O2 -MT ta.o -MD -MP -MF .deps/ta.Tpo -c -o ta.o ta.c
> mv -f .deps/ta.Tpo .deps/ta.Po
> /bin/sh ./ylwrap tscan.l lex.yy.c tscan.c -- flex
> gcc -DPACKAGE_NAME=\"cond35\" -DPACKAGE_TARNAME=\"cond35\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"cond35\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"cond35\" -DVERSION=\"1.0\" -I.     -g -O2 -MT tscan.o -MD -MP -MF .deps/tscan.Tpo -c -o tscan.o tscan.c
> mv -f .deps/tscan.Tpo .deps/tscan.Po
> gcc -DPACKAGE_NAME=\"cond35\" -DPACKAGE_TARNAME=\"cond35\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"cond35\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"cond35\" -DVERSION=\"1.0\" -I.     -g -O2 -MT tparse.o -MD -MP -MF .deps/tparse.Tpo -c -o tparse.o tparse.c
> mv -f .deps/tparse.Tpo .deps/tparse.Po
> gcc  -g -O2   -o ta ta.o tscan.o tparse.o
> tscan.o: In function `yylex':
> /h/j/w/co/automake/tests/cond35.dir/tscan.c:805: undefined reference to `yywrap'
> collect2: error: ld returned 1 exit status
> make[1]: *** [ta] Error 1
> make[1]: Leaving directory `/h/j/w/co/automake/tests/cond35.dir'
> make: *** [all] Error 2
> + exit_status=2
> + set +e
> + cd /h/j/w/co/automake/tests
> + case $exit_status,$keep_testdirs in
> + test 0 '!=' 0
> + echo 'cond35: exit 2'
> cond35: exit 2
> + exit 2
> 
> FAIL: lex3.test (exit: 2)
> =========================
> 
> /h/j/w/co/automake/tests:/opt/cov-sa-linux64-5.3.0/bin:/usr/lib64/ccache:/h/j/bin/perl:/h/j/bin:/p/p/git/bin:/p/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/local:/usr/local/bin
> lex3: running gcc --version
> gcc (GCC) 4.7.0 20110708 (experimental)
> Copyright (C) 2011 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> 
> lex3: running gcc -v
> Using built-in specs.
> COLLECT_GCC=/p/bin/gcc
> COLLECT_LTO_WRAPPER=/h/p/p/gcc-2011-07-08.18h49/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.7.0/lto-wrapper
> Target: x86_64-unknown-linux-gnu
> Configured with: /h/j/w/co/gcc-svn/configure --prefix=/p/p/gcc-2011-07-08.18h49 --disable-multilib --disable-libmudflap --disable-nls --enable-languages=c
> Thread model: posix
> gcc version 4.7.0 20110708 (experimental) (GCC)
> lex3: running flex --version
> flex 2.5.35
> lex3: determine if make is GNU make
> GNU Make 3.82
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> ++ set -e
> ++ pwd
> /h/j/w/co/automake/tests/lex3.dir
> + CFLAGS=
> + export CFLAGS
> + cat
> + cat
> + cat
> + aclocal-1.11a -Werror
> + autoconf
> + automake-1.11a --foreign -Werror -Wall -a
> configure.in: installing `./ylwrap'
> + ./configure
> checking for a BSD-compatible install... /p/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /p/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking for style of include used by make... GNU
> checking dependency style of gcc... gcc3
> checking for flex... flex
> checking lex output file root... lex.yy
> checking lex library... none needed
> checking whether yytext is a pointer... no
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: executing depfiles commands
> + make
> /bin/sh ./ylwrap foo.l lex.yy.c foo.c -- flex
> gcc -DPACKAGE_NAME=\"lex3\" -DPACKAGE_TARNAME=\"lex3\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"lex3\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"lex3\" -DVERSION=\"1.0\" -I.      -MT foo.o -MD -MP -MF .deps/foo.Tpo -c -o foo.o foo.c
> mv -f .deps/foo.Tpo .deps/foo.Po
> gcc     -o foo foo.o
> foo.o: In function `yylex':
> foo.c:(.text+0x3d4): undefined reference to `yywrap'
> foo.o: In function `input':
> foo.c:(.text+0xf15): undefined reference to `yywrap'
> collect2: error: ld returned 1 exit status
> make: *** [foo] Error 1
> + exit_status=2
> + set +e
> + cd /h/j/w/co/automake/tests
> + case $exit_status,$keep_testdirs in
> + test 0 '!=' 0
> + echo 'lex3: exit 2'
> lex3: exit 2
> + exit 2
> 
> FAIL: lexvpath.test (exit: 2)
> =============================
> 
> /h/j/w/co/automake/tests:/opt/cov-sa-linux64-5.3.0/bin:/usr/lib64/ccache:/h/j/bin/perl:/h/j/bin:/p/p/git/bin:/p/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/local:/usr/local/bin
> lexvpath: running gcc --version
> gcc (GCC) 4.7.0 20110708 (experimental)
> Copyright (C) 2011 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> 
> lexvpath: running gcc -v
> Using built-in specs.
> COLLECT_GCC=/p/bin/gcc
> COLLECT_LTO_WRAPPER=/h/p/p/gcc-2011-07-08.18h49/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.7.0/lto-wrapper
> Target: x86_64-unknown-linux-gnu
> Configured with: /h/j/w/co/gcc-svn/configure --prefix=/p/p/gcc-2011-07-08.18h49 --disable-multilib --disable-libmudflap --disable-nls --enable-languages=c
> Thread model: posix
> gcc version 4.7.0 20110708 (experimental) (GCC)
> lexvpath: running flex --version
> flex 2.5.35
> ++ set -e
> ++ pwd
> /h/j/w/co/automake/tests/lexvpath.dir
> + cat
> + cat
> + cat
> + cat
> + cat
> + aclocal-1.11a -Werror
> + autoconf
> + automake-1.11a --foreign -Werror -Wall -a
> configure.in: installing `./ylwrap'
> + mkdir sub
> + cd sub
> + ../configure
> checking for a BSD-compatible install... /p/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /p/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking for style of include used by make... GNU
> checking dependency style of gcc... gcc3
> checking for flex... flex
> checking lex output file root... lex.yy
> checking lex library... none needed
> checking whether yytext is a pointer... no
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating lexoutroot
> config.status: executing depfiles commands
> + . ./lexoutroot
> ++ LEX_OUTPUT_ROOT=lex.yy
> + test -n lex.yy
> + cd ..
> + flex lexer.l
> + mv lex.yy.c lexer.c
> + cd sub
> + sleep 2
> + cat
> + make
> /bin/sh ../ylwrap ../lexer.l lex.yy.c lexer.c -- flex
> gcc -DPACKAGE_NAME=\"lexvpath\" -DPACKAGE_TARNAME=\"lexvpath\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"lexvpath\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"lexvpath\" -DVERSION=\"1.0\" -I. -I..     -g -O2 -MT lexer.o -MD -MP -MF .deps/lexer.Tpo -c -o lexer.o lexer.c
> mv -f .deps/lexer.Tpo .deps/lexer.Po
> gcc -DPACKAGE_NAME=\"lexvpath\" -DPACKAGE_TARNAME=\"lexvpath\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"lexvpath\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"lexvpath\" -DVERSION=\"1.0\" -I. -I..     -g -O2 -MT foo.o -MD -MP -MF .deps/foo.Tpo -c -o foo.o ../foo.c
> mv -f .deps/foo.Tpo .deps/foo.Po
> gcc  -g -O2   -o foo lexer.o foo.o
> lexer.o: In function `yylex':
> /h/j/w/co/automake/tests/lexvpath.dir/sub/lexer.c:812: undefined reference to `yywrap'
> collect2: error: ld returned 1 exit status
> make: *** [foo] Error 1
> + exit_status=2
> + set +e
> + cd /h/j/w/co/automake/tests
> + case $exit_status,$keep_testdirs in
> + test 0 '!=' 0
> + echo 'lexvpath: exit 2'
> lexvpath: exit 2
> + exit 2
> 
> FAIL: silent-lex-gcc.test (exit: 1)
> ===================================
> 
> /h/j/w/co/automake/tests:/opt/cov-sa-linux64-5.3.0/bin:/usr/lib64/ccache:/h/j/bin/perl:/h/j/bin:/p/p/git/bin:/p/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/local:/usr/local/bin
> silent-lex-gcc: running flex --version
> flex 2.5.35
> silent-lex-gcc: running gcc --version
> gcc (GCC) 4.7.0 20110708 (experimental)
> Copyright (C) 2011 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> 
> silent-lex-gcc: running gcc -v
> Using built-in specs.
> COLLECT_GCC=/p/bin/gcc
> COLLECT_LTO_WRAPPER=/h/p/p/gcc-2011-07-08.18h49/bin/../libexec/gcc/x86_64-unknown-linux-gnu/4.7.0/lto-wrapper
> Target: x86_64-unknown-linux-gnu
> Configured with: /h/j/w/co/gcc-svn/configure --prefix=/p/p/gcc-2011-07-08.18h49 --disable-multilib --disable-libmudflap --disable-nls --enable-languages=c
> Thread model: posix
> gcc version 4.7.0 20110708 (experimental) (GCC)
> ++ set -e
> ++ pwd
> /h/j/w/co/automake/tests/silent-lex-gcc.dir
> + mkdir sub
> + cat
> + cat
> + cat
> + cat
> + cp foo.l sub/bar.l
> + aclocal-1.11a -Werror
> + automake-1.11a --foreign -Werror -Wall --add-missing
> configure.in:5: installing `./compile'
> configure.in: installing `./ylwrap'
> + autoconf
> + for config_args in am_cv_CC_dependencies_compiler_type=gcc
> + ./configure am_cv_CC_dependencies_compiler_type=gcc --enable-silent-rules
> checking for a BSD-compatible install... /p/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /p/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking for style of include used by make... GNU
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking dependency style of gcc... (cached) gcc
> checking whether gcc and cc understand -c and -o together... yes
> checking for flex... flex
> checking lex output file root... lex.yy
> checking lex library... none needed
> checking whether yytext is a pointer... no
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating sub/Makefile
> config.status: executing depfiles commands
> + make
> /usr/lib/../lib64/crt1.o: In function `_start':
> (.text+0x20): undefined reference to `main'
> bar.o: In function `yylex':
> /h/j/w/co/automake/tests/silent-lex-gcc.dir/sub/bar.c:812: undefined reference to `yywrap'
> collect2: error: ld returned 1 exit status
> make[1]: *** [bar1] Error 1
> make: *** [all-recursive] Error 1
> + cat stdout
> Making all in sub
> make[1]: Entering directory `/h/j/w/co/automake/tests/silent-lex-gcc.dir/sub'
>   LEX      bar.c
>   CC       bar.o
>   CCLD     bar1
> make[1]: Leaving directory `/h/j/w/co/automake/tests/silent-lex-gcc.dir/sub'
> + Exit 1
> + set +e
> + exit 1
> + exit 1
> + exit_status=1
> + set +e
> + cd /h/j/w/co/automake/tests
> + case $exit_status,$keep_testdirs in
> + test 0 '!=' 0
> + echo 'silent-lex-gcc: exit 1'
> silent-lex-gcc: exit 1
> + exit 1
> 
> FAIL: silent-lex-generic.test (exit: 1)
> =======================================
> 
> /h/j/w/co/automake/tests:/opt/cov-sa-linux64-5.3.0/bin:/usr/lib64/ccache:/h/j/bin/perl:/h/j/bin:/p/p/git/bin:/p/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/local:/usr/local/bin
> silent-lex-generic: running flex --version
> flex 2.5.35
> ++ set -e
> ++ pwd
> /h/j/w/co/automake/tests/silent-lex-generic.dir
> + mkdir sub
> + cat
> + cat
> + cat
> + cat
> + cp foo.l sub/bar.l
> + aclocal-1.11a -Werror
> + automake-1.11a --foreign -Werror -Wall --add-missing
> configure.in:5: installing `./compile'
> configure.in: installing `./ylwrap'
> + autoconf
> + for config_args in --enable-dependency-tracking --disable-dependency-tracking
> + ./configure --enable-dependency-tracking --enable-silent-rules
> checking for a BSD-compatible install... /p/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /p/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking for style of include used by make... GNU
> checking for gcc... gcc
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables...
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether gcc accepts -g... yes
> checking for gcc option to accept ISO C89... none needed
> checking dependency style of gcc... gcc3
> checking whether gcc and cc understand -c and -o together... yes
> checking for flex... flex
> checking lex output file root... lex.yy
> checking lex library... none needed
> checking whether yytext is a pointer... no
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating sub/Makefile
> config.status: executing depfiles commands
> + make
> /usr/lib/../lib64/crt1.o: In function `_start':
> (.text+0x20): undefined reference to `main'
> bar.o: In function `yylex':
> /h/j/w/co/automake/tests/silent-lex-generic.dir/sub/bar.c:812: undefined reference to `yywrap'
> collect2: error: ld returned 1 exit status
> make[1]: *** [bar1] Error 1
> make: *** [all-recursive] Error 1
> + cat stdout
> Making all in sub
> make[1]: Entering directory `/h/j/w/co/automake/tests/silent-lex-generic.dir/sub'
>   LEX      bar.c
>   CC       bar.o
>   CCLD     bar1
> make[1]: Leaving directory `/h/j/w/co/automake/tests/silent-lex-generic.dir/sub'
> + Exit 1
> + set +e
> + exit 1
> + exit 1
> + exit_status=1
> + set +e
> + cd /h/j/w/co/automake/tests
> + case $exit_status,$keep_testdirs in
> + test 0 '!=' 0
> + echo 'silent-lex-generic: exit 1'
> silent-lex-generic: exit 1
> + exit 1
> 

A fix for these failures (which I've only encountered when running the
automake testsuite with Linux -> MinGW cross compilers) should have
been applied to the testsuite-work branch some time ago (see commit
`v1.11-871-geb147a1', "lex tests: avoid spurious failures when LEXLIB
isn't found").

>
> FAIL: txinfo21.test (exit: 1)
> =============================
> 
> /h/j/w/co/automake/tests:/opt/cov-sa-linux64-5.3.0/bin:/usr/lib64/ccache:/h/j/bin/perl:/h/j/bin:/p/p/git/bin:/p/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/local:/usr/local/bin
> txinfo21: running makeinfo --html --version
> makeinfo (GNU texinfo) 4.13
> 
> Copyright (C) 2008 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> txinfo21: running texi2dvi --version
> texi2dvi (GNU Texinfo 4.13) 1.135
> 
> Copyright (C) 2008 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> ++ set -e
> ++ pwd
> /h/j/w/co/automake/tests/txinfo21.dir
> + cat
> + cat
> + cat
> + mkdir sub
> + cat
> + mkdir rec
> + cat
> + cat
> + aclocal-1.11a -Werror
> + automake-1.11a --foreign -Werror -Wall --add-missing
> rec/Makefile.am:1: installing `rec/texinfo.tex'
> Makefile.am:2: installing `./texinfo.tex'
> + autoconf
> + ./configure
> checking for a BSD-compatible install... /p/bin/install -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... /p/bin/mkdir -p
> checking for gawk... gawk
> checking whether make sets $(MAKE)... yes
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating rec/Makefile
> + make
> Making all in rec
> make[1]: Entering directory `/h/j/w/co/automake/tests/txinfo21.dir/rec'
> restore=: && backupdir=".am$$" && \
> am__cwd=`pwd` && CDPATH="${ZSH_VERSION+.}:" && cd . && \
> rm -rf $backupdir && mkdir $backupdir && \
> if (/bin/sh /h/j/w/co/automake/tests/txinfo21.dir/missing --run makeinfo --version) >/dev/null 2>&1; then \
>   for f in main3.info main3.info-[0-9] main3.info-[0-9][0-9] main3.i[0-9] main3.i[0-9][0-9]; do \
>     if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \
>   done; \
> else :; fi && \
> cd "$am__cwd"; \
> if /bin/sh /h/j/w/co/automake/tests/txinfo21.dir/missing --run makeinfo   -I . \
>  -o main3.info main3.texi; \
> then \
>   rc=0; \
>   CDPATH="${ZSH_VERSION+.}:" && cd .; \
> else \
>   rc=$?; \
>   CDPATH="${ZSH_VERSION+.}:" && cd . && \
>   $restore $backupdir/* `echo "./main3.info" | sed 's|[^/]*$||'`; \
> fi; \
> rm -rf $backupdir; exit $rc
> make[1]: Leaving directory `/h/j/w/co/automake/tests/txinfo21.dir/rec'
> make[1]: Entering directory `/h/j/w/co/automake/tests/txinfo21.dir'
> restore=: && backupdir=".am$$" && \
> am__cwd=`pwd` && CDPATH="${ZSH_VERSION+.}:" && cd . && \
> rm -rf $backupdir && mkdir $backupdir && \
> if (/bin/sh /h/j/w/co/automake/tests/txinfo21.dir/missing --run makeinfo --version) >/dev/null 2>&1; then \
>   for f in main.info main.info-[0-9] main.info-[0-9][0-9] main.i[0-9] main.i[0-9][0-9]; do \
>     if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \
>   done; \
> else :; fi && \
> cd "$am__cwd"; \
> if /bin/sh /h/j/w/co/automake/tests/txinfo21.dir/missing --run makeinfo   -I . \
>  -o main.info main.texi; \
> then \
>   rc=0; \
>   CDPATH="${ZSH_VERSION+.}:" && cd .; \
> else \
>   rc=$?; \
>   CDPATH="${ZSH_VERSION+.}:" && cd . && \
>   $restore $backupdir/* `echo "./main.info" | sed 's|[^/]*$||'`; \
> fi; \
> rm -rf $backupdir; exit $rc
> restore=: && backupdir=".am$$" && \
> am__cwd=`pwd` && CDPATH="${ZSH_VERSION+.}:" && cd . && \
> rm -rf $backupdir && mkdir $backupdir && \
> if (/bin/sh /h/j/w/co/automake/tests/txinfo21.dir/missing --run makeinfo --version) >/dev/null 2>&1; then \
>   for f in sub/main2.info sub/main2.info-[0-9] sub/main2.info-[0-9][0-9] sub/main2.i[0-9] sub/main2.i[0-9][0-9]; do \
>     if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \
>   done; \
> else :; fi && \
> cd "$am__cwd"; \
> if /bin/sh /h/j/w/co/automake/tests/txinfo21.dir/missing --run makeinfo   -I sub -I ./sub \
>  -o sub/main2.info ./sub/main2.texi; \
> then \
>   rc=0; \
>   CDPATH="${ZSH_VERSION+.}:" && cd .; \
> else \
>   rc=$?; \
>   CDPATH="${ZSH_VERSION+.}:" && cd . && \
>   $restore $backupdir/* `echo "./sub/main2.info" | sed 's|[^/]*$||'`; \
> fi; \
> rm -rf $backupdir; exit $rc
> make[1]: Leaving directory `/h/j/w/co/automake/tests/txinfo21.dir'
> + sleep 2
> + make html
> Making html in rec
> make[1]: Entering directory `/h/j/w/co/automake/tests/txinfo21.dir/rec'
> rm -rf main3.htp
> if /bin/sh /h/j/w/co/automake/tests/txinfo21.dir/missing --run makeinfo --html   -I . \
>  -o main3.htp main3.texi; \
> then \
>   rm -rf main3.html; \
>   if test ! -d main3.htp && test -d main3; then \
>     mv main3 main3.html; else mv main3.htp main3.html; fi; \
> else \
>   if test ! -d main3.htp && test -d main3; then \
>     rm -rf main3; else rm -Rf main3.htp main3.html; fi; \
>   exit 1; \
> fi
> make[1]: Leaving directory `/h/j/w/co/automake/tests/txinfo21.dir/rec'
> make[1]: Entering directory `/h/j/w/co/automake/tests/txinfo21.dir'
> rm -rf main.htp
> if /bin/sh /h/j/w/co/automake/tests/txinfo21.dir/missing --run makeinfo --html   -I . \
>  -o main.htp main.texi; \
> then \
>   rm -rf main.html; \
>   if test ! -d main.htp && test -d main; then \
>     mv main main.html; else mv main.htp main.html; fi; \
> else \
>   if test ! -d main.htp && test -d main; then \
>     rm -rf main; else rm -Rf main.htp main.html; fi; \
>   exit 1; \
> fi
> rm -rf sub/main2.htp
> if /bin/sh /h/j/w/co/automake/tests/txinfo21.dir/missing --run makeinfo --html   -I sub -I ./sub \
>  -o sub/main2.htp `test -f 'sub/main2.texi' || echo './'`sub/main2.texi; \
> then \
>   rm -rf sub/main2.html; \
>   if test ! -d sub/main2.htp && test -d sub/main2; then \
>     mv sub/main2 sub/main2.html; else mv sub/main2.htp sub/main2.html; fi; \
> else \
>   if test ! -d sub/main2.htp && test -d sub/main2; then \
>     rm -rf sub/main2; else rm -Rf sub/main2.htp sub/main2.html; fi; \
>   exit 1; \
> fi
> make[1]: Leaving directory `/h/j/w/co/automake/tests/txinfo21.dir'
> + test -d main.html
> + test -d sub/main2.html
> + test -d rec/main3.html
> + is_newest main.html main.texi
> ++ find main.html main.texi -newer main.html
> + is_newest_files=main.html/index.html
> + test -z main.html/index.html
> + exit_status=1
> + set +e
> + cd /h/j/w/co/automake/tests
> + case $exit_status,$keep_testdirs in
> + test 0 '!=' 0
> + echo 'txinfo21: exit 1'
> txinfo21: exit 1
> + exit 1
> 
Ah, a failure I've introduced in 'maint' with commit `v1.11-360-ga370e2f'
"tests: fix spurious failure of txinfo21.test on FreeBSD".  It is due
to a limitation of the `is_newest' subroutine I hadn't thought about
(i.e., it doesn't work as expected on directories).  Should we hack
around this, or try to fix the `is_newest' subroutine instead?  I think
fixing `is_newest' is the best route. Anyway, I'll be AFK until tomorrow,
but then I'll give it a try (unless someone wants to beat me ;-)

Regards,
  Stefano