Local linking notes ...

TODO:
    + Why not:
	+ all constructors operators etc. still 'inline'.
	+ just 'getType' etc. shared ...
	+ CPPU_INTERNAL_INLINE ?
	    + throw/catch will generate all except info ...
	+ if (do_internal) ...
	+ Minimal changes - go the other way [!]
	    + (foo)

    + Need different guards in .hpp & .hppi files
	+ and no redundancy [!]
	+ [ since .hppi files cascade include .hpp ]

	+ FIXME: should aIncludes be built in all
	  'dumpFiles' non-chaining overrides ?

	+ .hidden symbols (?)

	+ Different approach ?
[1]	    + emit #ifdefs into the .hpp files (?) - so they do ~nothing ;-)
		+ API re-factoring (?)
		    + [foo] +
	    + [ specific to header ? => back compat ? ]
	    + [ fewer changes / conditionals etc. ]
	    + Fixes include issues ...
	    + no need to change 'inlines' though ...
		+ nothing explicitely inline

	+ Don't emit stuff for polymorphic foo:
	    + whack the static method data out there
		+ doesn't matter if there's a duplicate [I hope]

	+ XInterface.hdl
	    + - very problematic - ...
	    + WOW !
		+ removing the 
 ::com::sun::star::uno::Type const & cppu_detail_getUnoType(::com::sun::star::uno::XInterface const *);
		+ prototype from XInterface.idl - makes it build !

    + hpp different from .hdl
	+ keep both [!?]
	+ different in include depth
	    + add 'bGenImpl' flag to dumpHxxFile

    + we want -all- include files
    + we want -all- C named typenames etc.

+ Looking good bug evil bugs:

../unxlngi6.pro/inc/com/sun/star/corba/iiop/Version.hppi: In constructor ‘com::sun::star::corba::iiop::Version::Version()’:
../unxlngi6.pro/inc/com/sun/star/corba/iiop/Version.hppi:31: error: class ‘com::sun::star::corba::iiop::Version’ does not have any field named ‘gnu_dev_major’
../unxlngi6.pro/inc/com/sun/star/corba/iiop/Version.hppi:32: error: class ‘com::sun::star::corba::iiop::Version’ does not have any field named ‘gnu_dev_minor’
...
Pre-processor nightmare from:

sys/sysmacros.h:extern __inline unsigned int gnu_dev_major (unsigned long long int __dev)
sys/sysmacros.h:extern __inline unsigned long long int gnu_dev_makedev (unsigned int __major,
sys/sysmacros.h:__NTH (gnu_dev_major (unsigned long long int __dev))
sys/sysmacros.h:__NTH (gnu_dev_makedev (unsigned int __major, unsigned int __minor))
sys/sysmacros.h:# define major(dev) gnu_dev_major (dev)
sys/sysmacros.h:# define makedev(maj, min) gnu_dev_makedev (maj, min)

from sys/types.h
from stdlib.h
from sal/config.h


...
../unxlngi6.pro/inc/com/sun/star/drawing/CaptionEscapeDirection.hdl: At global scope:
../unxlngi6.pro/inc/com/sun/star/drawing/CaptionEscapeDirection.hdl:19: error: expected unqualified-id before ‘=’ token



+ startup speedup:
    + 1st pass
	+ generate unotypes.so
			+ soffice.bin - link vs. that.
			+ ensure it is dlopened' global before
				+ any other library is opened [?]
			+ include all .hpp files
			+ remove 'inline' keywords
			+ generate dummy / empty .hpp files
			+ *.hppi files (?)
			    + hpp impl.
		    + un-inline constructors etc.
		    + link all uno components to it
			+ do as patch: then cws-commit-patch
		+ 2nd pass
		    + remove types.rdb (6Mb) and export types
		      from unotypes.so

		+ [ link soffice.bin to it ? ]
		+ link all uno components to it ?



+ Very odd problem:

	+ foo has:
	+ GOTOFF -
		+ 'offset of this foo inside my library'
		+ just can't be done: we don't define that symbol
		    + so *why* is it generating a GOTOFF reloc ?
000002eb  00004509 R_386_GOTOFF           00000000   com::sun::star::uno::RuntimeException::~RuntimeException()
	...

	+ As we generate the 'throw RuntimeException'
	    + we have to (it seems) have the exception type info
		+ and GOTOFF pointers to stuff ...
		    + also - all these construct / destroy routines
		      are ~empty (?)
		    + or are they ?