summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorelliott_c <ocielliottc@users.noreply.github.com>2003-06-18 12:36:42 +0000
committerelliott_c <ocielliottc@users.noreply.github.com>2003-06-18 12:36:42 +0000
commit701833603f35a4ba89838a28fe883f7057c67235 (patch)
tree38097fc095b451fd1600ea55698add80b155858a
parent51eef107704679b90dc9e0e0b061a2ba028e3446 (diff)
downloadMPC-701833603f35a4ba89838a28fe883f7057c67235.tar.gz
ChangeLogTag: Wed Jun 18 07:35:22 2003 Chad Elliott <elliott_c@ociweb.com>
-rw-r--r--modules/Creator.pm8
-rw-r--r--modules/ProjectCreator.pm24
2 files changed, 24 insertions, 8 deletions
diff --git a/modules/Creator.pm b/modules/Creator.pm
index 7a5d5e9d..45ebc026 100644
--- a/modules/Creator.pm
+++ b/modules/Creator.pm
@@ -504,10 +504,16 @@ sub process_assignment_add {
my($name) = shift;
my($value) = shift;
my($assign) = shift;
+ my($order) = shift;
my($nval) = $self->get_assignment($name, $assign);
if (defined $nval) {
- $nval = "$value $nval";
+ if ($order) {
+ $nval .= " $value";
+ }
+ else {
+ $nval = "$value $nval";
+ }
}
else {
$nval = $value;
diff --git a/modules/ProjectCreator.pm b/modules/ProjectCreator.pm
index 8d5d070d..2143ba59 100644
--- a/modules/ProjectCreator.pm
+++ b/modules/ProjectCreator.pm
@@ -454,6 +454,7 @@ sub parse_scoped_assignment {
my($name) = shift;
my($value) = shift;
my($flags) = shift;
+ my($order) = shift;
my($over) = {};
my($status) = 0;
@@ -475,8 +476,7 @@ sub parse_scoped_assignment {
}
if ($type eq 'assignment') {
- $self->process_assignment($name,
- $value, $flags);
+ $self->process_assignment($name, $value, $flags);
}
elsif ($type eq 'assign_add') {
## If there is no value in $$flags, then we need to get
@@ -485,8 +485,7 @@ sub parse_scoped_assignment {
my($outer) = $self->get_assignment($name);
$self->process_assignment($name, $outer, $flags);
}
- $self->process_assignment_add($name,
- $value, $flags);
+ $self->process_assignment_add($name, $value, $flags, $order);
}
elsif ($type eq 'assign_sub') {
## If there is no value in $$flags, then we need to get
@@ -495,8 +494,7 @@ sub parse_scoped_assignment {
my($outer) = $self->get_assignment($name);
$self->process_assignment($name, $outer, $flags);
}
- $self->process_assignment_sub($name,
- $value, $flags);
+ $self->process_assignment_sub($name, $value, $flags);
}
}
return $status;
@@ -515,6 +513,17 @@ sub parse_components {
my($order) = 0;
my($set) = 0;
my(%flags) = ();
+ my($custom) = defined $self->{'generated_exts'}->{$tag};
+
+ if ($custom) {
+ ## For the custom scoped assignments, we want to put a copy of
+ ## the original custom defined values in our flags associative array.
+ foreach my $key (keys %custom) {
+ if (defined $self->{'generated_exts'}->{$tag}->{$key}) {
+ $flags{$key} = $self->{'generated_exts'}->{$tag}->{$key};
+ }
+ }
+ }
if (defined $self->{$tag}) {
$names = $self->{$tag};
@@ -577,7 +586,8 @@ sub parse_components {
my(@values) = ();
## If this returns true, then we've found an assignment
if ($self->parse_assignment($line, \@values)) {
- $status = $self->parse_scoped_assignment($tag, @values, \%flags);
+ $status = $self->parse_scoped_assignment($tag, @values,
+ \%flags, $custom);
if (!$status) {
last;
}