[omniORB] Porting omniORB
Sai-Lai Lo
S.Lo@uk.research.att.com
24 Mar 1999 12:13:50 +0000
>>>>> erik ivanenko writes:
> Here are my assumptions:
> 1) Since RTEMS is for an embedded system, I will set the EmbeddedSystem
> variable. This should cause ONLY lib to be built.
Yes.
> 2) There are three variables used:
> HOSTBINDIR
> BINDIR
> LIBDIR
> The HOSTBINDIR variable identifies the location of the IDL compiler.
> The BINDIR and LIBDIR variables identifies the locations where the
> target binaries and target libraries will be deposited.
Yes
> 3) Since the cross-compiler is based on egcs-1.1b, and since the the
> following flags will be set in the rtems.mk . ( this replaces the
> win32s.mk)
> IMPORT_CPPFLAGS += -D_HAS_Cplusplus_Namespace
_HAS_Cplusplus_Namespace as you can guess uses C++ namespace to represent
IDL module. This is a compiler dependent feature. If you look into
include/omniORB2/CORBA_sysdep.h, this flag is automatically enabled when
the compiler is egcs-1.1.1.
In general, we use IMPORT_CPPFLAGS to add -D flags to uniquely identifier
a platform. These flags are in turn tested in CORBA_sysdep.h to enable
specific features in the ORB.
> 5) Since the target is an x86, the symbol -D__x86__ is defined:
> IMPORT_CPPFLAGS += =D__x86__
Correct!
> 6) The cross compiler is located by setting CXX inside
> platform/i386-rtems-4.0.mk.
> CXX = i386-rtems-g++
> This assumes that the path environment variable is set so that
> i386-rtems-g++ can be located.
Since you are using egcs, you can also use the g++/gcc driver and with
-B -v flags to instruct it to use the appropriate cross compiler backend.
> 7) The RTEMS posix compliance has been determined as:
> OMNITHREAD_POSIX_CPPFLAGS = -DPthreadDraftVersion=10
> -DPthreadSuppprtThreadPriority
Correct!
> 8) The CONFIG_DEFAULT_LOCATION is meaningless, since there is no
> filesystem on rtems-4.0
In that case, you will have to use the -ORBinitialHost and -ORBinitialPort
at the command line.
> 9) Another define -D__rtems__ is created inside
> platforms/i386-rtems-4.0.0 to control conditional compilation within
> initFile.cc. We must ensure that NO attempt to open a default config
> file is present.
> IMPORT_CPPFLAGS=-D__rtems__
Correct.
Hope the info is useful.
Sai-Lai
--
Sai-Lai Lo S.Lo@uk.research.att.com
AT&T Laboratories Cambridge WWW: http://www.uk.research.att.com
24a Trumpington Street Tel: +44 223 343000
Cambridge CB2 1QA Fax: +44 223 313542
ENGLAND