From: Vladimir Prus (ghost_at_[hidden])
Date: 2005-10-04 10:15:07
On Tuesday 04 October 2005 18:58, Alexey Pakhunov wrote:
> Vladimir Prus wrote:
> > This patch is committed. I have one concern though -- I think tracking of
> > dependency from .rc to .tlb won't work unless .tlb happen to be derived
> > type from .h. The c-compiler only tracks dependencies on target derived
> > from Boost.Build H type.
> Interesting. I didn't know it.
> I thought that the .rc scanner will detect all included files and call
> INCLUDES and/or DEPENDS so that .rc will depend on the found files.
> Isn't it enough?
That is almost enough. The last trick is that you have to add paths to
generated files to header search directory. That is done by
subvariant.implciit-includes rule (in virtual-target.jam), and if you look at
the compile-action class in builtin.jam you'll see this:
local s = [ $(self.targets).creating-subvariant ] ;
return [ $(property-set).add-raw
[ $(s).implicit-includes "include" : H ] ] ;
That's where the extra <include> comes from. And without extra includes, V2
just won't find files included from .rc file.
> > Am I missing something? (I certainly don't know what's .tlb is, anyway).
> It is all about .idl files support. I posted it some time ago and I'm
> going to repost fixed patch soon. It will add an ability to process .idl
> (MS IDL) files using midl.exe. Among other things the tool produces .tlb
> file which may be included into resources (.rc).
Ok. Looking forward to that patch.
-- Vladimir Prus http://vladimir_prus.blogspot.com Boost.Build V2: http://boost.org/boost-build2
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