]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
* ltmain.in (variables_saved_for_relink): Attempt to unset them
authorAlexandre Oliva <aoliva@redhat.com>
Sun, 3 Sep 2000 03:14:30 +0000 (03:14 +0000)
committerAlexandre Oliva <aoliva@redhat.com>
Sun, 3 Sep 2000 03:14:30 +0000 (03:14 +0000)
instead of setting them to an empty string.

ChangeLog
ltmain.in

index fefb10e55069180aa2d3dd8a505df9266982f3d7..1f5187690c52cf8294b7ea5d9b950fbb10d20818 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2000-09-03  Alexandre Oliva  <aoliva@redhat.com>
+
+       * ltmain.in (variables_saved_for_relink): Attempt to unset them
+       instead of setting them to an empty string.
+
 2000-09-02  Alexandre Oliva  <aoliva@redhat.com>
 
        * demo/Makefile.am: Don't extract configuration variables directly
index 23cfb4aab1b7434b56c22d13d63a294595ca02d4..d0595412546b493e01599576b732c93dcf209f18 100644 (file)
--- a/ltmain.in
+++ b/ltmain.in
@@ -3602,9 +3602,14 @@ static const void *lt_preloaded_setup() {
       if test -n "$relink_command"; then
        # Preserve any variables that may affect compiler behavior
        for var in $variables_saved_for_relink; do
-         eval var_value=\$$var
-         var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
-         relink_command="$var=\"$var_value\"; export $var; $relink_command"
+         if eval test -z \"\${$var+set}\"; then
+           relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
+         elif eval var_value=\$$var; test -z "$var_value"; then
+           relink_command="$var=; export $var; $relink_command"
+         else
+           var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
+           relink_command="$var=\"$var_value\"; export $var; $relink_command"
+         fi
        done
        relink_command="cd `pwd`; $relink_command"
        relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"`
@@ -3920,9 +3925,14 @@ fi\
 
       # Preserve any variables that may affect compiler behavior
       for var in $variables_saved_for_relink; do
-       eval var_value=\$$var
-       var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
-       relink_command="$var=\"$var_value\"; export $var; $relink_command"
+       if eval test -z \"\${$var+set}\"; then
+         relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command"
+       elif eval var_value=\$$var; test -z "$var_value"; then
+         relink_command="$var=; export $var; $relink_command"
+       else
+         var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"`
+         relink_command="$var=\"$var_value\"; export $var; $relink_command"
+       fi
       done
       # Quote the link command for shipping.
       relink_command="cd `pwd`; $SHELL $0 --mode=relink $libtool_args"