Boost logo

Boost-Build :

Subject: Re: [Boost-build] The future of B2?
From: Konstantin Litvinenko (to.darkangel_at_[hidden])
Date: 2016-10-02 14:24:56


On 09/27/2016 03:32 AM, Rene Rivera wrote:
> Recently I've been doing some cmake, yes I said cmake, for work. And
> this recent experience, and a quick survey of other current build
> systems, has convinced me that there's still nothing like b2. And by
> that I mean nothing that solves the same set of problems with a good set
> of abstractions. Although there are one or two that are moving in our
> direction. But alas, b2 is not widely used. And I can name many reasons
> as to why that might be. But I'd rather discuss where I want b2 to be in
> the future. And hopefully get us moving in a direction that will make b2
> widely used.
>
> Let me start with something rather simple sounding.. What I want to be
> able to do with b2 in my day to day work & play-work (note that this is
> a royal "I" as I'm projecting what others have expressed over the years):

Long time ago I was in love with BB2. But then, when I start to use it
in a big project, thing start to go bad :( Hard to understand error
messages, hard to fix them, hard to extend and startup time starts to
kill edit/compile cycles. I love concepts that BB2 had introduced, but
this startup time...

And then I started my own C++ rewrite of BB2 :), I call it Hammer. That
was, and still is, a real fun for me. Its slowly evolving, but already
have most of BB2 core functionality. Still there are infinity number of
things to do :)

The syntax and semantic very close to BB2, so just looking at
'hamfile'-s you can easily figure out what is going on.

Recently I even added simple package management - looks cool to the c++
guy :), when tool download and install 67 packages, mostly boost's libs.

If you or someone else want to take a look - there is repo for
bootstrapping:

https://github.com/darkangel-ua/hammer-bootstrap

You can clone and run 'build.sh'. It will take time to download boost
from official repo, its a big file :) Build script will produce deb
file, but you can just copy $repo/build/hammer/driver/build/hammer
executable generated by CMake :) into $repo/hammer/driver/work/ and than
run ./hammer. At this point hammer will try to build itself using public
packages that I've made. Its mostly boost libs with special seasoning :)

Looks like right now it can be build only on linux-x64 platforms because
of libantlr3c hardcoded config.h (shy). Recently it was build-able on
Windows platform, but right now I doubt it will.

I didn't plan to reintroduce my tool right now - I did this in 2009 oO -
but after I saw your post I decided to give it a shot. Feel free to ask.

P.S.
Also I wrote simple QtCreator plugin to have some sort of native support
in my favorite IDE :). Very simple - just to load/build(externally
calling hammer)/run/debug and have working competition/file navigation.


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