Boost logo

Boost-Build :

From: David Abrahams (dave_at_[hidden])
Date: 2005-05-27 12:12:30


Vladimir Prus <ghost_at_[hidden]> writes:

>> Volodya, why is this target being labelled as type RUN_PYD?! In v1,
>> that target type is reserved for the result of running a test on a
>> Python extension module. And v2 seems to be written with the same
>> intention. Python modules should have type PYD, no?
>
> It's "main-target-type". The 'bpl-test' rule is declared as this:
>
> rule bpl-test ( name : sources * : requirements * )
> {
> sources ?= $(name).py $(name).cpp ;
> return [ testing.make-test
> run-pyd : $(sources) /boost/python//boost_python
> : $(requirements) : $(name) ] ;
> }
>
> And 'make-test' indeed defines main target with the 'run-pyd' type. So the
> above output is certainly intended. You're probably looking at a way to check
> the type of the actual target we're creating.

Yes.

> Unfortunately, it's not possible from the msvc.link rule.
>
> It's easy to add this information, by hacking action.actualize (line 679 in my
> copy). However, there's one question -- what if an action produces two
> targets? Which type should be add?

Both, obviously.

> Those of the first produced target (recall that order of the targets
> is always the same as specified when declaring a generator).

Is that a question or an assertion?

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com
 

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