At the end of this log, you'll see lines like this: cp: cannot create regular file \ `blocksort-1.4.2/libopts/.deps/save.Plo': Permission denied
It used to work, of course, but I was persuaded to "upgrade" automake/autoconf/libtool again. Silly me. I should learn. It's as aggravating as heck. I do have the Makefile.am magic line: distcleancheck_listfiles = \ find . -type f -exec 'test -f $(srcdir)/{} || echo {} ;' so I suppose there's new magic I need. This is derived from a very small project, if this helps: http://autogen.sf.net/data/blocksort-1.4.2.tar.gz =================================================================== $ make distcheck { test ! -d blocksort-1.4.2 || { find blocksort-1.4.2 -type d ! -perm -200 -exec chmod u+w {} ';' && rm -fr blocksort-1.4.2; }; } mkdir blocksort-1.4.2 /bin/sh ./cfg/mkinstalldirs blocksort-1.4.2/cfg mkdir -p -- blocksort-1.4.2/cfg list=''; for subdir in $list; do \ if test "$subdir" = .; then :; else \ test -d blocksort-1.4.2/$subdir \ || mkdir blocksort-1.4.2/$subdir \ || exit 1; \ (cd $subdir && \ make \ top_distdir="." \ distdir=../blocksort-1.4.2/$subdir \ distdir) \ || exit 1; \ fi; \ done find blocksort-1.4.2 -type d ! -perm -777 -exec chmod a+rwx {} \; -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/bkorb/ag/bs/cfg/install-sh -c -m a+r {} {} \; \ || chmod -R a+r blocksort-1.4.2 /bin/sh /home/bkorb/ag/bs/cfg/missing --run tar chof - blocksort-1.4.2 | GZIP=--best gzip -c >blocksort-1.4.2.tar.gz { test ! -d blocksort-1.4.2 || { find blocksort-1.4.2 -type d ! -perm -200 -exec chmod u+w {} ';' && rm -fr blocksort-1.4.2; }; } { test ! -d blocksort-1.4.2 || { find blocksort-1.4.2 -type d ! -perm -200 -exec chmod u+w {} ';' && rm -fr blocksort-1.4.2; }; } GZIP=--best gunzip -c blocksort-1.4.2.tar.gz | /bin/sh /home/bkorb/ag/bs/cfg/missing --run tar xf - chmod -R a-w blocksort-1.4.2; chmod a+w blocksort-1.4.2 mkdir blocksort-1.4.2/=build mkdir blocksort-1.4.2/=inst chmod a-w blocksort-1.4.2 dc_install_base=`CDPATH="${ZSH_VERSION+.}:" && cd blocksort-1.4.2/=inst && pwd` \ && dc_destdir="${TMPDIR-/tmp}/am-dc-$$/" \ && cd blocksort-1.4.2/=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 ../.. && /bin/sh ./cfg/mkinstalldirs "$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-gzip \ && rm -f blocksort-1.4.2.tar.gz \ && make distcleancheck checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking target system type... i686-pc-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking if malloc debugging is wanted... no checking for a BSD-compatible install... /usr/bin/install -c checking for style of include used by make... GNU checking for gcc... gcc checking for C compiler default output... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... 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 ANSI C... none needed checking dependency style of gcc... gcc checking for ld used by GCC... /usr/i486-suse-linux/bin/ld checking if the linker (/usr/i486-suse-linux/bin/ld) is GNU ld... yes checking for /usr/i486-suse-linux/bin/ld option to reload object files... -r checking for BSD-compatible nm... /usr/bin/nm -B checking for a sed that does not truncate output... /usr/bin/sed checking whether ln -s works... yes checking how to recognise dependent libraries... pass_all checking command to parse /usr/bin/nm -B output... ok checking how to run the C preprocessor... gcc -E checking for egrep... grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking dlfcn.h usability... yes checking dlfcn.h presence... yes checking for dlfcn.h... yes checking for ranlib... ranlib checking for strip... strip checking for objdir... .libs checking for gcc option to produce PIC... -fPIC checking if gcc PIC flag -fPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.lo... yes checking if gcc supports -fno-rtti -fno-exceptions... yes checking whether the linker (/usr/i486-suse-linux/bin/ld) supports shared libraries... yes checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking dynamic linker characteristics... GNU/Linux ld.so checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking whether -lc should be explicitly linked in... no creating libtool checking for gcc... (cached) gcc checking whether we are using the GNU C compiler... (cached) yes checking whether gcc accepts -g... (cached) yes checking for gcc option to accept ANSI C... (cached) none needed checking dependency style of gcc... (cached) gcc checking whether ln -s works... yes checking for ANSI C header files... (cached) yes checking for unistd.h... (cached) yes checking sys/param.h usability... yes checking sys/param.h presence... yes checking for sys/param.h... yes checking for string.h... (cached) yes checking whether sys/types.h defines makedev... yes checking for ANSI C header files... (cached) yes checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking errno.h usability... yes checking errno.h presence... yes checking for errno.h... yes checking for unistd.h... (cached) yes checking fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking for memory.h... (cached) yes checking sys/file.h usability... yes checking sys/file.h presence... yes checking for sys/file.h... yes checking for sys/param.h... (cached) yes checking error.h usability... yes checking error.h presence... yes checking for error.h... yes checking for sys/types.h... (cached) yes checking libgen.h usability... yes checking libgen.h presence... yes checking for libgen.h... yes checking for sys/stat.h... (cached) yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking setjmp.h usability... yes checking setjmp.h presence... yes checking for setjmp.h... yes checking for stdlib.h... (cached) yes checking stdarg.h usability... yes checking stdarg.h presence... yes checking for stdarg.h... yes checking for string.h... (cached) yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking dirent.h usability... yes checking dirent.h presence... yes checking for dirent.h... yes checking sys/procset.h usability... no checking sys/procset.h presence... no checking for sys/procset.h... no checking for pathfind in -lgen... no checking whether autoopts-config can be found... checking whether autoopts-config is specified... autoopts-config -L/usr/local/lib -lopts configure: creating ./config.status config.status: creating libopts/Makefile config.status: creating Makefile config.status: creating config.h config.status: executing depfiles commands config.status: executing stamp-h commands make[1]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make all-recursive make[2]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[3]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' source='blocksort.c' object='blocksort-blocksort.o' libtool=no \ depfile='.deps/blocksort-blocksort.Po' tmpdepfile='.deps/blocksort-blocksort.TPo' \ depmode=gcc /bin/sh ../cfg/depcomp \ gcc -DHAVE_CONFIG_H -I. -I.. -I. -I/usr/local/include -g -O2 -c -o blocksort-blocksort.o `test -f 'blocksort.c' || echo '../'`blocksort.c source='xmalloc.c' object='blocksort-xmalloc.o' libtool=no \ depfile='.deps/blocksort-xmalloc.Po' tmpdepfile='.deps/blocksort-xmalloc.TPo' \ depmode=gcc /bin/sh ../cfg/depcomp \ gcc -DHAVE_CONFIG_H -I. -I.. -I. -I/usr/local/include -g -O2 -c -o blocksort-xmalloc.o `test -f 'xmalloc.c' || echo '../'`xmalloc.c source='bsort-opt.c' object='blocksort-bsort-opt.o' libtool=no \ depfile='.deps/blocksort-bsort-opt.Po' tmpdepfile='.deps/blocksort-bsort-opt.TPo' \ depmode=gcc /bin/sh ../cfg/depcomp \ gcc -DHAVE_CONFIG_H -I. -I.. -I. -I/usr/local/include -g -O2 -c -o blocksort-bsort-opt.o `test -f 'bsort-opt.c' || echo '../'`bsort-opt.c /bin/sh ./libtool --mode=link gcc -g -O2 -o blocksort blocksort-blocksort.o blocksort-xmalloc.o blocksort-bsort-opt.o -L/usr/local/lib -lopts mkdir .libs gcc -g -O2 -o blocksort blocksort-blocksort.o blocksort-xmalloc.o blocksort-bsort-opt.o -L/usr/local/lib /usr/local/lib/libopts.so -lm -ldl -Wl,--rpath -Wl,/usr/local/lib -Wl,--rpath -Wl,/usr/local/lib make[3]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Nothing to be done for `dvi-am'. make[2]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Nothing to be done for `check-am'. make[2]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[3]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' /bin/sh ../cfg/mkinstalldirs /home/bkorb/ag/bs/blocksort-1.4.2/=inst/bin mkdir -p -- /home/bkorb/ag/bs/blocksort-1.4.2/=inst/bin /bin/sh ./libtool --mode=install /usr/bin/install -c blocksort /home/bkorb/ag/bs/blocksort-1.4.2/=inst/bin/blocksort /usr/bin/install -c blocksort /home/bkorb/ag/bs/blocksort-1.4.2/=inst/bin/blocksort /bin/sh ../cfg/mkinstalldirs /home/bkorb/ag/bs/blocksort-1.4.2/=inst/man/man1 mkdir -p -- /home/bkorb/ag/bs/blocksort-1.4.2/=inst/man/man1 /usr/bin/install -c -m 644 ../blocksort.1 /home/bkorb/ag/bs/blocksort-1.4.2/=inst/man/man1/blocksort.1 make[3]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Nothing to be done for `installcheck-am'. make[2]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' rm -f /home/bkorb/ag/bs/blocksort-1.4.2/=inst/bin/blocksort rm -f /home/bkorb/ag/bs/blocksort-1.4.2/=inst/man/man1/blocksort.1 make[2]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' cd /home/bkorb/ag/bs/blocksort-1.4.2/=inst \ && test `find . -type f -print | wc -l` -le 1 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n ""; then \ echo " (check DESTDIR support)"; \ fi ; \ find . -type f -print ; \ exit 1; } >&2 make[1]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' mkdir -p -- /tmp/am-dc-21298/ make[1]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[3]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' /bin/sh ../cfg/mkinstalldirs /tmp/am-dc-21298//home/bkorb/ag/bs/blocksort-1.4.2/=inst/bin mkdir -p -- /tmp/am-dc-21298//home/bkorb/ag/bs/blocksort-1.4.2/=inst/bin /bin/sh ./libtool --mode=install /usr/bin/install -c blocksort /tmp/am-dc-21298//home/bkorb/ag/bs/blocksort-1.4.2/=inst/bin/blocksort /usr/bin/install -c blocksort /tmp/am-dc-21298//home/bkorb/ag/bs/blocksort-1.4.2/=inst/bin/blocksort /bin/sh ../cfg/mkinstalldirs /tmp/am-dc-21298//home/bkorb/ag/bs/blocksort-1.4.2/=inst/man/man1 mkdir -p -- /tmp/am-dc-21298//home/bkorb/ag/bs/blocksort-1.4.2/=inst/man/man1 /usr/bin/install -c -m 644 ../blocksort.1 /tmp/am-dc-21298//home/bkorb/ag/bs/blocksort-1.4.2/=inst/man/man1/blocksort.1 make[3]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[2]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' rm -f /tmp/am-dc-21298//home/bkorb/ag/bs/blocksort-1.4.2/=inst/bin/blocksort rm -f /tmp/am-dc-21298//home/bkorb/ag/bs/blocksort-1.4.2/=inst/man/man1/blocksort.1 make[2]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' cd /tmp/am-dc-21298/ \ && test `find . -type f -print | wc -l` -le 1 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "/tmp/am-dc-21298/"; then \ echo " (check DESTDIR support)"; \ fi ; \ find . -type f -print ; \ exit 1; } >&2 make[1]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make[1]: Entering directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' { test ! -d blocksort-1.4.2 || { find blocksort-1.4.2 -type d ! -perm -200 -exec chmod u+w {} ';' && rm -fr blocksort-1.4.2; }; } mkdir blocksort-1.4.2 /bin/sh ../cfg/mkinstalldirs blocksort-1.4.2/cfg mkdir -p -- blocksort-1.4.2/cfg cp: cannot create regular file `blocksort-1.4.2/libopts/.deps/save.Plo': Permission denied cp: cannot create regular file `blocksort-1.4.2/libopts/.deps/autoopts.Plo': Permission denied cp: cannot create regular file `blocksort-1.4.2/libopts/.deps/version.Plo': Permission denied cp: cannot create regular file `blocksort-1.4.2/libopts/.deps/streqvcmp.Plo': Permission denied cp: cannot create regular file `blocksort-1.4.2/libopts/.deps/stack.Plo': Permission denied cp: cannot create regular file `blocksort-1.4.2/libopts/.deps/usage.Plo': Permission denied cp: cannot create regular file `blocksort-1.4.2/libopts/.deps/boolean.Plo': Permission denied cp: cannot create regular file `blocksort-1.4.2/libopts/.deps/enumeration.Plo': Permission denied cp: cannot create regular file `blocksort-1.4.2/libopts/.deps/numeric.Plo': Permission denied cp: cannot create regular file `blocksort-1.4.2/libopts/.deps/pgusage.Plo': Permission denied cp: cannot create regular file `blocksort-1.4.2/libopts/.deps/restore.Plo': Permission denied cp: cannot create regular file `blocksort-1.4.2/libopts/Makefile': Permission denied make[1]: *** [distdir] Error 1 make[1]: Leaving directory `/home/bkorb/ag/bs/blocksort-1.4.2/=build' make: *** [distcheck] Error 2