Boost logo

Boost :

Subject: [boost] Just another GSoC project idea: Create a Bjam clone based on the Boost libraries
From: Boris Schäling (boris_at_[hidden])
Date: 2014-02-09 14:06:09


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.

If there is anyone interested have a look at
<https://github.com/boostcon/2011_presentations/raw/master/mon/Boost.Build.pdf>
and <http://www.highscore.de/cpp/boostbuild/> for more information about
the build system.

And of course the idea is not to create a fully featured Bjam clone in a
few months. If there is a binary at the end of the project which can build
a software based on a simple Jamfile the project is a success. It's more
important to have all the required components in place even if they are
far from complete (but once they are in place it shouldn't be too
difficult to extend them later and add support for another rule for
example).

Boris


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