[omniORB] ir.idl?

Sai-Lai Lo S.Lo@uk.research.att.com
24 Apr 2001 11:53:55 +0100


Mike,

Because what is defined in corbaidl.idl and ir.idl appears within the CORBA
namespace, we have to treat the header files differently so that the
declarations appear in the right scope even for the compilers that does not
support namespace. The consequence is that the header files for these 2
idls are splitted into several fragments and got included from CORBA.h at
several different places.

Simply put it, corbaidl.hh and ir.hh does not exist and does not needed to
be included.

Please add the following to the end of CORBA.h

#ifndef __corbaidl_hh_EXTERNAL_GUARD__
#define __corbaidl_hh_EXTERNAL_GUARD__
#endif
#ifdef ENABLE_CLIENT_IR_SUPPORT
#ifndef __ir_hh_EXTERNAL_GUARD__
#define __ir_hh_EXTERNAL_GUARD__
#endif
#endif

This disables the include in the COSQuery stub header and you will be fine
as long as you define ENABLE_CLIENT_IR_SUPPORT.

Regards,

Sai-Lai


>>>>> Mike Ladwig writes:

> Hello.
> I have a fairly large codebase written using OmniORB 2.7, and I am trying
> to port to 3.03.  One thing in the codebase is an implementation of
> CosQuery, which needs to include ir.idl to get the InterfaceDef
> specification.  OmniORB thoughtfully includes this file, and the idl
> compiler finds it fine.  However, the CosQuery.hh file generated by omniidl
> has the following special include block:

> #ifndef __corbaidl_hh_EXTERNAL_GUARD__
> #define __corbaidl_hh_EXTERNAL_GUARD__
> #include <corbaidl.hh>
> #endif
> #ifndef __ir_hh_EXTERNAL_GUARD__
> #define __ir_hh_EXTERNAL_GUARD__
> #include <ir.hh>
> #endif
> #ifndef __CosQueryCollection_hh_EXTERNAL_GUARD__
> #define __CosQueryCollection_hh_EXTERNAL_GUARD__
> #include <CosQueryCollection.hh>
> #endif

> Unfortunately, the <corbaidl.hh> and <ir.hh> files don't appear to exist.

> I know about the ENABLE_CLIENT_IR_SUPPORT compile option in
> 'CORBA_sysdep.h', but it didn't appear to cause any special magic to occur.

> Does anyone have ideas on this?  My next step is to try and generate these
> files manually, but a quick attempt earlier failed.

> Thanks,
> mike.

> (Please cc me on any replies)



-- 
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 1223 343000
Cambridge CB2 1QA                     Fax:   +44 1223 313542
ENGLAND