]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
* m4/libtool.m4 (_LT_CONFIG_COMMANDS): Only call sed if
authorRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Thu, 7 Apr 2005 06:29:55 +0000 (06:29 +0000)
committerRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Thu, 7 Apr 2005 06:29:55 +0000 (06:29 +0000)
necessary while quoting all libtool variables.
Reported by Robert Ögren <lists@roboros.com>.

ChangeLog
m4/libtool.m4

index d95d8ef92eb8e63af7f6a289abce179d557ec2e9..e9d6874cdd04a0aa31726c68516132e364bfd670 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2005-04-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * m4/libtool.m4 (_LT_CONFIG_COMMANDS): Only call sed if
+       necessary while quoting all libtool variables.
+       Reported by Robert Ögren <lists@roboros.com>.
+
 2005-04-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 
        * tests/Makefile.am: Typo.
index 6c322b0b0289b18bfbfbf665ae28a60ffae018c1..eb2446e9684239dcec7ded93e9fc41be696684c7 100644 (file)
@@ -462,12 +462,26 @@ compiler='$compiler_DEFAULT'
 
 # Quote evaled strings.
 for var in lt_decl_all_varnames([[ ]], lt_decl_quote_varnames); do
-    eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+    case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+    *[[\\\\\\\`\\"\\\$]]*)
+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
+      ;;
+    *)
+      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+      ;;
+    esac
 done
 
 # Double-quote double-evaled strings.
 for var in lt_decl_all_varnames([[ ]], lt_decl_dquote_varnames); do
-    eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+    case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in
+    *[[\\\\\\\`\\"\\\$]]*)
+      eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
+      ;;
+    *)
+      eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
+      ;;
+    esac
 done
 
 # Fix-up fallback echo if it was mangled by the above quoting rules.