summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/be/be_produce.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/TAO_IDL/be/be_produce.cpp')
-rw-r--r--TAO/TAO_IDL/be/be_produce.cpp34
1 files changed, 20 insertions, 14 deletions
diff --git a/TAO/TAO_IDL/be/be_produce.cpp b/TAO/TAO_IDL/be/be_produce.cpp
index aa74be74b5c..9cd87e5a950 100644
--- a/TAO/TAO_IDL/be/be_produce.cpp
+++ b/TAO/TAO_IDL/be/be_produce.cpp
@@ -74,6 +74,7 @@ trademarks or registered trademarks of Sun Microsystems, Inc.
#include "be_extern.h"
#include "fe_extern.h"
#include "global_extern.h"
+#include "be_util.h"
// Clean up before exit, whether successful or not.
TAO_IDL_BE_Export void
@@ -185,13 +186,6 @@ BE_produce (void)
be_visitor_root_sh root_sh_visitor (&ctx);
BE_visit_root (root_sh_visitor, "server header");
- if (be_global->gen_server_inline ())
- {
- ctx.state (TAO_CodeGen::TAO_ROOT_SI);
- be_visitor_root_si root_si_visitor (&ctx);
- BE_visit_root (root_si_visitor, "server inline");
- }
-
if (be_global->gen_server_skeleton ())
{
ctx.state (TAO_CodeGen::TAO_ROOT_SS);
@@ -228,6 +222,14 @@ BE_produce (void)
ctx.state (TAO_CodeGen::TAO_ROOT_SVS);
be_visitor_root_svs root_svs_visitor (&ctx);
BE_visit_root (root_svs_visitor, "CIAO servant source");
+
+ ctx.state (TAO_CodeGen::TAO_ROOT_SVTH);
+ be_visitor_root_svth root_svth_visitor (&ctx);
+ BE_visit_root (root_svth_visitor, "CIAO template servant header");
+
+ ctx.state (TAO_CodeGen::TAO_ROOT_SVTS);
+ be_visitor_root_svts root_svts_visitor (&ctx);
+ BE_visit_root (root_svts_visitor, "CIAO template servant source");
}
if (be_global->gen_ciao_exec_idl ())
@@ -239,13 +241,17 @@ BE_produce (void)
if (be_global->gen_ciao_exec_impl ())
{
- ctx.state (TAO_CodeGen::TAO_ROOT_EXH);
- be_visitor_root_exh root_exh_visitor (&ctx);
- BE_visit_root (root_exh_visitor, "CIAO exec impl header");
-
- ctx.state (TAO_CodeGen::TAO_ROOT_EXS);
- be_visitor_root_exs root_exs_visitor (&ctx);
- BE_visit_root (root_exs_visitor, "CIAO exec impl source");
+ bool generate = be_util::overwrite_ciao_exec_files ();
+ if(generate)
+ {
+ ctx.state (TAO_CodeGen::TAO_ROOT_EXH);
+ be_visitor_root_exh root_exh_visitor (&ctx);
+ BE_visit_root (root_exh_visitor, "CIAO exec impl header");
+
+ ctx.state (TAO_CodeGen::TAO_ROOT_EXS);
+ be_visitor_root_exs root_exs_visitor (&ctx);
+ BE_visit_root (root_exs_visitor, "CIAO exec impl source");
+ }
}
if (be_global->gen_ciao_conn_impl ())