#456632 automake: creates a readonly directory and then tries to modify it

#456632#5
Date:
2007-12-17 06:21:58 UTC
From:
To:
The basic problem is that "make distcheck" fails.  I believe I can see
why, though I am not certain.

The .texi.info implicit make rule creates a backup directory within
the source directory.  However, the implementation of "make distcheck"
unpacks the source distribution and then makes the directories
read-only before performing the build.  Since you cannot create a
subdirectory in a read-only directory, "make installcheck" always
fails at the point it tries to build the info file.  Here is the
transcript:

chmod -R a-w CSSC-1.0.2-CVS; chmod a+w CSSC-1.0.2-CVS
mkdir CSSC-1.0.2-CVS/_build
mkdir CSSC-1.0.2-CVS/_inst
chmod a-w CSSC-1.0.2-CVS
dc_install_base=`CDPATH="${ZSH_VERSION+.}:" && cd CSSC-1.0.2-CVS/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
	  && dc_destdir="${TMPDIR-/tmp}/am-dc-$$/" \
	  && cd CSSC-1.0.2-CVS/_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 CSSC-1.0.2-CVS.tar.gz \
	  && make  distcleancheck
checking for a BSD-compatible install... /usr/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 if binary file support should be disabled... no
WARNING
WARNING This was assumed because you did not specify either
WARNING --enable-binary or --disable-binary.
WARNING
checking for required SCCS file line length limits... no limit
checking for a BSD-compatible install... /usr/bin/install -c
checking for gcc... gcc
checking for C compiler default output file name... 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 ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for library containing strerror... none required
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/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 minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking how to run the C preprocessor... gcc -E
checking how to run the C++ preprocessor... g++ -E
checking for ranlib... ranlib
checking if you are using a broken version of glibc with a version of GCC (>=2.97) that doesn't like it... no
checking for uname... /bin/uname
checking for pr... /usr/bin/pr
checking for diff... /usr/bin/diff
checking for GNU diff... yes
checking for uncompress... uncompress
checking for ANSI C header files... (cached) yes
Start checking accessibility of C headers while compiling as C++
checking stdarg.h usability... yes
checking stdarg.h presence... yes
checking for stdarg.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking stdio.h usability... yes
checking stdio.h presence... yes
checking for stdio.h... yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking ctype.h usability... yes
checking ctype.h presence... yes
checking for ctype.h... yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
Done checking accessibility of C headers while compiling as C++
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking prototypes.h usability... no
checking prototypes.h presence... no
checking for prototypes.h... no
checking io.h usability... no
checking io.h presence... no
checking for io.h... no
checking process.h usability... no
checking process.h presence... no
checking for process.h... no
checking pwd.h usability... yes
checking pwd.h presence... yes
checking for pwd.h... yes
checking for unistd.h... (cached) yes
checking for sys/stat.h... (cached) yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking for sys/types.h... (cached) yes
checking sys/file.h usability... yes
checking sys/file.h presence... yes
checking for sys/file.h... yes
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for sys/wait.h that is POSIX.1 compatible... yes
checking whether stat file-mode macros are broken... no
checking string usability... yes
checking string presence... yes
checking for string... yes
checking for size_t... yes
checking for mode_t... yes
checking for pid_t... yes
checking for uid_t in sys/types.h... yes
checking for support for C++ exceptions... yes
checking for support for C++ "std" namespace... yes
checking for _POSIX_SAVED_IDS... yes
checking whether sys_siglist is declared... yes
checking return type of signal handlers... void
checking for abort... yes
checking for wait... yes
checking for symlink... yes
checking for readlink... yes
checking for unsetenv... yes
checking for fsetpos... yes
checking for fileno... yes
checking for fstat... yes
checking for sysconf... yes
checking for memchr... yes
checking for stat... yes
checking for getpwuid... yes
checking for getlogin... yes
checking for setreuid... yes
checking for pipe... yes
checking for spawn... no
checking for geteuid... yes
checking for getegid... yes
checking for strerror... yes
checking for remove... yes
checking for rename... yes
checking for strstr... yes
checking for AmigaOS target... no
checking for fork... yes
configure: creating ./config.status
config.status: creating config.h
config.status: executing depfiles commands
=== configuring in testutils (/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build/testutils)
configure: running /bin/sh ../../testutils/configure '--prefix=/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_inst'  --cache-file=/dev/null --srcdir=../../testutils
checking for a BSD-compatible install... /usr/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 for gcc... gcc
checking for C compiler default output file name... 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 ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for a BSD-compatible install... /usr/bin/install -c
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/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 stdarg.h usability... yes
checking stdarg.h presence... yes
checking for stdarg.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking stdio.h usability... yes
checking stdio.h presence... yes
checking for stdio.h... yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking for unistd.h... (cached) yes
checking for sys/stat.h... (cached) yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... 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 whether stat file-mode macros are broken... no
checking for symlink... yes
checking for readlink... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: executing depfiles commands
configure: creating ./config.status
config.status: creating version.cc
config.status: creating Makefile
config.status: creating sccsdiff.sh
config.status: creating bsd/Makefile
config.status: creating tests/Makefile
config.status: creating docs/Makefile
config.status: creating testutils/decompress_stdin.sh
config.status: creating testutils/Makefile
config.status: creating auxfiles/Makefile
config.status: creating auxfiles/CSSC.spec
config.status: creating sccs-cgi/Makefile
config.status: creating docs/config-info.texi
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
=== configuring in testutils (/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build/testutils)
configure: running /bin/sh ../../testutils/configure '--prefix=/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_inst'  --cache-file=/dev/null --srcdir=../../testutils
checking for a BSD-compatible install... /usr/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 for gcc... gcc
checking for C compiler default output file name... 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 ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking for a BSD-compatible install... /usr/bin/install -c
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/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 stdarg.h usability... yes
checking stdarg.h presence... yes
checking for stdarg.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking stdio.h usability... yes
checking stdio.h presence... yes
checking for stdio.h... yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking for unistd.h... (cached) yes
checking for sys/stat.h... (cached) yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... 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 whether stat file-mode macros are broken... no
checking for symlink... yes
checking for readlink... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: executing depfiles commands
make[1]: Entering directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build'
make  all-recursive
make[2]: Entering directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build'
Making all in bsd
make[3]: Entering directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build/bsd'
gcc -DHAVE_CONFIG_H -I. -I.. -I../../bsd  "-DPREFIX=\"/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_inst/libexec/cssc/\""   -g -O2 -MT sccs.o -MD -MP -MF .deps/sccs.Tpo -c -o sccs.o ../../bsd/sccs.c
mv -f .deps/sccs.Tpo .deps/sccs.Po
gcc  -g -O2   -o sccs sccs.o
make[3]: Leaving directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build/bsd'
Making all in docs
make[3]: Entering directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build/docs'
restore=: && backupdir=".am$$" && \
	am__cwd=`pwd` && cd ../../docs && \
	rm -rf $backupdir && mkdir $backupdir && \
	if (/bin/sh /home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/missing --run makeinfo --version) >/dev/null 2>&1; then \
	  for f in ../../docs/cssc.info ../../docs/cssc.info-[0-9] ../../docs/cssc.info-[0-9][0-9] ../../docs/cssc.i[0-9] ../../docs/cssc.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 /home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/missing --run makeinfo   -I ../../docs \
	 -o ../../docs/cssc.info ../../docs/cssc.texi; \
	then \
	  rc=0; \
	  cd ../../docs; \
	else \
	  rc=$?; \
	  cd ../../docs && \
	  $restore $backupdir/* `echo "./../../docs/cssc.info" | sed 's|[^/]*$||'`; \
	fi; \
	rm -rf $backupdir; exit $rc
mkdir: cannot create directory `.am12636': Permission denied
../../docs/cssc.texi: No such file or directory
make[3]: *** [../../docs/cssc.info] Error 1
make[3]: Leaving directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build/docs'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build'
make: *** [distcheck] Error 2
orbital:compile$ cat > _x
make[3]: Entering directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build/docs'
restore=: && backupdir=".am$$" && \
	am__cwd=`pwd` && cd ../../docs && \
	rm -rf $backupdir && mkdir $backupdir && \
	if (/bin/sh /home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/missing --run makeinfo --version) >/dev/null 2>&1; then \
	  for f in ../../docs/cssc.info ../../docs/cssc.info-[0-9] ../../docs/cssc.info-[0-9][0-9] ../../docs/cssc.i[0-9] ../../docs/cssc.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 /home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/missing --run makeinfo   -I ../../docs \
	 -o ../../docs/cssc.info ../../docs/cssc.texi; \
	then \
	  rc=0; \
	  cd ../../docs; \
	else \
	  rc=$?; \
	  cd ../../docs && \
	  $restore $backupdir/* `echo "./../../docs/cssc.info" | sed 's|[^/]*$||'`; \
	fi; \
	rm -rf $backupdir; exit $rc
mkdir: cannot create directory `.am12636': Permission denied
../../docs/cssc.texi: No such file or directory
make[3]: *** [../../docs/cssc.info] Error 1
make[3]: Leaving directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build/docs'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/james/source/GNU/CSSC/git/synced-repo/compile/CSSC-1.0.2-CVS/_build'
make: *** [distcheck] Error 2

#456632#10
Date:
2008-03-17 22:06:11 UTC
From:
To:
Here is a bug report corresponding to the Debian bug #456632 ( http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=456632 )

In automake 1.9 and 1.10, "make distcheck" tries to write in a directory is has itself put in readonly. This happens if a texinfo target has some depends. The generated rule is:
$(srcdir)/kaapi.info: kaapi.texi $(srcdir)/version.texi $(kaapi_TEXINFOS)
        ...

So, if $(kaapi_TEXINFOS) has generated files (AC_CONFIG files for examples), "make distcheck" will fails.

Here is in attachement a minimal example and the typescript of what I did to generate the error.

  This bug is really annoying for me. Whatever workaround would be welcome.

  Best regards
    Vincent
tar xvzf test.tar.gz
cd test
./bootstrap
mkdir build
cd build
../configure
make distcheck
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
CxYsWLBgwYIFCxYsWLDwh4P/AM/MrG4AUAAA

#456632#15
Date:
2008-03-17 22:06:11 UTC
From:
To:
Here is a bug report corresponding to the Debian bug #456632 ( http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=456632 )

In automake 1.9 and 1.10, "make distcheck" tries to write in a directory is has itself put in readonly. This happens if a texinfo target has some depends. The generated rule is:
$(srcdir)/kaapi.info: kaapi.texi $(srcdir)/version.texi $(kaapi_TEXINFOS)
        ...

So, if $(kaapi_TEXINFOS) has generated files (AC_CONFIG files for examples), "make distcheck" will fails.

Here is in attachement a minimal example and the typescript of what I did to generate the error.

  This bug is really annoying for me. Whatever workaround would be welcome.

  Best regards
    Vincent
tar xvzf test.tar.gz
cd test
./bootstrap
mkdir build
cd build
../configure
make distcheck
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
CxYsWLBgwYIFCxYsWLDwh4P/AM/MrG4AUAAA

#456632#20
Date:
2008-03-17 22:16:15 UTC
From:
To:
http://sources.redhat.com/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=automake&pr=528

In fact, this bug should be merged with 486 (I saw it too late).

  Best regards,
    Vincent

#456632#25
Date:
2008-03-17 21:40:08 UTC
From:
To:
I just hit the bug #456632. Note that this bug apply to automake 1.10
but also 1.9.

In automake 1.8, #296634 tell us that any texinfo files produce an
error when trying 'make distcheck'

In automake 1.0 and 1.10, this still happens if the texinfo has some
depends. The generated rule is:
$(srcdir)/kaapi.info: kaapi.texi $(srcdir)/version.texi $(kaapi_TEXINFOS)
	...

So, if $(kaapi_TEXINFOS) has generated files (AC_CONFIG files for
examples), "make distcheck" will fails.

Here is in attachement a minimal example and the typescript of what I
did to generate the error.



  This bug is really annoying for me. Whatever workaround would be
welcome.

  Best regards
    Vincent

#456632#30
Date:
2015-01-25 20:52:36 UTC
From:
To:
* Vincent Danjean (vdanjean.ml@free.fr) wrote:

Is this still a bug in the latest versions of automake?

#456632#35
Date:
2015-01-25 21:22:15 UTC
From:
To: