Index: 0.175/am.prj
--- 0.175/am.prj
+++ 0.175(w)/am.prj
@@ -8,7 +8,10 @@
* automake.in (&handle_source_transform): Better locality of the
variables.
Use `next' to skip nonexistent variables.")
-(New-Version-Log "")
+(New-Version-Log "2001-03-11 Akim Demaille <[EMAIL PROTECTED]>
+
+ * automake.in (&variable_define): The user is allowed to override
+ a value if it was set by Automake, or if it was found in AC_SUBST.")
(Checkin-Time "Sun, 11 Mar 2001 14:32:52 +0100")
(Checkin-Login akim)
(Populate-Ignore ("info" "~$" "testSubDir" "patches" "diffs"))
Index: 0.175/ChangeLog
--- 0.175/ChangeLog Sun, 11 Mar 2001 14:32:52 +0100 akim (am/f/47_ChangeLog 1.156 644)
+++ 0.175(w)/ChangeLog Sun, 11 Mar 2001 14:41:51 +0100 akim (am/f/47_ChangeLog 1.156
+644)
@@ -1,5 +1,10 @@
2001-03-11 Akim Demaille <[EMAIL PROTECTED]>
+ * automake.in (&variable_define): The user is allowed to override
+ a value if it was set by Automake, or if it was found in AC_SUBST.
+
+2001-03-11 Akim Demaille <[EMAIL PROTECTED]>
+
* automake.in (&handle_source_transform): Better locality of the
variables.
Use `next' to skip nonexistent variables.
Index: 0.175/automake.in
--- 0.175/automake.in Sun, 11 Mar 2001 14:32:52 +0100 akim (am/f/39_automake.i 1.162
755)
+++ 0.175(w)/automake.in Sun, 11 Mar 2001 14:40:51 +0100 akim (am/f/39_automake.i
+1.162 755)
@@ -5646,12 +5646,6 @@
$var_was_plus_eq{$var} = $type eq '+' && ! $var_is_am{$var};
}
- # An Automake variable can be given to the user, but not the converse.
- if (! defined $var_is_am{$var} || !$var_is_am)
- {
- $var_is_am{$var} = $var_is_am;
- }
-
# Differentiate the first assignment (including with `+=').
if ($type eq '+' && defined $conditional{$var}{$cond})
{
@@ -5678,14 +5672,22 @@
$content_lines{$var} = $where
unless defined $content_lines{$var};
- # There must be no previous value.
- check_ambiguous_conditional ($var, $cond);
+ # There must be no previous value unless the user is redefining
+ # an Automake variable or an AC_SUBST variable.
+ check_ambiguous_conditional ($var, $cond)
+ unless ($var_is_am{$var} && !$var_is_am
+ || exists $configure_vars{$var});
+
$conditional{$var}{$cond} = $value;
}
- # FIXME: I don't understand what's so special wrt `:', nor
- # why we forget the `+' nature of a var.
- $def_type{$var} = ($type eq ':') ? ':' : '';
+ # An Automake variable can be given to the user, but not the converse.
+ if (! defined $var_is_am{$var} || !$var_is_am)
+ {
+ $var_is_am{$var} = $var_is_am;
+ }
+
+ $def_type{$var} = ($type eq ':') ? ':' : '';
}