From 48a793425564864709adb3f51c7d503a865610c5 Mon Sep 17 00:00:00 2001 From: Zack Weinberg Date: Mon, 7 Apr 2003 05:34:50 +0000 Subject: [PATCH] mklibgcc.in: Use a here document to avoid running afoul of shells that generate control-A... * mklibgcc.in: Use a here document to avoid running afoul of shells that generate control-A from "echo \1". From-SVN: r65321 --- gcc/ChangeLog | 5 +++++ gcc/mklibgcc.in | 21 ++++++++++++++------- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ca209182bc0..0b7d3295119 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-04-06 Zack Weinberg + + * mklibgcc.in: Use a here document to avoid running afoul of + shells that generate control-A from "echo \1". + 2003-04-06 Aldy Hernandez * doc/invoke.texi (RS/6000 and PowerPC Options): Document -mspe diff --git a/gcc/mklibgcc.in b/gcc/mklibgcc.in index 3a492da13b1..1abb3a05e5e 100644 --- a/gcc/mklibgcc.in +++ b/gcc/mklibgcc.in @@ -311,13 +311,20 @@ for ml in $MULTILIBS; do if [ "$SHLIB_LINK" -a "$SHLIB_MKMAP" ]; then mapfile="libgcc/${dir}/libgcc.map" tmpmapfile="libgcc/${dir}/tmp-libgcc.map" - echo "" - echo "${mapfile}: $SHLIB_MKMAP $SHLIB_MAPFILES $libgcc_sh_objs" - echo ' { $(NM_FOR_TARGET)'" $SHLIB_NM_FLAGS $libgcc_sh_objs; echo %%; \\" - echo " cat $SHLIB_MAPFILES | sed -e "'"/^[ ]*#/d" -e '\''s/^%\(if\|else\|elif\|endif\|define\)/#\1/'\'" \\" - echo " | $gcc_compile $flags -E -xassembler-with-cpp -; \\" - echo ' } | $(AWK)'" -f $SHLIB_MKMAP $SHLIB_MKMAP_OPTS > ${tmpmapfile}" - echo ' mv '"$tmpmapfile"' $@' + # This uses a here document instead of echos because some shells + # will convert the \1 in the second sed command to a control-A. + # The behavior of here documents is more predictable. + cat < ${tmpmapfile} + mv '$tmpmapfile' \$@ +EOF fi shlib_deps="$shlib_deps $mapfile"