[omniORB] Porting omniORB

erik.ivanenko erik.ivanenko@utoronto.ca
Tue, 23 Mar 1999 16:57:58 -0800


This is a multi-part message in MIME format.
--------------BEDEB38C903FDE87233330A7
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

I am just starting to try to port omniORB2 to RTEMS.   I am only at the
beginning, so I don't know how all this goes together.  In fact, the
bulk of my questions could be very stupid.  Please bear with me.

The port is being based on the ETSkernel.  This may or may not be the
correct starting point.

Any help here would be very appreciated.

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.

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.

Points 3/4/5:

 Since IMPORT_CPPFLAGS are propogated to CPPFLAGS via beforedir.mk,  it
can be used to set ALL required FLAGS.

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

4) Since the target architecture assumes that a Nameserver is running
elsewhere:

IMPORT_CPPFLAGS += -DENABLE_CLIENT_IR_SUPPORT

5) Since the target is an x86, the symbol -D__x86__ is defined:

IMPORT_CPPFLAGS += =D__x86__

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.

7) The RTEMS posix compliance has been determined as:

OMNITHREAD_POSIX_CPPFLAGS = -DPthreadDraftVersion=10
-DPthreadSuppprtThreadPriority

This is set inside platform/i386-rtems-4.0.mk.

8)  The CONFIG_DEFAULT_LOCATION is meaningless, since there is no
filesystem on rtems-4.0

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__

10) The __rtems__ symbol is also used to select string.h rather than
strings.h.  No strings.h is available.

11) I am unsure about where to set -D__GLIBC__=2 or -D_GNUC variables (
wrong spelling, but hopefully the point is made. )

12) I have not set anything re: CXXDEBUGOPTIONS etc.

Any help would be most appreciated.


Thanks in advance.

--------------BEDEB38C903FDE87233330A7
Content-Type: text/x-vcard; charset=us-ascii; name="vcard.vcf"
Content-Transfer-Encoding: 7bit
Content-Description: Card for Erik Ivanenko
Content-Disposition: attachment; filename="vcard.vcf"

begin:          vcard
fn:             Erik Ivanenko
n:              Ivanenko;Erik
org:            University of Toronto
email;internet: erik.ivanenko@utoronto.ca
title:          Supervisor, Controls Services
x-mozilla-cpt:  ;0
x-mozilla-html: TRUE
version:        2.1
end:            vcard


--------------BEDEB38C903FDE87233330A7--