Boost logo

Boost-Build :

Subject: Re: [Boost-build] [boost] Python port development
From: Vladimir Prus (ghost_at_[hidden])
Date: 2010-07-09 01:54:17


On Thursday 08 July 2010 23:47:20 Artyom wrote:

> I have few questions:
>
>
> ** Would new build system still require writing Jam Files? **
> -----------------------------------------------------------------
>
> According to description looks it it keeps bjam .
>
> IF **YES** :
>
>
>
> How does this addresses following issue:
>
> > No user knows that language, making it hard to extend Boost.Build or become new
> >developer.
> >
>
>
> As writing build scripts is far form specifying sources, libraries and
> executable I don't see
> how this forwards Boost.Build. Because bjam syntax remains same cryptic unknown
> and badly documented
> language.

The subset that you need for basic Jamfiles is actually nicely documented and
causes little problems. It's becoming a problem -- in practice, and for active
users of Boost.Build -- when you start to need to extend it by writing procedural
code, or worse, by creating custom generator classes.

> On the other hand it adds even more complexity requiring installation of both
> Python, BBv2 and bjam.

What makes you think so? For starters, Boost.Build and bjam are the same, there
will be no separate installation. For windows, there will probably be a single
installer.

> Even worth, it seems that BBv2 evolves in something like autotools (at least
> last one well documented):
> Where configuration system and build rules has two entry different languages
> (automake and autoconf).
>
> Isn't it step backward?
>
>
> IF **NO** :
>
>
> Why implement totally new build system in Python AND Bjam when there are several
> existing ones:
>
> - SCons already written in python and require only it.
> - CMake the build system that exists, supported and works (it probably only
> normal build system
> that supports Windows)

Because those systems have different designs, one that I consider inferior.

> Why spending many man-hours in order to write new build system instead of
> improving existing ones?

There's no way you can improve cmake into anything sensible.

> ** What version of Python BBv2 will support **
> ----------------------------------------------
>
> Python had recently released the last 2.7 version and put 2.x branch for
> maintenance, so do
> you plan using Python 3?

It will be 2.* for now.

Thanks,

--
Vladimir Prus
http://vladimir_prus.blogspot.com
Boost.Build: http://boost.org/boost-build2

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