Boost logo

Boost-Build :

Subject: Re: [Boost-build] Configurable feature values
From: Vladimir Prus (ghost_at_[hidden])
Date: 2010-01-06 14:15:49

On Monday 28 December 2009 10:05:35 Shridhar Daithankar wrote:

> Hello,
> I have a project built with bjam, which uses number of third party
> tools/libraries such as boost, imagemagick, soci etc.
> The installation prefixes of each tool differ across the machines where we are
> building the project. Any way these can be made maintainable across the
> system?
> Currently I have following in my jamroot and it is version-controlled. I tried
> moving the options to another jam file and import it but it did not work.
> ----------------------------
> project foo
> : default-build release #by default build release variant
> : build-dir build #the build goes in a separate dir 'build'
> : requirements
> <search>/usr/local #library search path, to be set only once
> <include>/usr/local/include/soci
> <include>/usr/local/include/opencv
> <include>/usr/include/ImageMagick
> ----------------------------
> I am not looking for autoconf. Just a build specific file that can be hand-
> maintained. I searched around but didn't come across anything viable.
> Any help is appreciated. Thanks :)

If you are using SVN trunk of Boost.Build, you can create a file named project-config.jam
in the root of your project. That file might have:

        path-constant SOCI_INCLUDES : /usr/local/include/soci ;

and your jamroot can then have:


This way, configuration changes are in a single file. In fact, you can add
to the version control, with default values, and ask each developer to copy it
into project-config.jam and make changes. This way, local config changes
will not show up in the output of 'your-version-control-system diff'.

Is this what you were asking for, or I have misunderstood?

- Volodya


- Volodya

Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at