mirror of
git://git.sv.gnu.org/autoconf
synced 2025-02-11 13:51:04 +08:00
* tests/atlocal.in (func_sanitize_file_name) (func_sanitize_dir_name): New shell functions. * tests/tools.at (autom4te and whitespace in file names) (autotools and whitespace in file names): Use them. * tests/torture.at (AC_CONFIG_FILES, HEADERS, LINKS and COMMANDS): Cover more potentially problemtic file names. Use the new functions. Signed-off-by: Benoit Sigoure <tsuna@lrde.epita.fr> Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
53 lines
1.7 KiB
Bash
53 lines
1.7 KiB
Bash
# -*- shell-script -*-
|
|
# @configure_input@
|
|
# Configurable variable values for Autoconf test suite.
|
|
|
|
# Copyright (C) 2000, 2001, 2005 Free Software Foundation, Inc.
|
|
#
|
|
# This program 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 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
PERL='@PERL@'
|
|
GREP='@GREP@'
|
|
EGREP='@EGREP@'
|
|
SED='@SED@'
|
|
|
|
# We need to know if sh -n is ok.
|
|
ac_cv_sh_n_works='@ac_cv_sh_n_works@'
|
|
|
|
# Check whether the underlying system can manage some unusual
|
|
# symbols in file names.
|
|
unsupported_fs_chars=
|
|
for c in '\\' '"' '<' '>' '*' '?' '|'
|
|
do
|
|
touch "t$c" 2>/dev/null
|
|
test -f "t$c" && rm -f "t$c" && continue
|
|
# $c cannot be used in a file name.
|
|
unsupported_fs_chars=$unsupported_fs_chars$c
|
|
done
|
|
if test -z "$unsupported_fs_chars"; then
|
|
func_sanitize_file_name () { echo "$@"; }
|
|
else
|
|
func_sanitize_file_name () { echo "$@" | tr -d "$unsupported_fs_chars"; }
|
|
fi
|
|
|
|
# Can we create directories with trailing whitespaces in their name?
|
|
rm -rf 'tdir /'
|
|
mkdir 'tdir ' && touch 'tdir /tfile' 2>/dev/null
|
|
if test -f 'tdir /tfile'; then
|
|
func_sanitize_dir_name () { echo "$@"; }
|
|
rm -rf 'tdir /'
|
|
else
|
|
func_sanitize_dir_name () { echo "$@" | sed 's/ *$//'; }
|
|
fi
|