|
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