Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2002-10-16 09:21:19


David Abrahams wrote:
> Vladimir Prus <ghost_at_[hidden]> writes:
>
>
>>David Abrahams wrote:
>
>
>>Actually, the code we have now is not very friendly to fake targets.
>>Everything in command line which is not property or option is considered
>>target id, so you can write:
>>
>> bjam @/boost/test
>>
>>It won't build dependency graph for entire boost and then update part of
>>it. It will call 'generate' method on project target for the specified
>>library only.
>
>
> I like that fact. My theory about the above is that it should treat
> all targets you name as main targets, and if it can find them it
> should be satisfied. If any targets don't name main targets, then it
> should try to build more parts of the dependency graph.

I like your theory. Specifically, if we have element in command line for
which we can't find an abstract target, then we generate graph for the
project in "." and look for all virtual targets which the requested name
(and type).

>>OTOH, to make fake targets works are explained above, you'd need to
>>construct full dependency graph for project in "." and then update
>>part of it.
>>
>>Probably, we can introduce additional syntax, for example
>>
>> bjam @/boost/test foo:OBJ
>>
>>This will mean
>> 1. Update target @/boost/test
>> 2. Update all targets called "foo" with type OBJ in "."
>>
>>I guess
>>
>> bjam dir1/foo.o
>>
>>is something rare, so we should not bother supporting it.
>
>
> Yeah, it is... though I think we ought to consider supporting such
> things as:
>
> bjam --compile=foo/bar/baz.cpp
> bjam --preprocess=foo/bar.cpp
>
>
> and probably also:
>
> bjam --recompile=foo/bar/baz.cpp # no dependency checking!

Well, the last thing is just "-a" switch to bjam. About "--compile"...
is it in any way different from

bjam foo/bar/baz.o

?

- Volodya

 


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