|
Boost : |
Subject: [boost] Distributed Boost with CMake: proposal and volunteering
From: Daniel Pfeifer (daniel_at_[hidden])
Date: 2011-01-29 06:21:54
Hi all,
I would like to propose my approach to a modularized build of the Boost
C++ Libraries with CMake.
The project is found on http://github.com/purpleKarrot/Boost.CMake
The following features are currently implemented:
* Aggregate modules from different sources (CVS, SVN, GIT, tarballs,
...).
* Build, Test, Install
* Create a binary installer with selectable components for Windows.
* Create a source package (with the modules included) that can do
everything in this list (except the first entry).
* Create a Debian source package that can be uploaded to a Launchpad
PPA where it is built and packaged into many binary Debian packages.
* Build Documentation (the usual quickbook-doxygen-boostbook-chain).
* Tested on Windows (Visual Studio 10) and Ubuntu (GCC).
* Precompiled headers (currently MSVC only).
* Build two Boost.MPI libraries on Debian: boost_openmpi and
boost_mpich2.
* Tests actually make use of Boost's autolinking feature.
This tool would allow the following Boost development process:
* Each Boost library uses it's own repository (no matter which VCS)
* Boost.CMake has a list of modules (or multiple list: eg 'boost' and
'incubating')
* A modules definition consists of the information about where to get
the source code from.
* Boost.CMake can be used to aggregate all modules, run tests, build
release packages...
* Incubating libraries can be tested before they become an official
part of boost.
Please note that I am not proposing a development process. I am just
proposing a tool.
I am volunteering to extend and maintain the tool so that it can (help
to) drive the development process.
If you decide that all libraries should use git, I can drop the support
for all other VCSs, no problem.
Also, I am happy to implement other missing features.
In the next couple of days I was going to write some documentation and
a tutorial how to migrate the libraries to CMake.
Cheers, Daniel
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk