|
Boost-Build : |
Subject: Re: [Boost-build] B2 C++ engine development.
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2018-10-25 17:41:22
AMDG
On 10/24/2018 09:58 PM, Rene Rivera via Boost-build wrote:
> One of my goals in the future of B2 is to move the engine to something
> easier to maintain and improve. As such it's my goal to incrementally
> rewrite the engine component of B2 in C++. Yesterday I completed an initial
> step in that by having B2 compile as C++ instead of ANSI C. The code
> changes are in the "feature/cxx" branch and from outward appearances it's
> exactly the same as before except that the build scripts now invoke the C++
> compiler (only lightly tested for the compilers I have available). First
> con of this is that the executable is slightly fatter (about 20K on OSX).
> But also the first pro, it's about 4% faster.
>
Any explanation for this? Are the build options
exactly the same other than -x c++? The code
changes don't look significant, so is it just
that the stricter rules of C++ allow the optimizer
more freedom? It looks like you're not linking
the C++ runtime (which was my first guess about
the binary size increase).
> The idea is to merge this to develop, and eventually master, and continue
> the C++ work based from those (as PRs).
>
- Is there a reason that you eliminated the two stage
bootstrap process? Among other issues, you've made it
impossible to create a debug build of b2.
- While I support removing bjam, it's an entirely
separate change.
- Before this goes live, I'd like to see the files
renamed to *.cpp.
- What language standard are we targeting? filesystem
is C++17.
In Christ,
Steven Watanabe
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