[omniORB] Full COS compilation and cos.mk

Robert E. Gruber gruber@research.att.com
Fri Aug 16 14:37:00 2002


> So the first question is, how do we really get all the COS compiled.

You figured out how to get the .mk files configured to build everything,
but then you mentioned running into compile errors.  You
should just be able to go to src/services/mklib and do

gnumake export

to build the COS libraries (libCOS4, libCOSBOA4, libCOSDynamic4)
(for omniORB4, foo3 for omniORB3) and export them to lib/<arch>.  

You can then write programs that require COS stubs/skels and link against
the appropriate COS libraries.

> Second, what is the use of cos.mk 

Include it in a dir.mk, as in

include $(BASE_OMNI_TREE)/mk/cos.mk

The comments at the top of cos.mk explain how to use the make veriables
that are defined there:

# COS Stub Library
#
# Provide the following make variables to use the library
#     COS_LIB, COS_LIB_DEPEND
#   e.g.
#   foo: foo.o $(COS_LIB_DEPEND) $(CORBA_LIB_DEPEND)
#          @(libs="$(COS_LIB) $(CORBA_LIB)"; $(CXXExecutable))
#
#     COS_LIB_NODYN, COS_LIB_NODYN_DEPEND to be used when Any and Typecodes
#     of the types defined in the library are not required.
#   e.g.
#   foo: foo.o $(COS_LIB_NODYN_DEPEND) $(CORBA_LIB_DEPEND)
#          @(libs="$(COS_LIB_NODYN) $(CORBA_LIB)"; $(CXXExecutable))
#
# To use the COS idls in application IDLs
#   DIR_IDLFLAGS += $(COS_IDLFLAGS)
#
# To compile the application stubs:
#   DIR_CPPFLAGS += $(COS_CPPFLAGS)