Subject: bug#14494: ./test-driver missing in t/distcheck-pr10470.sh

From: Peter Rosin <[email-masked]>
Date: Wed, 29 May 2013 15:33:10 +0200

On 2013-05-29 10:50, Stefano Lattarini wrote:
> On 05/29/2013 01:46 AM, Peter Rosin wrote:
>> Hi!
>>
> Hi Peter, thanks for the report (and the plethora of the following
> ones :-)
> 
>> On MSYS, t/distcheck-pr10470.sh from the master branch fails with this
>> log file:
>>
> Ah, this test is always skipped on POSIX systems, so I never got to update
> it when the default was switched from serial-tests to parallel-tests.  It
> has probably bit-rotten a little.

*snip*

> The same failure should be present also in the 'micro' branch (as I see you
> have already confirmed).  And it should be easily fixable by adding the
> "--add-missing" option to the Automake invocation.  Can you confirm?  If
> yes, feel free to push the obvious patch to fix the issue (a reference to
> the bug number in the commit message would be nice, as usual).

When I do that, I get further, but the test is still b0rked...

Cheers,
Peter

Running from installcheck: no
Test Protocol: none
PATH = /home/peda/automake/t/wrap:/home/peda/automake/t/ax:[elided]
++ pwd
/home/peda/automake/t/distcheck-pr10470.dir
+ mkdir foo.d
+ sh -c 'cd foo.d && sleep '\''4'\'''
+ sleep 1
+ rm -rf foo.d
rm: cannot remove directory `foo.d': Permission denied
+ echo AC_OUTPUT
+ cat
+ cat
+ chmod a+x foo.test
+ aclocal-1.13 -Werror
+ autoconf
+ automake-1.13 --foreign -Werror -Wall -a
parallel-tests: installing './test-driver'
+ ./configure
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
+ run_make -M -e FAIL distcheck
+ am__make_redirect_stdout=no
+ am__make_redirect_stderr=no
+ am__make_redirect_stdall=no
+ am__make_flags=
+ am__make_rc_exp=0
+ am_make_rc=0
+ test 4 -gt 0
+ case $1 in
+ am__make_redirect_stdall=yes
+ shift
+ test 3 -gt 0
+ case $1 in
+ am__make_rc_exp=FAIL
+ shift
+ shift
+ test 1 -gt 0
+ case $1 in
+ break
+ using_gmake
+ case $am__using_gmake in
+ make --version -v
+ grep GNU
GNU Make 3.81
+ am__using_gmake=yes
+ return 0
+ :
+ test x '!=' x
+ : exec make distcheck
+ set +x
+ test 0 -eq 253
+ test yes = yes
+ cat output
make  dist-gzip am__post_remove_distdir='@:'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir'
if test -d "distcheck-pr10470-1.0"; then find "distcheck-pr10470-1.0" -type d ! -perm -200 -exec chmod u+w {} ';' && rm -rf "distcheck-pr10470-1.0" || { sleep 5 && rm -rf "distcheck-pr10470-1.0"; }; else :; fi
test -d "distcheck-pr10470-1.0" || mkdir "distcheck-pr10470-1.0"
test -n "" \
	|| find "distcheck-pr10470-1.0" -type d ! -perm -755 \
		-exec chmod u+rwx,go+rx {} \; -o \
	  ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
	  ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
	  ! -type d ! -perm -444 -exec /bin/sh /home/peda/automake/t/distcheck-pr10470.dir/install-sh -c -m a+r {} {} \; \
	|| chmod -R a+r "distcheck-pr10470-1.0"
tardir=distcheck-pr10470-1.0 && ${TAR-tar} chof - "$tardir" | GZIP=--best gzip -c >distcheck-pr10470-1.0.tar.gz
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir'
if test -d "distcheck-pr10470-1.0"; then find "distcheck-pr10470-1.0" -type d ! -perm -200 -exec chmod u+w {} ';' && rm -rf "distcheck-pr10470-1.0" || { sleep 5 && rm -rf "distcheck-pr10470-1.0"; }; else :; fi
case 'distcheck-pr10470-1.0.tar.gz' in \
	*.tar.gz*) \
	  GZIP=--best gzip -dc distcheck-pr10470-1.0.tar.gz | ${TAR-tar} xf - ;;\
	*.tar.bz2*) \
	  bzip2 -dc distcheck-pr10470-1.0.tar.bz2 | ${TAR-tar} xf - ;;\
	*.tar.lz*) \
	  lzip -dc distcheck-pr10470-1.0.tar.lz | ${TAR-tar} xf - ;;\
	*.tar.xz*) \
	  xz -dc distcheck-pr10470-1.0.tar.xz | ${TAR-tar} xf - ;;\
	*.tar.Z*) \
	  uncompress -c distcheck-pr10470-1.0.tar.Z | ${TAR-tar} xf - ;;\
	*.shar.gz*) \
	  GZIP=--best gzip -dc distcheck-pr10470-1.0.shar.gz | unshar ;;\
	*.zip*) \
	  unzip distcheck-pr10470-1.0.zip ;;\
	esac
chmod -R a-w distcheck-pr10470-1.0
chmod u+w distcheck-pr10470-1.0
mkdir distcheck-pr10470-1.0/_build distcheck-pr10470-1.0/_inst
chmod a-w distcheck-pr10470-1.0
test -d distcheck-pr10470-1.0/_build || exit 0; \
	dc_install_base=`CDPATH="${ZSH_VERSION+.}:" && cd distcheck-pr10470-1.0/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
	  && dc_destdir="${TMPDIR-/tmp}/am-dc-$$/" \
	  && am__cwd=`pwd` \
	  && CDPATH="${ZSH_VERSION+.}:" && cd distcheck-pr10470-1.0/_build \
	  && ../configure --srcdir=.. --prefix="$dc_install_base" \
	     \
	     \
	  && make  \
	  && make  dvi \
	  && make  check \
	  && make  install \
	  && make  installcheck \
	  && make  uninstall \
	  && make  distuninstallcheck_dir="$dc_install_base" \
	        distuninstallcheck \
	  && chmod -R a-w "$dc_install_base" \
	  && ({ \
	       (cd ../.. && umask 077 && mkdir "$dc_destdir") \
	       && make  DESTDIR="$dc_destdir" install \
	       && make  DESTDIR="$dc_destdir" uninstall \
	       && make  DESTDIR="$dc_destdir" \
	            distuninstallcheck_dir="$dc_destdir" distuninstallcheck; \
	      } || { rm -rf "$dc_destdir"; exit 1; }) \
	  && rm -rf "$dc_destdir" \
	  && make  dist \
	  && rm -rf distcheck-pr10470-1.0.tar.gz \
	  && make  distcleancheck \
	  && cd "$am__cwd" \
	  || exit 1
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Nothing to be done for `dvi'.
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make  check-TESTS
make[2]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[3]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
PASS: foo.test
make[4]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[4]: Nothing to be done for `all'.
make[4]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
============================================================================
Testsuite summary for distcheck-pr10470 1.0
============================================================================
# TOTAL: 1
# PASS:  1
# SKIP:  0
# XFAIL: 0
# FAIL:  0
# XPASS: 0
# ERROR: 0
============================================================================
make[3]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[2]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[2]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Nothing to be done for `installcheck'.
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Nothing to be done for `uninstall'.
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[2]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Nothing to be done for `uninstall'.
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make  dist-gzip am__post_remove_distdir='@:'
make[2]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
if test -d "distcheck-pr10470-1.0"; then find "distcheck-pr10470-1.0" -type d ! -perm -200 -exec chmod u+w {} ';' && rm -rf "distcheck-pr10470-1.0" || { sleep 5 && rm -rf "distcheck-pr10470-1.0"; }; else :; fi
test -d "distcheck-pr10470-1.0" || mkdir "distcheck-pr10470-1.0"
test -n "" \
	|| find "distcheck-pr10470-1.0" -type d ! -perm -755 \
		-exec chmod u+rwx,go+rx {} \; -o \
	  ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
	  ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
	  ! -type d ! -perm -444 -exec /bin/sh /home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/install-sh -c -m a+r {} {} \; \
	|| chmod -R a+r "distcheck-pr10470-1.0"
tardir=distcheck-pr10470-1.0 && ${TAR-tar} chof - "$tardir" | GZIP=--best gzip -c >distcheck-pr10470-1.0.tar.gz
make[2]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
if test -d "distcheck-pr10470-1.0"; then find "distcheck-pr10470-1.0" -type d ! -perm -200 -exec chmod u+w {} ';' && rm -rf "distcheck-pr10470-1.0" || { sleep 5 && rm -rf "distcheck-pr10470-1.0"; }; else :; fi
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
make[1]: Entering directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
test -z "foo.log" || rm -f foo.log
test -z "foo.trs" || rm -f foo.trs
test -z "test-suite.log" || rm -f test-suite.log
test -z "" || rm -f 
test . = ".." || test -z "" || rm -f 
rm -f config.status config.cache config.log configure.lineno config.status.lineno
rm -f Makefile
find: `./foo.log': Permission denied
make[1]: Leaving directory `/home/peda/automake/t/distcheck-pr10470.dir/distcheck-pr10470-1.0/_build'
if test -d "distcheck-pr10470-1.0"; then find "distcheck-pr10470-1.0" -type d ! -perm -200 -exec chmod u+w {} ';' && rm -rf "distcheck-pr10470-1.0" || { sleep 5 && rm -rf "distcheck-pr10470-1.0"; }; else :; fi
find: `distcheck-pr10470-1.0/_build/foo.log': Permission denied
=======================================================
distcheck-pr10470-1.0 archives ready for distribution: 
distcheck-pr10470-1.0.tar.gz
=======================================================
+ case $am__make_rc_exp in
+ test 0 -gt 0
+ return 1
+ am_exit_trap 1
+ exit_status=1
+ set +e
+ cd /home/peda/automake
+ test none = tap
+ case $am_explicit_skips in
+ test 1 -eq 0
+ keep_testdirs=yes
+ am_keeping_testdirs
+ case $keep_testdirs in
+ return 0
+ set +x
distcheck-pr10470: exit 1