[omniORB] Full COS compilation and cos.mk

Alexy Khrabrov alexy.khrabrov@setup.org
Fri Aug 16 02:37:01 2002


OK, seems like I found the line to uncomment in 
src/services/mklib/cosinterfaces.mk in v4:
_____
# Uncomment this line to optimize the size of the COS library by only
# including things required by omniNotify.

OPTIMIZE_OMNINOTIFY = 1
^^^^^
uncommented in the snapshot tarball!
=====

and the lines to comment/uncomment in .../mklib/libdefs.mk v3/4:
_____
# Edit COS_INTERFACES to select which COS idl to build into the stub library.
#
# All the interfaces:
# COS_INTERFACES = $(COS_ALL_INT)
# Or just the Notification interfaces:
COS_INTERFACES = $(TIMEBASE_INT) $(COS_EVT_INT) $(COS_NFY_INT) $(COS_LCB_INT)
^^^^^
again, this is the default!
-----
# Or pick your own subset
# COS_INTERFACES = <pick you own subset from below>
=====

However, v4 with properly set 

cosinterfaces.mk:
# OPTIMIZE_OMNINOTIFY = 1
[and]
libdefs.mk:
COS_INTERFACES = $(COS_ALL_INT)
# ...

don't compile, as omni/idl/*.idl files, such as ir.idl, are not compiled
while ir.hh is needed.  I manually compiled it and got a bit further, than
got an error:

CosLicensingManagerSK.cc: In method `class CosLicensingManager::LicenseHandle * CosLicensingManager::_objref_ProducerSpecificLicenseService::start_use(const char *, const char *, CosPropertyService::_objref_PropertySet *, CosEventComm::_objref_PushConsumer *, CosLicensingManager::Challenge &)':
CosLicensingManagerSK.cc:460: parse error before `)'

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

Second, what is the use of cos.mk -- I don't see it included into any other
.mk -- so if I do use COS services/libraries, where should I include cos.mk,
i.e. perhaps at the beginning of dir.mk?

Cheers,
Alexy