diff options
author | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2004-01-28 00:12:31 +0000 |
---|---|---|
committer | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2004-01-28 00:12:31 +0000 |
commit | 8f8d33a8e27c9ac69c15fdd8bd7e03ab8883f5f8 (patch) | |
tree | d1974300673d8235d187584da60df745d61044b9 | |
parent | 70ad25bb55120639b756d697dc83773648dce314 (diff) | |
download | ATCD-8f8d33a8e27c9ac69c15fdd8bd7e03ab8883f5f8.tar.gz |
ChangeLogTag: Tue Jan 27 18:05:19 2004 Jeff Parsons <j.parsons@vanderbilt.edu>
-rw-r--r-- | TAO/ChangeLog | 18 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_codegen.cpp | 100 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_global.cpp | 7 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_root/root.cpp | 14 | ||||
-rw-r--r-- | TAO/TAO_IDL/be_include/be_codegen.h | 3 | ||||
-rw-r--r-- | TAO/TAO_IDL/be_include/be_global.h | 3 |
6 files changed, 19 insertions, 126 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog index 667bf57744d..91c8f8154fd 100644 --- a/TAO/ChangeLog +++ b/TAO/ChangeLog @@ -1,3 +1,21 @@ +Tue Jan 27 18:05:19 2004 Jeff Parsons <j.parsons@vanderbilt.edu> + + * TAO_IDL/be/be_codegen.cpp: + * TAO_IDL/be/be_global.cpp: + * TAO_IDL/be/be_visitor_root/root.cpp: + * TAO_IDL/be_include/be_codegen.h: + * TAO_IDL/be_include/be_global.h: + + Eliminated generation of the *A.h file, containing + declarations for Any operators and triggered by the + option -GA. Moved generation of Any operator declarations + back to the *C.h file. Left generation of the *A.cpp file + unchanged, except for removal of *A.h #include. This + change allows us to avoid linking *A.cpp in + DLLs if the Any operators are not used, while still + allowing their declarations to be found if they are referenced + in another generated file. + Tue Jan 27 17:41:38 2004 Jeff Parsons <j.parsons@vanderbilt.edu> * tao/OctetSeqA.h: diff --git a/TAO/TAO_IDL/be/be_codegen.cpp b/TAO/TAO_IDL/be/be_codegen.cpp index f9aac20bce2..991d229d969 100644 --- a/TAO/TAO_IDL/be/be_codegen.cpp +++ b/TAO/TAO_IDL/be/be_codegen.cpp @@ -43,7 +43,6 @@ TAO_CodeGen::TAO_CodeGen (void) server_template_skeletons_ (0), server_inline_ (0), server_template_inline_ (0), - anyop_header_ (0), anyop_source_ (0), gperf_input_stream_ (0), gperf_input_filename_ (0), @@ -57,19 +56,6 @@ TAO_CodeGen::TAO_CodeGen (void) int status = 0; status = - this->start_anyop_header ( - be_global->be_get_anyop_header_fname () - ); - - if (status == -1) - { - ACE_ERROR ((LM_ERROR, - "(%N:%l) TAO_CodeGen::" - "TAO_CodeGen - " - "Error opening anyop header file\n")); - } - - status = this->start_anyop_source ( be_global->be_get_anyop_source_fname () ); @@ -98,7 +84,6 @@ TAO_CodeGen::~TAO_CodeGen (void) delete this->client_inline_; delete this->server_inline_; delete this->server_template_inline_; - delete this->anyop_header_; delete this->anyop_source_; #if !defined (linux) && !defined (__QNX__) // This causes a seg fault on Linux RH 5.1. Let it leak . . . @@ -823,67 +808,6 @@ TAO_CodeGen::server_template_inline (void) } int -TAO_CodeGen::start_anyop_header (const char *fname) -{ - // Retrieve the singleton instance to the outstream factory. - TAO_OutStream_Factory *factory = TAO_OUTSTREAM_FACTORY::instance (); - - // Retrieve a specialized instance. - this->anyop_header_ = factory->make_outstream (); - - if (!this->anyop_header_) - { - return -1; - } - - if (this->anyop_header_->open (fname, - TAO_OutStream::TAO_CLI_HDR) - == -1) - { - return -1; - } - - *this->anyop_header_ << be_nl - << "// TAO_IDL - Generated from" << be_nl - << "// " << __FILE__ << ":" << __LINE__ - << be_nl << be_nl; - - // Generate the #ident string, if any. - this->gen_ident_string (this->anyop_header_); - - // Generate the #ifndef clause. - this->gen_ifndef_string (fname, - this->anyop_header_, - "_TAO_IDL_", - "_ANYOP_H_"); - - if (be_global->pre_include () != 0) - { - *this->anyop_header_ << "#include /**/ \"" - << be_global->pre_include () - << "\"" << be_nl; - } - - this->gen_standard_include (this->anyop_header_, - "tao/orbconf.h"); - - // Generate the TAO_EXPORT_MACRO macro. - *this->anyop_header_ << "\n\n#if defined (TAO_EXPORT_MACRO)\n"; - *this->anyop_header_ << "#undef TAO_EXPORT_MACRO\n"; - *this->anyop_header_ << "#endif\n"; - *this->anyop_header_ << "#define TAO_EXPORT_MACRO " - << be_global->stub_export_macro (); - - return 0; -} - -TAO_OutStream * -TAO_CodeGen::anyop_header (void) -{ - return this->anyop_header_; -} - -int TAO_CodeGen::start_anyop_source (const char *fname) { // Retrieve the singleton instance to the outstream factory. @@ -918,12 +842,6 @@ TAO_CodeGen::start_anyop_source (const char *fname) << be_global->be_get_client_hdr_fname (1) << "\""; - // Generate the include statement for the anyop header. We just - // need to put only the base names. Path info is not required. - *this->anyop_source_ << "\n#include \"" - << be_global->be_get_anyop_header_fname (1) - << "\""; - this->gen_standard_include (this->anyop_source_, "tao/Typecode.h"); @@ -1263,24 +1181,6 @@ TAO_CodeGen::end_server_skeletons (void) } int -TAO_CodeGen::end_anyop_header (void) -{ - // Code to put the last #endif. - *this->anyop_header_ << "\n\n"; - - if (be_global->post_include () != 0) - { - *this->anyop_header_ << "#include /**/ \"" - << be_global->post_include () - << "\"\n\n"; - } - - *this->anyop_header_ << "#endif /* ifndef */" << be_nl << be_nl; - - return 0; -} - -int TAO_CodeGen::end_anyop_source (void) { *this->anyop_source_ << "\n\n"; diff --git a/TAO/TAO_IDL/be/be_global.cpp b/TAO/TAO_IDL/be/be_global.cpp index 92f9cb0d698..b410ec27aa6 100644 --- a/TAO/TAO_IDL/be/be_global.cpp +++ b/TAO/TAO_IDL/be/be_global.cpp @@ -371,13 +371,6 @@ BE_GlobalData::be_get_server_template_inline_fname (int base_name_only) } const char * -BE_GlobalData::be_get_anyop_header_fname (int base_name_only) -{ - return be_get_anyop_header (idl_global->stripped_filename (), - base_name_only); -} - -const char * BE_GlobalData::be_get_anyop_source_fname (int base_name_only) { return be_get_anyop_source (idl_global->stripped_filename (), diff --git a/TAO/TAO_IDL/be/be_visitor_root/root.cpp b/TAO/TAO_IDL/be/be_visitor_root/root.cpp index 0a81b779411..61029a480d4 100644 --- a/TAO/TAO_IDL/be/be_visitor_root/root.cpp +++ b/TAO/TAO_IDL/be/be_visitor_root/root.cpp @@ -282,21 +282,9 @@ int be_visitor_root::visit_root (be_root *node) if (be_global->any_support ()) { - if (be_global->gen_anyop_files ()) - { - // Switch streams, ctx will be reassigned when this - // pass is done. - ctx.stream (tao_cg->anyop_header ()); - } - be_visitor_root_any_op visitor (&ctx); status = node->accept (&visitor); - - if (be_global->gen_anyop_files ()) - { - (void) tao_cg->end_anyop_header (); - } - } + } break; } diff --git a/TAO/TAO_IDL/be_include/be_codegen.h b/TAO/TAO_IDL/be_include/be_codegen.h index 500def365b6..c59139cf4b0 100644 --- a/TAO/TAO_IDL/be_include/be_codegen.h +++ b/TAO/TAO_IDL/be_include/be_codegen.h @@ -275,7 +275,6 @@ public: int start_server_template_skeletons (const char *fname); // Set the server template skeletons stream. - int start_anyop_header (const char *fname); int start_anyop_source (const char *fname); // TAO developers only. @@ -304,7 +303,6 @@ public: int end_server_skeletons (void); // Put a last #endif in the server skeletons. - int end_anyop_header (void); int end_anyop_source (void); // TAO developers only. @@ -438,7 +436,6 @@ private: TAO_OutStream *server_template_inline_; // Server side template inline file. - TAO_OutStream *anyop_header_; TAO_OutStream *anyop_source_; // For use by TAO developers only. diff --git a/TAO/TAO_IDL/be_include/be_global.h b/TAO/TAO_IDL/be_include/be_global.h index 63f9e376043..532c4707ec3 100644 --- a/TAO/TAO_IDL/be_include/be_global.h +++ b/TAO/TAO_IDL/be_include/be_global.h @@ -97,9 +97,6 @@ public: static const char *be_get_server_template_inline_fname ( int base_name_only = 0 ); - static const char *be_get_anyop_header_fname ( - int base_name_only = 0 - ); static const char *be_get_anyop_source_fname ( int base_name_only = 0 ); |