aboutsummaryrefslogtreecommitdiff
path: root/config-ml.in
diff options
context:
space:
mode:
authorPaolo Bonzini <bonzini@gnu.org>2007-11-29 15:36:39 +0000
committerPaolo Bonzini <bonzini@gnu.org>2007-11-29 15:36:39 +0000
commit6ac84f65c22563675d0c3153db167db8f99df6f9 (patch)
tree4624245b9f5f72deee6b8887f7c8f5e5be46e463 /config-ml.in
parent350cc38db21f1cd651a6d46687542a0fce5e0303 (diff)
downloadbinutils-6ac84f65c22563675d0c3153db167db8f99df6f9.zip
binutils-6ac84f65c22563675d0c3153db167db8f99df6f9.tar.gz
binutils-6ac84f65c22563675d0c3153db167db8f99df6f9.tar.bz2
2007-11-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config-ml.in: Robustify against white space in absolute file names.
Diffstat (limited to 'config-ml.in')
-rw-r--r--config-ml.in29
1 files changed, 17 insertions, 12 deletions
diff --git a/config-ml.in b/config-ml.in
index cc9cf66..9adc9e0 100644
--- a/config-ml.in
+++ b/config-ml.in
@@ -1,8 +1,8 @@
# Configure fragment invoked in the post-target section for subdirs
# wanting multilib support.
#
-# Copyright (C) 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
-# Free Software Foundation, Inc.
+# Copyright (C) 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005, 2006, 2007 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -540,7 +540,7 @@ multi-do:
else \
rootpre=`${PWD_COMMAND}`/; export rootpre; \
srcrootpre=`cd $(srcdir); ${PWD_COMMAND}`/; export srcrootpre; \
- lib=`echo $${rootpre} | sed -e 's,^.*/\([^/][^/]*\)/$$,\1,'`; \
+ lib=`echo "$${rootpre}" | sed -e 's,^.*/\([^/][^/]*\)/$$,\1,'`; \
compiler="$(CC)"; \
for i in `$${compiler} --print-multi-lib 2>/dev/null`; do \
dir=`echo $$i | sed -e 's/;.*$$//'`; \
@@ -586,8 +586,13 @@ multi-clean:
true; \
else \
lib=`${PWD_COMMAND} | sed -e 's,^.*/\([^/][^/]*\)$$,\1,'`; \
- for dir in Makefile $(MULTIDIRS); do \
- if [ -f ../$${dir}/$${lib}/Makefile ]; then \
+ for dir in : $(MULTIDIRS); do \
+ test $$dir != : || continue; \
+EOF
+cat >>Multi.tem <<EOF
+ if [ -f ../\$\${dir}/\$\${lib}/${Makefile} ]; then \\
+EOF
+cat >>Multi.tem <<\EOF
if (cd ../$${dir}/$${lib}; $(MAKE) $(FLAGS_TO_PASS) $(DO)); \
then true; \
else exit 1; \
@@ -605,7 +610,7 @@ mv Makefile.tem ${Makefile}
fi # ${ml_toplevel_p} = yes
if [ "${ml_verbose}" = --verbose ]; then
- echo "Adding multilib support to Makefile in ${ml_realsrcdir}"
+ echo "Adding multilib support to ${Makefile} in ${ml_realsrcdir}"
if [ "${ml_toplevel_p}" = yes ]; then
echo "multidirs=${multidirs}"
fi
@@ -696,7 +701,7 @@ if [ -n "${multidirs}" ] && [ -z "${ml_norecursion}" ]; then
fi
ml_origdir=`${PWDCMD-pwd}`
- ml_libdir=`echo $ml_origdir | sed -e 's,^.*/,,'`
+ ml_libdir=`echo "$ml_origdir" | sed -e 's,^.*/,,'`
# cd to top-level-build-dir/${with_target_subdir}
cd ..
@@ -732,7 +737,7 @@ if [ -n "${multidirs}" ] && [ -z "${ml_norecursion}" ]; then
case ${srcdir} in
".")
- echo Building symlink tree in `${PWDCMD-pwd}`/${ml_dir}/${ml_libdir}
+ echo "Building symlink tree in `${PWDCMD-pwd}`/${ml_dir}/${ml_libdir}"
if [ "${with_target_subdir}" != "." ]; then
ml_unsubdir="../"
else
@@ -740,7 +745,7 @@ if [ -n "${multidirs}" ] && [ -z "${ml_norecursion}" ]; then
fi
(cd ${ml_dir}/${ml_libdir};
../${dotdot}${ml_unsubdir}symlink-tree ../${dotdot}${ml_unsubdir}${ml_libdir} "")
- if [ -f ${ml_dir}/${ml_libdir}/Makefile ]; then
+ if [ -f ${ml_dir}/${ml_libdir}/${Makefile} ]; then
if [ x"${MAKE}" = x ]; then
(cd ${ml_dir}/${ml_libdir}; make distclean)
else
@@ -797,7 +802,7 @@ if [ -n "${multidirs}" ] && [ -z "${ml_norecursion}" ]; then
else
# Create a regular expression that matches any string as long
# as ML_POPDIR.
- popdir_rx=`echo ${ML_POPDIR} | sed 's,.,.,g'`
+ popdir_rx=`echo "${ML_POPDIR}" | sed 's,.,.,g'`
CC_=
for arg in ${CC}; do
case $arg in
@@ -901,11 +906,11 @@ if [ -n "${multidirs}" ] && [ -z "${ml_norecursion}" ]; then
exit 1
fi
- cd ${ML_POPDIR}
+ cd "${ML_POPDIR}"
done
- cd ${ml_origdir}
+ cd "${ml_origdir}"
fi
fi # ${ml_toplevel_p} = yes