Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2003-09-12 01:51:08


chyipin wrote:

> As stated previously, I successfully used Boost.Build V2 M6 to build
> a project that uses my own library successfully. However, now, I'm
> trying to use the Boost library too (i.e., date_time, fs). But, it
> seems that the Boost Build uses the Jamfile in the specified library
> and those Jamfile are for Boost.Build V1. I thought invoking bjam --
> v2 might do trick, but it didn't select Jamfile.v2. I tried the most
> recent Boost.Build (M7) too but to no avail.
>
> Is there any variable(s) that I can set to use Boost libraries
> Jamfile.v2?

Until now, I've used a separate directory tree which the same structure as
Boost, but containing only Jamfile. Those Jamfiles were referring to main
boost tree as source-location. It worked, but I'd agree if you say it's not
very convenient.

I've just tweaked the source to search for Jamfile.v2 and prefer it to any
other found Jamfile. Could you getting
http://zigzag.cs.msu.su:7813/~ghost/working_copy/new/project.jam, place it to
"new" directory of Boost.Build tree and try again?

> I exported BOOST_ROOT to my env, but it seems that bjam no longer
> have BOOST_ROOT defined when it is running. Why is this so?
>
> [cplim_at_enlnxs t]$ cat Jamfile
> ECHO $(BOOST_ROOT) ;
> [cplim_at_enlnxs t]$ bjam

In V1, everything was in a big can ("global namespace"). In V2, each module,
including Jamfiles, has its own namespace. Environmental variables are in
global namespace and are not visible. It's possible to get at them with

import modules ;
ECHO [ modules.peek : $(BOOST_ROOT) ] ;

And, or course,

bjam --help modules
bjam --help modules.peek

are there if you're interested in details.

- 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