Boost logo

Boost-Build :

From: Valentin Samko (boost.build_at_[hidden])
Date: 2005-07-05 15:38:01

I am trying to adapt bbv2 to use it instead of existing build system
for a large project, and one of the requirements is to be able to have several
libraries/projects with the same name, but different version numbers.

I am happy to add new bjam rules for these requirements, but I am not
sure I understand how to write these rules. I found <version> feature
and corresponding rules in \v2\build\modifiers.jam with a small example
in \v2\example\versioned\jamfile.jam. What exactly does this future do,
and how can it be used? Does it let user have several projects with
the same name, but different version numbers (or at least several libraries with
the same name)?

Also, is it possible to write a rule/feature which will modify the list of all
the dependencies of the current executable? How?

For example, I have executable "A" which uses library "L1", and "L1" uses
library "L2.v1.01", and I would like executable "A" (by adding a
rule/feature/...) to link to "L2.v1.02" instead of "L2.v1.01"
(without recompiling "L1", which uses "L2.v1.01").
I can guarantee binary interface compatability between "L2.v1.01" and
In other words, I would like to be able to use L2.v1.01 in my
executable "A" without recompiling "L1", which was compiled against "L2.v1.01".


Valentin Samko

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