|
Boost : |
Subject: Re: [boost] [ot] choosing a build system
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2012-05-08 22:37:17
AMDG
On 05/08/2012 03:54 PM, Nathan Ridge wrote:
>
> 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?
>
Vladimir has stated that he intends
to continue support for Boost.Build
even if Boost itself switches away.
At this point, switching to CMake is
not a done deal, anyway.
> 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
You should be able to do this with
any build system. Boost.Build
supports this directly. For CMake,
depending on the backend, you can
use separate build directories for each
variant.
> - general ease of use (for the library writer and library users)
> - suitability for a C++ project
> - cross-platform, FOSS
>
In Christ,
Steven Watanabe
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk