
On Tue, May 8, 2012 at 3:54 PM, Nathan Ridge <zeratul976@hotmail.com> wrote:
Hello,
I am developing a new C++ library (unrelated to Boost) and I need to choose a build system for it.
I had originally planned to use Boost.Build, because I figured that it would be particularly suitable for a C++ library, and because I've come to associate Boost with high quality and excellence.
However, recently I've heard talk of Boost switching its own build system from Boost.Build to CMake (in fact, the currently active thread about modularization suggests that this change is imminent). My understanding is that Boost is the primary user of Boost.Build, and therefore I am concerned about what this switch means for the future of Boost.Build.
Do you think choosing Boost.Build as the build system for a project is still a sound choice, or am I better off choosing something else like CMake?
More generally, what build system would you recommend for a C++ library?
My requirements for the build system are the following: - straightforward support for multiple variants of the build (32-bit vs. 64-bit, debug vs. release, static vs. shared, etc.), including coexistence of multiple variants on the same machine - general ease of use (for the library writer and library users) - suitability for a C++ project - cross-platform, FOSS
Any thoughts are appreciated.
Actually the mention of CMake in that very same modularization thread piqued my interest as well. The build system I have the most experience with (and that's not saying too much) is SCons, and only because (a) it was the build system on the software project I primarily used to develop for; and (b) it encouraged me to learn Python, so as far as learning new syntaxes (syntices?), I killed two birds with one stone. SCons works for me, I like the fact that it uses Python syntax, and I know other people in my research group who also use SCons for other projects and enjoy it. There is a comparison of SCons with other build systems (CMake and Boost.Build among them) on the scons.org wiki [1]. That said, if it's not too off-topic, I'm also curious to hear from those who've used CMake vs Boost.Build (vs SCons?). - Jeff [1] http://www.scons.org/wiki/SconsVsOtherBuildTools P.S.: There's this quote from [1]: "The Boost.Build team is seriously considering the use of Scons as its low-level build substrate." How long ago was this?