diff options
author | geoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-02-04 23:58:48 +0000 |
---|---|---|
committer | geoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-02-04 23:58:48 +0000 |
commit | 351ae3138e67bbcc8bcd9aef8dc696ad739bda82 (patch) | |
tree | dd0697f7face4322dc60e123851bf7b7b697f5bc /ltmain.sh | |
parent | 900c3c4984c408b9cb9cd6c1b0476f2928235f38 (diff) | |
download | gcc-351ae3138e67bbcc8bcd9aef8dc696ad739bda82.tar.gz |
Partial merge from upstream:
* ltmain.in: When setting IFS to '~', be careful about user
arguments that contain '~'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@77279 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'ltmain.sh')
-rw-r--r-- | ltmain.sh | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/ltmain.sh b/ltmain.sh index 5ccf95c7d1d..c1ef9974d0e 100644 --- a/ltmain.sh +++ b/ltmain.sh @@ -2106,9 +2106,10 @@ EOF else $show "extracting exported symbol list from \`$soname'" IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - eval cmds=\"$extract_expsyms_cmds\" + cmds=$extract_expsyms_cmds for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done @@ -2119,9 +2120,10 @@ EOF if test -f "$output_objdir/$newlib"; then :; else $show "generating import library for \`$soname'" IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' - eval cmds=\"$old_archive_from_expsyms_cmds\" + cmds=$old_archive_from_expsyms_cmds for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done @@ -3249,11 +3251,13 @@ EOF # Do each of the archive commands. if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval cmds=\"$archive_expsym_cmds\" + eval test_cmds=\"$archive_expsym_cmds\" + cmds=$archive_expsym_cmds else - eval cmds=\"$archive_cmds\" + eval test_cmds=\"$archive_cmds\" + cmds=$archive_cmds fi - if len=`expr "X$cmds" : ".*"` && + if len=`expr "X$test_cmds" : ".*"` && test $len -le $max_cmd_len; then : else @@ -3329,6 +3333,7 @@ EOF IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' for cmd in $concat_cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done @@ -3346,9 +3351,9 @@ EOF # Do each of the archive commands. if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval cmds=\"$archive_expsym_cmds\" - else - eval cmds=\"$archive_cmds\" + cmds=$archive_expsym_cmds + else + cmds=$archive_cmds fi # Append the command to remove the reloadable object files @@ -3358,6 +3363,7 @@ EOF IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' for cmd in $cmds; do IFS="$save_ifs" + eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done |