Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2008-04-06 14:18:43


Boost.Build allows one to build several variants in one go, and
there are two ways to specify those variants on the command line:

1. Implicit. If you specify, say

        link=static link=shared <other properties>

then two builds will be done:

        link=static <other properties>
        link=shared <other properties>

2. Explicit. You can specify:

        link=static/whatever=foo link=shared/something=bar

The second method is well, more explicit, but it has the problem with
the following:

        link=static/include=/usr/foo/bar

Of course, we can use greedy parsing for include to make this work, but
then 'include' must be at the end, and there's no way to specify more
than one path feature. We could try to use other separators, but given
that free features can contain anything, that's not very nice. Maybe,
we can require quoting, like this:

        link=static/include="/usr/foo/bar"/something=whatever

Any other ideas? Maybe, a completely different syntax? Say

        bjam link=static include=/usr/foo/bar -- link=shared something=whatever?

This last syntax in theory makes it possible to build different targets with
different properties, though I'm not sure I want to support it.

Or maybe we should just disallow this fancy syntax, and use only implicit way
to build several variants?

- 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