|
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:
<include>$(SOCI_INCLUDES)
This way, configuration changes are in a single file. In fact, you can add project-config.jam.in
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 acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk