From: Alexey Pakhunov (alexeypa_at_[hidden])
Date: 2005-05-18 13:25:45
Reece Dunn wrote:
> Can you get it so that it generates the other files as well? The proxy stubs
> (%_p.c), dlldata (%_dlldata.c) and type libraries (%.tlb).
.tlb is generated already. I forgot to mention it. :)
I'm going to add proxy generation as well. Basically my goal is allow
building COM servers like wizard-generated project in Visual Studio does.
> Does the following work:
> lib mycomdll : myidl.idl mycomdll.cpp ;
> // mycomdll.cpp
> #include <initguid.h>
> #include "myidl.h"
> #include "myidl_i.c"
> // ...
Currently you need not include "myidl_i.c". It will be compiled and
linked automatically. I did nothing to achieve it. This works because of
the way how Boost.Build build dependencies.
> You need to ensure that the IDL file is processed first (so that the source
> files can use the generated files) and that the output path is added to the
> include path.
This also works. See
> This might get complicated if you have an exe that uses the generated files,
> This would then add <include>bin/msvc-7.1/release or wherever mycomdll is
> being built to in both mycomdll and driver. However, it may need something
> to indicate that it is a target path, e.g. <include-target>mycomdll.
See the same link above. It should work without additional efforts.
> It would also be a good idea to provide support for CORBA IDL compilation,
> although I don't know enough about CORBA to know what needs to be changed.
> What would happen if you have a CORBA IDL file and use:
> lib corbaidl : corba.idl ... ;
Honestly I know nothing about CORBA and CORBA idl. In order to support
CORBA .idl we will need (probably) to modify the scanner and use
separate toolset for building CORBA .idl files.
> with msvc?
Well, I don't know is it really possible but it can look like this:
lib midl_lib : a.idl<toolset>msvc ;
lib corba_lib : b.idl<toolset>corba ;
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk