[omniORB] Status of MacOS omniORB port

Stephen Coy stevec@cia.com.au
Sat, 03 Apr 1999 01:12:33 +1000


Hello,

I have finally managed to get a preview release of the MacOS omniORB port
into a distributable state.

An omniORB2 adaption kit for MacOS can be found on my web site at:

   http://www.cia.com.au/stevec/

Please don't try to use the omniidl compiler that is on the site. It's a
work in progress and no where near prime time. It's of academic interest
only at present.

The associated "read me" is replicated below:

                        omniORB2 on MacOS platforms.
                        ============================

This file contains information on installing, building, and using omniORB2
on MacOS platforms.

OmniORB has been tested with the following software configuration:

- Operating System  : MacOS 8.5.1
- Architecture      : PowerPC
- Compiler          : Metrowerks CodeWarrior Pro 4


Introduction
============

This file accompanies a MacOS adaption kit for omniORB 2.7.1. As such, it
does not contain the complete set of omniORB source files. These must be
obtained from the omniORB web site at
http://www.uk.research.att.com/omniORB/omniORB.html.

The adaption kit contains:

a) Modified versions of a small number of original omniORB source files;
b) New source files that explicitly support the MacOS;
c) omniidl output files, so that the examples can be built without stuffing
around;
d) A Metrowerks CodeWarrior Pro 4 project file for building the libraries
and sample programs.

MacOS CORBA applications built with omniORB and this kit use native Open
Transport for tcp/ip communications and native MacOS threads.

At this point in time, the adaption kit supports building:

a) omnithread library;
b) orbcore library;
c) all of the threads examples;
d) the "echo" examples.

In time, the remaining omniORB components will be incorporated, with the
ultimate goal being having it added to the main distribution.


Installation
============

The Stuffit archive containing this document and the kit components reflects
the folder hierachy used by the omniORB distribution itself.

Obtain the omniORB2 distribution from the web site above and install it
somewhere on your development machine.

Using the Finder, drag the kit components to the corresponding folders in
the omniORB hierachy.

Building
========

Open the CodeWarrior project file and Make the "thread" target. This will
build the precompiled headers, omnithread library and the threads examples.

Make the "echo" target. This will build the orbcore library and the "echo"
examples.

Using
=====

The primary hassle at the moment is the lack of a Mac based IDL compiler.
Consequently, a Linux or Windows machine is required for handling this task.


About the Examples
==================

All of the original omniORB examples have been modified substantially so
that they can be executed properly under the Mac's cooperative multitasking
OS.

You will find that in most cases, the same pattern was used to do this. Each
sample program's "main" has been changed to "main_thread" and a mechanism
provided for passing command line parameters to it. This allows the real
main program to loop and handle regular MacOS events.

For uniformity, all the samples put up a dialog asking for command line
parameters, even if parameters are not required.

All of the "echo" examples have been tested both Mac<->Mac and Mac<->Linux.


Other Random Thoughts
=====================

You will find that you won't get far until you've had a look at "The omniORB
2 Users Guide"

There are no current plans to support MacOS 68k platforms. The timers used
in the omnithread library will need changes if anyone is contemplating this.
If anyone does need this, you probably won't have to twist my arm too hard!



Enjoy!

Steve Coy
Resolve Software

3rd April 1999