Boost logo

Boost :

Subject: Re: [boost] Why Boost.Build?
From: Dominique Devienne (ddevienne_at_[hidden])
Date: 2011-03-30 10:35:19


On Tue, Mar 29, 2011 at 8:42 PM, Dave Abrahams <dave_at_[hidden]> wrote:
> [...] almost everything in a Jamfile has to be done declaratively
> and everything must be parameterized to accept multiple build options,
> instead of accepting straightforward procedural code and dealing with
> a concrete set of build properties corresponding to the
> currently-selected configuration. [...]

I've rarely heard the criticism of a build being too declarative!

Having created large builds in the past (using Make and Ant) and now
working with CMake, I feel that most builds in fact *lack* in their
declarative nature, which makes them intractable when they grow large
enough. CMake IMHO falls into that trap as well, relying too heavily
on procedural code (with poor syntax too IMHO). Yes, build
extensibility and flexibility do require a full featured scripting
environment, but it's better exposed via a declarative facade. Too
often the build is not even aware of the intended modularization of
the software being built, and the dependencies of these
modules/libraries/subsystems/etc... to document and enforce them for
instance. (getting back to just lurking now)


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk