Tag
Hash :
bf7ab094
Author :
Date :
2004-05-22T07:19:37
Check directory names for unportable names. Shaking the code to check this also led to the removal of the no-"/"-in-SUBDIRS restriction, and a fix to _do_recursive_traversal. * automake.in (check_directory): New function extracted from handle_subdirs, and augmented to check for reserved W32/DOS name. (check_directories_in_var): New function. (handle_subdirs): Call check_directories_in_var. Doing so also suppress the restriction that SUBDIRS should not contain slashes. (scan_autoconf_traces) <AC_CONFIG_AUX_DIR>: Call check_directory to ensure the argument exists and is safe. * doc/automake.texi (Top level): Do not say that src/subdir cannot be put in SUBDIRS. (Dist): Mention that distdir and top_distdir can be absolute. * lib/Automake/Variable.pm (_do_recursive_traversal) Support undefined $fun_collect, and fix two bugs introduced with skip_ac_subst on 2004-03-07. * lib/am/distdir.am (distdir): Use absolute distdir and top_distdir when recursing, because we can no longer prepend only `..' in case of SUBDIRS with `/'. * tests/auxdir4.test, tests/subdir9.test: New files. * tests/Makefile.am (TESTS): Add auxdir4.test. * tests/cond2.test, tests/subdir7.test: Augment to check location in diagnostics.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
#! /bin/sh
# Copyright (C) 2004 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., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
# Make sure we diagnose dangerous AC_CONFIG_AUX_DIR names.
. ./defs || exit 1
set -e
cat >configure.in <<'END'
AC_INIT([auxdir4], [1.0])
AC_CONFIG_AUX_DIR([aux])
AM_INIT_AUTOMAKE
AC_CONFIG_FILES([Makefile])
END
: > Makefile.am
$ACLOCAL
AUTOMAKE_fails
grep 'configure.in:2:.*aux.*does not exist' stderr
grep 'configure.in:2:.*aux.*W32' stderr