Boost logo

Boost-Build :

Subject: Re: [Boost-build] RFC: Boost.Build Python Prototype
From: Vladimir Prus (vladimir.prus_at_[hidden])
Date: 2016-11-15 02:42:22


Hi Stefan,

On 14-Nov-16 10:54 PM, Stefan Seefeld wrote:
> Hi there,
>
> A few weeks ago I started to look into a new Python frontend for
> Boost.Build. After quite a few nights of exploration, I'm now happy to
> present first results:
>
> In https://stefanseefeld.github.io/boost.build/doc/html/index.html I
> describe a few examples of how to write build logic with this prototype.

I appreciate your putting together a prototype of how things might look
in pure Python!

However, I am not sure I agree with the direction your prototype took.
The key parts of Boost.Build design are metatargets, portable properties
and generators. Looks like you've dropped all of that:

- Yes, metatargets are complex parts of Boost.Build, but I think it's
   an essential parts. The fact that you can generate a metatarget with
   different properties gives quite some flexibility - in particular
   Boost users that to build multiple variants of the libraries, and run
   tests in different combination of properties. When you say that it's
   easy to chain some invocations, I think you just gloss over the issue.

- You also seem to not have any notion of portable build properties -
   instead each tool just accepts whatever it pleases. I can't see any
   support for automatically generating build directories based on
   properties. There does not seem to be any support for computing final
   build properties based on requested ones.

- Looks like the action/target mechanism basically reimplements all
   of Boost.Build generators

If you believe the above mechanisms are not necessary, then why don't
you think SCons is the answer?

Thanks,
Volodya

-- 
Vladimir Prus
https://vladimirprus.com

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