+2006-10-15 Hans Ulrich Niedermann <hun@n-dimensional.de>
+ Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ For PR automake/507:
+ * lib/am/distdir.am (distdir): filename-length-max check is not
+ done in sub-packages.
+ * doc/automake.texi (Options): Document this.
+ * tests/fn99subdir.test: New test.
+ * tests/Makefile.am: Update.
+ * THANKS: Update.
+
2006-10-14 Alfred M. Szmidt <ams@gnu.org> (tiny change)
* doc/automake.texi (Third-Party Makefiles): Fix typo.
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
am__remove_distdir=: \
+ am__skip_length_check=: \
distdir) \
|| exit 1; \
fi; \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r $(distdir)
- @if find $(distdir) -type f -print | \
+ @if test -z "$(am__skip_length_check)" && find $(distdir) -type f -print | \
grep '^...................................................................................................' 1>&2; then \
echo 'error: the above filenames are too long' 1>&2; \
exit 1; \
Gwenole Beauchesne gbeauchesne@mandrakesoft.com
H.J. Lu hjl@lucon.org
H.Merijn Brand h.m.brand@hccnet.nl
+Hans Ulrich Niedermann hun@n-dimensional.de
Harald Dunkel harald@CoWare.com
Harlan Stenn Harlan.Stenn@pfcs.com
He Li tippa000@yahoo.com
be portable in tarballs. See the @option{tar-v7} and @option{tar-ustar}
options below. This option should be used in the top-level
@file{Makefile.am} or as an argument of @code{AM_INIT_AUTOMAKE} in
-@file{configure.ac}, it will be ignored otherwise.
+@file{configure.ac}, it will be ignored otherwise. It will also be
+ignored in sub-packages of nested packages (@pxref{Subpackages}).
@item @option{no-define}
@cindex Option, @option{no-define}
-@set UPDATED 14 October 2006
+@set UPDATED 15 October 2006
@set UPDATED-MONTH October 2006
@set EDITION 1.9c
@set VERSION 1.9c
-@set UPDATED 14 October 2006
+@set UPDATED 15 October 2006
@set UPDATED-MONTH October 2006
@set EDITION 1.9c
@set VERSION 1.9c
## directory we have already cleared and might even have populated
## (e.g. shared AUX dir in the sub-package).
am__remove_distdir=: \
+## Disable filename length check:
+ am__skip_length_check=: \
distdir) \
|| exit 1; \
fi; \
! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r $(distdir)
if %?FILENAME_FILTER%
- @if find $(distdir) -type f -print | \
+ @if test -z "$(am__skip_length_check)" && find $(distdir) -type f -print | \
grep '^%FILENAME_FILTER%' 1>&2; then \
echo 'error: the above filenames are too long' 1>&2; \
exit 1; \
f90only.test \
flibs.test \
fn99.test \
+fn99subdir.test \
fnoc.test \
fo.test \
fort1.test \
f90only.test \
flibs.test \
fn99.test \
+fn99subdir.test \
fnoc.test \
fo.test \
fort1.test \
--- /dev/null
+#! /bin/sh
+# Copyright (C) 2006 Free Software Foundation, Inc.
+#
+# This file is part of GNU Automake.
+#
+# GNU Automake is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# GNU Automake is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Automake; see the file COPYING. If not, write to
+# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+# Boston, MA 02110-1301, USA.
+
+# PR 507: Check the filename-length-max=99 option
+# in conjunction with AC_CONFIG_SUBDIRS.
+
+. ./defs || exit 1
+
+set -e
+
+# The name is so that 99 is exactly hit (including final \0).
+subdirname='cnfsubdir'
+
+cat >>configure.in <<END
+AC_CONFIG_SUBDIRS([${subdirname}])
+AC_OUTPUT
+END
+
+cat >Makefile.am <<END
+AUTOMAKE_OPTIONS = filename-length-max=99
+SUBDIRS = ${subdirname}
+END
+
+mkdir ${subdirname} || exit 1
+
+cat >> ${subdirname}/configure.in <<EOF
+AC_INIT([${subdirname}], [1.0])
+AM_INIT_AUTOMAKE
+AC_CONFIG_FILES([Makefile])
+AC_OUTPUT
+EOF
+
+cat >${subdirname}/Makefile.am <<'END'
+AUTOMAKE_OPTIONS = filename-length-max=99
+EXTRA_DIST = 12345678
+END
+
+(cd ${subdirname}; for i in 1 2 3 4 5 6 7 8
+do
+ mkdir -p 12345678 || exit 77
+ cd 12345678
+ touch x
+done)
+
+for init_dir in ${subdirname} .; do
+ (
+ cd ${init_dir} || exit 1
+ $ACLOCAL
+ $AUTOCONF
+ $AUTOMAKE
+ ) || exit 1
+done
+./configure
+$MAKE distcheck
+
+(cd ${subdirname}; for i in 1 2 3 4 5 6 7 8 9
+do
+ mkdir -p 12345678 || exit 77
+ cd 12345678
+ touch x
+done)
+
+$MAKE dist 2>stderr && exit 1
+cat stderr
+grep 'filenames are too long' stderr
+test 1 = `grep 12345678 stderr | wc -l`
+: