diff options
author | elliott_c <ocielliottc@users.noreply.github.com> | 2004-01-28 15:19:33 +0000 |
---|---|---|
committer | elliott_c <ocielliottc@users.noreply.github.com> | 2004-01-28 15:19:33 +0000 |
commit | 30c7d7422ca2f5f99472bd19fe89d37b3b9a4570 (patch) | |
tree | 65f8a0ea71a6fcd6c643a1bd08b040cb6327a24b | |
parent | e776df9378d5309c1b1f217f5d589095291f6c10 (diff) | |
download | ATCD-30c7d7422ca2f5f99472bd19fe89d37b3b9a4570.tar.gz |
ChangeLogTag: Wed Jan 28 09:17:36 2004 Chad Elliott <elliott_c@ociweb.com>
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | bin/MakeProjectCreator/modules/ProjectCreator.pm | 55 |
2 files changed, 64 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index b7a95c0d922..083132fd0cc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +Wed Jan 28 09:17:36 2004 Chad Elliott <elliott_c@ociweb.com> + + * bin/MakeProjectCreator/modules/ProjectCreator.pm: + + Added custom build output inference that takes gendir settings + into account. If a custom build file is listed, gendir is set and + the generated source isn't listed in the Source_Files list, then + the correct generated source files will be listed with the correct + path determined by gendir. + Wed Jan 28 08:54:29 2004 Chad Elliott <elliott_c@ociweb.com> * bin/MakeProjectCreator/modules/GNUACEProjectCreator.pm: diff --git a/bin/MakeProjectCreator/modules/ProjectCreator.pm b/bin/MakeProjectCreator/modules/ProjectCreator.pm index 07671d1f243..5ce0956c4f3 100644 --- a/bin/MakeProjectCreator/modules/ProjectCreator.pm +++ b/bin/MakeProjectCreator/modules/ProjectCreator.pm @@ -1169,7 +1169,7 @@ sub add_generated_files { $file =~ s/$wanted$//; foreach my $pf (@{$self->{'generated_exts'}->{$gentype}->{'pre_filename'}}) { foreach my $pe (@{$self->{'generated_exts'}->{$gentype}->{'pre_extension'}}) { - $self->list_generated_file($gentype, $tag, \@added, "$pf$file$pe"); + $self->list_generated_file($gentype, $tag, \@added, "$pf$file$pe", $i); } } } @@ -1632,12 +1632,62 @@ sub list_default_generated { } +sub prepend_gendir { + my($self) = shift; + my($created) = shift; + my($ofile) = shift; + my($gentype) = shift; + my($key) = undef; + + foreach my $ext (@{$self->{'valid_components'}->{$gentype}}) { + my($e) = $ext; + $e =~ s/\\//g; + $key = "$ofile$e"; + if (defined $self->{'flag_overrides'}->{$gentype}->{$key}) { + last; + } + else { + $key = undef; + } + } + + if (defined $key) { + foreach my $ma (@{$self->{'matching_assignments'}->{$gentype}}) { + ## + ## When IDL_Files is a custom definition, change this to + ## if ($ma eq 'gendir') { -- CAE 1/27/2004 + ## + if ($ma =~ /gendir/) { + if (defined $self->{'flag_overrides'}->{$gentype}->{$key}->{$ma}) { + return "$self->{'flag_overrides'}->{$gentype}->{$key}->{$ma}/" . + basename($created); + } + } + } + } + + ## + ## When IDL_Files is a custom definition, this elsif clause needs to + ## be removed completely. -- CAE 1/27/2004 + ## + elsif ($gentype eq 'idl_files') { + my($gendir) = $self->get_assignment('idlgendir'); + if (defined $gendir) { + return "$gendir/" . basename($created); + } + } + + return $created; +} + + sub list_generated_file { my($self) = shift; my($gentype) = shift; my($tag) = shift; my($array) = shift; my($file) = shift; + my($ofile) = shift; if (defined $self->{'generated_exts'}->{$gentype}->{$tag}) { my(@gen) = $self->get_component_list($gentype); @@ -1668,6 +1718,9 @@ sub list_generated_file { my($created) = "$file$1"; $created =~ s/\\//g; if (!$self->already_added($array, $created)) { + if (defined $ofile) { + $created = $self->prepend_gendir($created, $ofile, $gentype); + } push(@$array, $created); } last; |