summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorelliott_c <ocielliottc@users.noreply.github.com>2002-11-08 18:53:34 +0000
committerelliott_c <ocielliottc@users.noreply.github.com>2002-11-08 18:53:34 +0000
commitd5089ca1cd350409fd5f4a2d5943630a74e7ee04 (patch)
tree3e094c41ca55e2355d3fc7cc30a59956db1f52c6
parent582a4bf36edd4605c860fd451f066c69bbef8f7f (diff)
downloadMPC-d5089ca1cd350409fd5f4a2d5943630a74e7ee04.tar.gz
ChangeLogTag: Fri Nov 8 12:52:16 2002 Chad Elliott <elliott_c@ociweb.com>
-rw-r--r--modules/GHSWorkspaceCreator.pm2
-rw-r--r--modules/Parser.pm8
-rw-r--r--modules/ProjectCreator.pm7
-rw-r--r--modules/TemplateParser.pm25
-rw-r--r--modules/VC6WorkspaceCreator.pm2
-rw-r--r--modules/VC7WorkspaceCreator.pm3
-rw-r--r--templates/em3.mpd63
-rw-r--r--templates/em3vcp.mpd63
-rw-r--r--templates/nmake.mpd26
-rw-r--r--templates/vc6.mpd49
-rw-r--r--templates/vc6dsp.mpd49
-rw-r--r--templates/vc7.mpd20
12 files changed, 151 insertions, 166 deletions
diff --git a/modules/GHSWorkspaceCreator.pm b/modules/GHSWorkspaceCreator.pm
index d81f0aec..716be104 100644
--- a/modules/GHSWorkspaceCreator.pm
+++ b/modules/GHSWorkspaceCreator.pm
@@ -59,7 +59,7 @@ sub write_comps {
foreach my $project (@list) {
## Convert all /'s to \
- $project =~ s/\//\\/g;
+ $project = $self->slash_to_backslash($project);
print $fh "..\\$project$crlf";
if ($gen->exe_target()) {
diff --git a/modules/Parser.pm b/modules/Parser.pm
index 674f2276..db0d0537 100644
--- a/modules/Parser.pm
+++ b/modules/Parser.pm
@@ -138,6 +138,14 @@ sub create_array {
}
+sub slash_to_backslash {
+ my($self) = shift;
+ my($file) = shift;
+ $file =~ s/\//\\/g;
+ return $file;
+}
+
+
# ************************************************************
# Virtual Methods To Be Overridden
# ************************************************************
diff --git a/modules/ProjectCreator.pm b/modules/ProjectCreator.pm
index 943bfc36..e460e578 100644
--- a/modules/ProjectCreator.pm
+++ b/modules/ProjectCreator.pm
@@ -60,6 +60,7 @@ my(%validNames) = ('exename' => 1,
'tagchecks' => 1,
'include_dir' => 1,
'core' => 1,
+ 'idlgendir' => 1,
);
## Deal with these components in a special way
@@ -119,7 +120,7 @@ sub new {
## Match up assignments with the valid components
my(%ma) = ('source_files' => [ 'includes' ],
- 'idl_files' => [ 'idlflags' ],
+ 'idl_files' => [ 'idlgendir', 'idlflags' ],
);
$self->{'matching_assignments'} = \%ma;
$self->{'valid_components'} = \%vc;
@@ -460,7 +461,7 @@ sub process_assignment {
$value =~ s/\s+$//;
if ($self->convert_slashes()) {
- $value =~ s/\//\\/g;
+ $value = $self->slash_to_backslash($value);
}
}
@@ -1170,7 +1171,7 @@ sub get_component_list {
if ($self->convert_slashes()) {
for(my $i = 0; $i <= $#list; $i++) {
- $list[$i] =~ s/\//\\/g;
+ $list[$i] = $self->slash_to_backslash($list[$i]);
}
}
diff --git a/modules/TemplateParser.pm b/modules/TemplateParser.pm
index d34873a0..03e01a36 100644
--- a/modules/TemplateParser.pm
+++ b/modules/TemplateParser.pm
@@ -267,7 +267,7 @@ sub relative {
$val = "../" x $count;
$val =~ s/\/$//;
if ($self->{'prjc'}->convert_slashes()) {
- $val =~ s/\//\\/g;
+ $val = slash_to_backslash($val);
}
substr($value, $start) =~ s/\$\([^)]+\)/$val/;
}
@@ -475,6 +475,7 @@ sub handle_end {
sub get_flag_overrides {
my($self) = shift;
my($name) = shift;
+ my($type) = shift;
my($value) = undef;
my($file) = $self->get_value($name);
my($prjc) = $self->{'prjc'};
@@ -483,12 +484,18 @@ sub get_flag_overrides {
foreach my $key (keys %$fo) {
if ($key =~ /^$name/) {
foreach my $of (keys %{$$fo{$key}}) {
- if ($of eq $file) {
+ my($cv) = $of;
+ if ($prjc->convert_slashes()) {
+ $cv = $prjc->slash_to_backslash($of);
+ }
+ if ($cv eq $file) {
foreach my $ma (keys %{$prjc->{'matching_assignments'}}) {
if ($ma eq $key) {
foreach my $aname (@{$prjc->{'matching_assignments'}->{$ma}}) {
- if (defined $$fo{$key}->{$of}->{$aname}) {
+ if ($aname eq $type &&
+ defined $$fo{$key}->{$of}->{$aname}) {
$value = $$fo{$key}->{$of}->{$aname};
+ last;
}
}
last;
@@ -521,8 +528,8 @@ sub handle_if {
$true = 0;
}
- if ($val =~ /flag_overrides\(([^\)]+)\)/) {
- $val = $self->get_flag_overrides($1);
+ if ($val =~ /flag_overrides\(([^\)]+),\s*([^\)]+)\)/) {
+ $val = $self->get_flag_overrides($1, $2);
}
else {
$val = $self->get_value($val)
@@ -642,12 +649,16 @@ sub handle_basenoextension {
sub handle_flag_overrides {
my($self) = shift;
my($name) = shift;
+ my($type) = "";
+
+ ($name, $type) = split(/,\s*/, $name);
+
my($file) = $self->get_value($name);
my($prjc) = $self->{'prjc'};
my($fo) = $prjc->{'flag_overrides'};
if (!$self->{'if_skip'}) {
- my($value) = $self->get_flag_overrides($name);
+ my($value) = $self->get_flag_overrides($name, $type);
if (defined $value) {
$self->append_current($value);
}
@@ -702,7 +713,7 @@ sub process_name {
if ($line eq "") {
}
- elsif ($line =~ /^(\w+)(\(([^\)]+|\".*\"|flag_overrides\([^\)]+\))\))?%>/) {
+ elsif ($line =~ /^(\w+)(\(([^\)]+|\".*\"|flag_overrides\([^\)]+,\s*[^\)]+\))\))?%>/) {
my($name, $val) = $self->split_name_value($line);
$length += length($name);
diff --git a/modules/VC6WorkspaceCreator.pm b/modules/VC6WorkspaceCreator.pm
index b69ee028..d68e2962 100644
--- a/modules/VC6WorkspaceCreator.pm
+++ b/modules/VC6WorkspaceCreator.pm
@@ -58,7 +58,7 @@ sub write_comps {
my($name, $deps) = @$pi;
## Convert all /'s to \
- $project =~ s/\//\\/g;
+ $project = $self->slash_to_backslash($project);
print $fh "###############################################################################$crlf" .
"$crlf" .
diff --git a/modules/VC7WorkspaceCreator.pm b/modules/VC7WorkspaceCreator.pm
index db5be6ca..23fa4931 100644
--- a/modules/VC7WorkspaceCreator.pm
+++ b/modules/VC7WorkspaceCreator.pm
@@ -62,8 +62,7 @@ sub write_comps {
my($name, $deps, $pguid) = @$pi;
## Convert all /'s to \
- my($cpy) = $project;
- $cpy =~ s/\//\\/g;
+ my($cpy) = $self->slash_to_backslash($project);
print $fh "Project(\"{$guid}\") = \"$name\", \"$cpy\", \"{$pguid}\"$crlf" .
"EndProject$crlf";
}
diff --git a/templates/em3.mpd b/templates/em3.mpd
index 099540b8..70747790 100644
--- a/templates/em3.mpd
+++ b/templates/em3.mpd
@@ -114,6 +114,12 @@ SOURCE=.\<%source_file%>
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hh"
+<%if(pch_header)%>
+# Begin Source File
+
+SOURCE=.\<%pch_header%>
+# End Source File
+<%endif%>
<%foreach(header_files)%>
# Begin Source File
@@ -189,60 +195,41 @@ SOURCE=.\<%idl_file%>
InputPath=.\<%idl_file%>
InputName=<%basenoextension(idl_file)%>
InputDir=<%dirname(idl_file)%>
-
+<%if(flag_overrides(idl_file, idlgendir))%>
+OutDir=<%flag_overrides(idl_file, idlgendir)%>
+<%else%>
+<%if(idlgendir)%>
+OutDir=<%idlgendir%>
+<%else%>
<%if(dirname_found)%>
-BuildCmds= \
- cd $(InputDir) \
- <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> <%basename(idl_file)%>
-
-"$(InputDir)\$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
+OutDir=$(InputDir)
<%else%>
-BuildCmds= \
- <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> $(InputPath)
-
-"$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
+OutDir=.
+<%endif%>
+<%endif%>
+<%endif%>
-"$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
+BuildCmds= \
+ <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> -o $(OutDir) <%if(flag_overrides(idl_file, idlflags))%><%flag_overrides(idl_file, idlflags)%><%else%><%idlflags("-Sc")%><%endif%> $(InputPath)
-"$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S_T.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S_T.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S_T.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-<%endif%>
# End Custom Build
<%endfor%>
diff --git a/templates/em3vcp.mpd b/templates/em3vcp.mpd
index 099540b8..70747790 100644
--- a/templates/em3vcp.mpd
+++ b/templates/em3vcp.mpd
@@ -114,6 +114,12 @@ SOURCE=.\<%source_file%>
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hh"
+<%if(pch_header)%>
+# Begin Source File
+
+SOURCE=.\<%pch_header%>
+# End Source File
+<%endif%>
<%foreach(header_files)%>
# Begin Source File
@@ -189,60 +195,41 @@ SOURCE=.\<%idl_file%>
InputPath=.\<%idl_file%>
InputName=<%basenoextension(idl_file)%>
InputDir=<%dirname(idl_file)%>
-
+<%if(flag_overrides(idl_file, idlgendir))%>
+OutDir=<%flag_overrides(idl_file, idlgendir)%>
+<%else%>
+<%if(idlgendir)%>
+OutDir=<%idlgendir%>
+<%else%>
<%if(dirname_found)%>
-BuildCmds= \
- cd $(InputDir) \
- <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> <%basename(idl_file)%>
-
-"$(InputDir)\$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
+OutDir=$(InputDir)
<%else%>
-BuildCmds= \
- <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> $(InputPath)
-
-"$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
+OutDir=.
+<%endif%>
+<%endif%>
+<%endif%>
-"$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
+BuildCmds= \
+ <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> -o $(OutDir) <%if(flag_overrides(idl_file, idlflags))%><%flag_overrides(idl_file, idlflags)%><%else%><%idlflags("-Sc")%><%endif%> $(InputPath)
-"$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S_T.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S_T.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S_T.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-<%endif%>
# End Custom Build
<%endfor%>
diff --git a/templates/nmake.mpd b/templates/nmake.mpd
index 6165a952..99d56f47 100644
--- a/templates/nmake.mpd
+++ b/templates/nmake.mpd
@@ -198,21 +198,25 @@ SOURCE=.\<%idl_file%>
InputPath=.\<%idl_file%>
InputName=<%basenoextension(idl_file)%>
InputDir=<%dirname(idl_file)%>
-
+<%if(flag_overrides(idl_file, idlgendir))%>
+OutDir=<%flag_overrides(idl_file, idlgendir)%>
+<%else%>
+<%if(idlgendir)%>
+OutDir=<%idlgendir%>
+<%else%>
<%if(dirname_found)%>
-".\$(InputDir)\$(InputName)C.h" ".\$(InputDir)\$(InputName)C.i" ".\$(InputDir)\$(InputName)C.cpp" ".\$(InputDir)\$(InputName)S.h" ".\$(InputDir)\$(InputName)S.i" ".\$(InputDir)\$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+OutDir=$(InputDir)
+<%else%>
+OutDir=.
+<%endif%>
+<%endif%>
+<%endif%>
+
+"$(OutDir)\$(InputName)C.h" "$(OutDir)\$(InputName)C.i" "$(OutDir)\$(InputName)C.cpp" "$(OutDir)\$(InputName)S.h" "$(OutDir)\$(InputName)S.i" "$(OutDir)\$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
<<tempfile.bat
@echo off
- cd $(InputDir)
- <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> <%basename(idl_file)%>
+ <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> -o $(OutDir) <%if(flag_overrides(idl_file, idlflags))%><%flag_overrides(idl_file, idlflags)%><%else%><%idlflags("-Sc")%><%endif%> <%idl_file%>
<<
-<%else%>
-".\$(InputName)C.h" ".\$(InputName)C.i" ".\$(InputName)C.cpp" ".\$(InputName)S.h" ".\$(InputName)S.i" ".\$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- <<tempfile.bat
- @echo off
- <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> $(InputPath)
-<<
-<%endif%>
<%endfor%>
!ENDIF
diff --git a/templates/vc6.mpd b/templates/vc6.mpd
index 00bf5e52..6c4a51d1 100644
--- a/templates/vc6.mpd
+++ b/templates/vc6.mpd
@@ -182,51 +182,40 @@ SOURCE=.\<%idl_file%>
InputPath=.\<%idl_file%>
InputName=<%basenoextension(idl_file)%>
InputDir=<%dirname(idl_file)%>
-
+<%if(flag_overrides(idl_file, idlgendir))%>
+OutDir=<%flag_overrides(idl_file, idlgendir)%>
+<%else%>
+<%if(idlgendir)%>
+OutDir=<%idlgendir%>
+<%else%>
<%if(dirname_found)%>
-BuildCmds= \
- cd $(InputDir) \
- <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> <%basename(idl_file)%>
-
-"$(InputDir)\$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
+OutDir=$(InputDir)
<%else%>
+OutDir=.
+<%endif%>
+<%endif%>
+<%endif%>
+
BuildCmds= \
- <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> $(InputPath)
+ <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> -o $(OutDir) <%if(flag_overrides(idl_file, idlflags))%><%flag_overrides(idl_file, idlflags)%><%else%><%idlflags("-Sc")%><%endif%> $(InputPath)
-"$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-<%endif%>
# End Custom Build
diff --git a/templates/vc6dsp.mpd b/templates/vc6dsp.mpd
index 00bf5e52..6c4a51d1 100644
--- a/templates/vc6dsp.mpd
+++ b/templates/vc6dsp.mpd
@@ -182,51 +182,40 @@ SOURCE=.\<%idl_file%>
InputPath=.\<%idl_file%>
InputName=<%basenoextension(idl_file)%>
InputDir=<%dirname(idl_file)%>
-
+<%if(flag_overrides(idl_file, idlgendir))%>
+OutDir=<%flag_overrides(idl_file, idlgendir)%>
+<%else%>
+<%if(idlgendir)%>
+OutDir=<%idlgendir%>
+<%else%>
<%if(dirname_found)%>
-BuildCmds= \
- cd $(InputDir) \
- <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> <%basename(idl_file)%>
-
-"$(InputDir)\$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
-
-"$(InputDir)\$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
- $(BuildCmds)
+OutDir=$(InputDir)
<%else%>
+OutDir=.
+<%endif%>
+<%endif%>
+<%endif%>
+
BuildCmds= \
- <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> $(InputPath)
+ <%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> -o $(OutDir) <%if(flag_overrides(idl_file, idlflags))%><%flag_overrides(idl_file, idlflags)%><%else%><%idlflags("-Sc")%><%endif%> $(InputPath)
-"$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)C.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.h" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.i" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-"$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
+"$(OutDir)\$(InputName)S.cpp" : $(SOURCE) "$(INTDIR)" "$(OUTDIR)"
$(BuildCmds)
-<%endif%>
# End Custom Build
diff --git a/templates/vc7.mpd b/templates/vc7.mpd
index f3371564..2deed199 100644
--- a/templates/vc7.mpd
+++ b/templates/vc7.mpd
@@ -150,14 +150,24 @@
Name="<%configuration%>|<%platform%>">
<Tool
Name="VCCustomBuildTool"
- Description="Invoking TAO_IDL Compiler on <%idl_file%> in <%dirname(idl_file)%>"
+ Description="Invoking TAO_IDL Compiler on <%basename(idl_file)%> located in <%dirname(idl_file)%>"
+<%if(flag_overrides(idl_file, idlgendir))%>
+ CommandLine="<%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> -o <%flag_overrides(idl_file, idlgendir)%> <%if(flag_overrides(idl_file, idlflags))%><%flag_overrides(idl_file, idlflags)%><%else%><%idlflags("-Sc")%><%endif%> <%idl_file%>"
+ Outputs="<%flag_overrides(idl_file, idlgendir)%>\<%basenoextension(idl_file)%>C.h;<%flag_overrides(idl_file, idlgendir)%>\<%basenoextension(idl_file)%>C.i;<%flag_overrides(idl_file, idlgendir)%>\<%basenoextension(idl_file)%>C.cpp;<%flag_overrides(idl_file, idlgendir)%>\<%basenoextension(idl_file)%>S.h;<%flag_overrides(idl_file, idlgendir)%>\<%basenoextension(idl_file)%>S.i;<%flag_overrides(idl_file, idlgendir)%>\<%basenoextension(idl_file)%>S.cpp"/>
+<%else%>
+<%if(idlgendir)%>
+ CommandLine="<%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> -o <%idlgendir%> <%if(flag_overrides(idl_file, idlflags))%><%flag_overrides(idl_file, idlflags)%><%else%><%idlflags("-Sc")%><%endif%> <%idl_file%>"
+ Outputs="<%idlgendir%>\<%basenoextension(idl_file)%>C.h;<%idlgendir%>\<%basenoextension(idl_file)%>C.i;<%idlgendir%>\<%basenoextension(idl_file)%>C.cpp;<%idlgendir%>\<%basenoextension(idl_file)%>S.h;<%idlgendir%>\<%basenoextension(idl_file)%>S.i;<%idlgendir%>\<%basenoextension(idl_file)%>S.cpp"/>
+<%else%>
<%if(dirname_found)%>
- CommandLine="cd <%dirname(idl_file)%>
-<%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> <%basename(idl_file)%>"
+ CommandLine="<%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> -o <%dirname(idl_file)%> <%if(flag_overrides(idl_file, idlflags))%><%flag_overrides(idl_file, idlflags)%><%else%><%idlflags("-Sc")%><%endif%> <%idl_file%>"
+ Outputs="<%basenoextension(idl_file)%>C.h;<%basenoextension(idl_file)%>C.i;<%basenoextension(idl_file)%>C.cpp;<%basenoextension(idl_file)%>S.h;<%basenoextension(idl_file)%>S.i;<%basenoextension(idl_file)%>S.cpp"/>
<%else%>
- CommandLine="<%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file))%><%flag_overrides(idl_file)%><%else%><%idlflags("-Sc")%><%endif%> <%idl_file%>"
-<%endif%>
+ CommandLine="<%tao_idl_exe("$(ACE_ROOT)\\bin\\tao_idl")%> <%if(flag_overrides(idl_file, idlflags))%><%flag_overrides(idl_file, idlflags)%><%else%><%idlflags("-Sc")%><%endif%> <%idl_file%>"
Outputs="<%noextension(idl_file)%>C.h;<%noextension(idl_file)%>C.i;<%noextension(idl_file)%>C.cpp;<%noextension(idl_file)%>S.h;<%noextension(idl_file)%>S.i;<%noextension(idl_file)%>S.cpp"/>
+<%endif%>
+<%endif%>
+<%endif%>
</FileConfiguration>
<%endfor%>
</File>