Boost logo

Boost :

Subject: Re: [boost] Just another GSoC project idea: Create a Bjam clone based on the Boost libraries
From: Mateusz Łoskot (mateusz_at_[hidden])
Date: 2014-02-09 15:43:18


On 9 February 2014 19:06, Boris Schäling <boris_at_[hidden]> wrote:
> Create a Bjam clone based on the Boost libraries
>
> 1. Write a parser for the most important rules (exe, lib and so on) based on
> Boost.Spirit
> 2. Use the parser's actions to create a dependency tree based on Boost.Graph
> 3. Attach Python functions to the nodes in the dependency tree based on
> Boost.Python
> 4. Implement Python functions for one toolset (like g++)
>
> The project promises a lot of variety as different Boost libraries have to
> be used. It's also an opportunity to get familiar with various Boost
> libraries. As it can be broken down into tasks it shouldn't be that
> difficult to make a realistic plan for a summer project.

I think it's an interesting idea.
It could open some new opportunities for Boost.Build.

There are a few additional related ideas which have been discussed
here and on IRC:
- Boost.Build run as a daemon (there is b2 --daemon prototype, based on dbus)
- Boost.Build command line interface could be improved
- Boost.Build API as a regular library, as lightweight network
protocol based on JSON
- Boost.Build API could allow implementations not only in Python, but
also in <your favourite scripting language here>

Some of opportunities could be integration with IDEs.
I have a functional prototype for Qt Creator, but it has obvious limitations
due to lack of complete Boost.Build parser, or better, Boost.Build API:

https://github.com/mloskot/qt-creator-plugin-boostbuild

Best regards,

-- 
Mateusz  Łoskot, http://mateusz.loskot.net

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk