[omniORB] Porting 2.7.0 to Borland C++Builder

Mikhail Soukhanov mik@astra.relline.ru
Mon, 08 Feb 1999 18:17:12 +0300


Hi!

I have been trying to adjust omniORB's make files to get it compile with
Borland C++Builder command-line tools (after applying Thomas'
modifications to the source) but temporarily gave up because
command-line tools seem to have a lot more bugs than the IDE, especially
in the link phase. First, tlink (2.5.0.0) can not link omniidl2 at all
exiting with unknown fatal error. Second, all DLLs have to be linked
against VCL library, else they crash at program start-up. Third (but not
the last), there is always a number of unresolved external symbols which
do not appear with IDE link. No luck so far.

By that time, omniORB 2.7.0 was out, so I decided to transfer the same
Thomas' modifications and try to build it under IDE. It took not so much
time, but the current split of DLLs added to the mess with
_OMNIORB_*_NTDLL_IMPORT macros. Also, some tricky bug with expanding
inline class methods popped up (had to introduce _CORBA_INLINE_FN and
_CORBA_OUT_OF_LINE macros to work around it). At last, I made omniidl2
compile and run; omnithreads, omniORB, omniDynamic and omniNames compile
but the latter hangs when started.

Unfortunately, for the next couple of weeks I have some other work at
hand and meanwhile will not be able to investigate the problem further.
Can anybody look into it? I have collected all files modified for BCB in
the ZIP archive. Those are to be overlaid over the original 2.7.0
distribution. The archive is accessible at
<http://astra.relline.ru./devel/omniORB_2.7.0-bcb_3.0.zip> or I will
mail it directly to anybody interested and answer any questions I can. 

By the way, could omniORB maintainers be so kind to add Borland specific
modifications to the main source distribution (none of the patches seems
to disturb other compilers stuff). This will save some work while trying
to port each new version.

Best regards, and I would like to hear any comments soon,

				Mikhail Soukhanov <mik@astra.relline.ru.>