Bug 1089

Summary: Eliminate unnecessary #includes to reduce build time.
Product: TAO Reporter: Jeff Parsons <parsons>
Component: ORBAssignee: DOC Center Support List (internal) <tao-support>
Status: RESOLVED FIXED    
Severity: enhancement    
Priority: P3    
Version: 1.2   
Hardware: All   
OS: All   
Bug Depends on: 1369    
Bug Blocks:    

Description Jeff Parsons 2001-11-19 15:38:37 CST
This list was provided by Carlos O"Ryan <coryan@uci.edu>.

1) Eliminate #includes or substitute forward declarations for them.

2) Find #includes that are only used to satisfy some inlined code, evaluate
if the inline code is in the critical path and if not take the code
out-of-line and eliminate the #include.

3) Check if the files are including helper classes not used in the interface
of the ORB but in its implementation.  If that is the case the offending
classes should be moved to their own #includes and used only in the required
.cpp files.

4) Search for repetitive code in the .h files and change that to templates
or other mechanism that reduces parsing time.

5) Search for code that is currently in OS.h and could be moved to a
separate ace/OS_Foo.h file (see my posting about the compilation time for
OS_String.h).

6) Currently corbafwd.h is there only because we needed to support compilers
without namespace support.  After 1.2.1 all the compilers we (DOC group),
Riverace and/or OCI support will have namespaces, we can then break
corbafwd.h in multiple pieces and use that to reduce the parsing time and
maybe the number of #includes.
Comment 1 Jeff Parsons 2001-11-19 15:39:11 CST
Accepted on behalf of tao-support.
Comment 2 Carlos O'Ryan 2002-12-08 14:19:32 CST
Bug 1369 describes how to use templates and other techniques to reduce the
generated code size.
Comment 3 Nanbor Wang 2003-11-05 20:10:27 CST
Recent changes outlined in these entries have taken things far beyond what is outlined in this 
report. We have now come to the extent of including only necessary stuff in the generated code 
instead of tao/corba.h.

Sat Nov  1 05:40:21 UTC 2003  Don Hinton  <dhinton@dresystems.com>
Tue Oct 28 12:02:47 2003  Balachandran Natarajan <bala@dre.vanderbilt.edu>

Closing this bug. We need to be thinking of other ways from now on. This is history