Boost logo

Boost-Build :

Subject: [Boost-build] Boost.Build API and server mode
From: Vladimir Prus (vladimir.prus_at_[hidden])
Date: 2015-03-30 10:52:01


I've spend some time in February and March to prototype at API for Boost.Build.
The goal was to make it easy for IDE to issue request and discover information it
needs, without having to parse Jamfiles or build output.

Also, I've prototyped server mode - where Boost.Build runs indefinitely, accepting
requests to build the project. Locally, that cuts down of Jamfile parsing when using
IDE. It also opens the door to watching filesystem changes and updating the targets
graph, often eliminating any wait when building. In the cloud, it makes it easy to
do C++ builds on a powerful server, while working from iPad - and can easily extend
to more practical scenarios too.

This work was based on Python version of Boost.Build, and is now available at the 'server' branch:

        https://github.com/boostorg/build/tree/server

The API is documented at:

        https://github.com/boostorg/build/wiki/API

My colleague Mohamed Azab has implement Eclipse support for same, at:

        https://github.com/mazab/cdt_b2_server

Finally, there's an online demo, which might be the easiest way to try this:

        http://vladimirprus.com/talks/boosting-cdt-builds/demo

All of this is early prototype, but it implements all the important use case, and I'd appreciate any comments
about this direction.

Thanks in advance!

-- 
Vladimir Prus
http://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