Boost logo

Boost-Build :

Subject: [Boost-build] path-constant does not work inside project-config.jam
From: Johan Nilsson (r.johan.nilsson_at_[hidden])
Date: 2009-11-12 09:14:30


Hi,

I'm trying to use project-config.jam to extend BOOST_BUILD_PATH for my
entire project. However, it seems like when using path-constant here, the
path remains relative to the current working directory.

Some more details:

- I have a custom toolset, e.g. x.jam, that I'd like to use within my
project.
- I've got a boost "extension" catalog located under
<Jamroot>/src/tools/build/boostbuildext, where x.jam is located.
- Inside project-config.jam I'd like to init the toolset; e.g. "using x :
<version> ;"
- Using Boost.Build/Boost.Jam from trunk.

When building from root, the toolset can be found by adding this to the
beginning of project-config:

path-constant boost-build-ext-path : src/tools/build/boostbuildext ;
local boost-build-path = [ modules.peek : BOOST_BUILD_PATH ] ;
modules.poke : BOOST_BUILD_PATH : $(boost-build-ext-path)
$(boost-build-path) ;

However, when building from a subproject, boost-build-ext-path is set to
e.g. "<Jamroot>/path/to/subproject/src/tools/build/boostbuildext". It seems
like the project-config module isn't initialized in the same way as e.g.
Jamfiles are.

Any workarounds? I'd really prefer not to rely on environment variables.

/ Johan


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