Boost logo

Boost-Build :

From: Ilya Sokolov (fal_delivery_at_[hidden])
Date: 2006-05-05 05:45:10


Emil Dotchevski wrote:

> if I have a jamfile which defines a project and a lib
> target, what is the difference between specifying usage requirements through
> the usage-requirements attribute of the project vs. specifying them in the
> lib target?

all project attributes including usage-requirements will be propagated
to the subprojects

> In fact I am so confused by projects that I don't understand how am I
> supposed to refer to boost.thread in my jamfiles! Do I use /boost/thread?
> Or, do I have to refer to the boost_thread target explicitly like so:
> /boost/thread//boost_thread.

see
http://boost.org/doc/html/bbv2/advanced/jamfiles.html#bbv2.advanced.projects,
`Projects' and
http://boost.org/doc/html/bbv2/reference/definitions.html#bbv2.reference.ids,

`Target identifiers and references'

if you refer to project you refer to all targets in that project.

You can use project-id in any place where such project-id is _known_.
For example, in the case of

> project boost/thread
> : source-location ../src
> : usage-requirements $(usage)
> : requirements $(reqts) <threading>multi
> : default-build <threading>multi
> ;

`boost/thread' project-id is known in all subprojects of /boost/thread
(first slash is used to refer by project-id and not by file-path).

Another example:

if you put

use-project /tp/fox : [path-to-fox] ;

to your Jamroot file, you will be able to use `/tp/fox' everywhere


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