On Wed, Sep 26, 2018 at 11:26 AM Stefan Seefeld
Hi Rene,
On 2018-09-26 02:16 PM, Rene Rivera wrote:
On Wed, Sep 26, 2018 at 10:28 AM Stefan Seefeld via Boost < boost@lists.boost.org> wrote:
Personally I'd go as far as suggesting that it be a requirement for any new build tool proposal that individual projects be compilable (and installable) individually.
I should mention.. that there's nothing in B2 that prevents that modularity.
I'm not exactly sure what you mean by "prevent", but as far as I know, modular builds (at least the variant as I describe it in my other reply) aren't supported by Boost.Build right now. I'd be more than happy to be proven wrong.
(I know we have gone over exactly this question years ago, when you told me that it could be done with a bit of adjustment to the Boost.Build internal code. Has anything changed since then ?)
They are prevented by the Boost building scripts, i.e. boost-root/jamroot. If Boost was willing to be truly modular it would be a fairly simple matter to make each Boost library it's own B2 project (i.e with their own jamroot) and import dependencies with the usual B2 "using" declaration you would easily get individual builds (which like cmake would also force dealing with cycles). That would be at least equivalent to the cmake "add_subdirectory" suggestions (although it would give you a bit more). About the only "new" piece of functionality needed, like cmake, would be to Boost define a standard for what installed Boost library modules means. With such a definition it would then also be easy to also account for externally installed modular Boost library with B2. Although we do already have part of that in the B2 equivalent of FindBoost < https://github.com/boostorg/build/blob/develop/src/contrib/boost.jam> (note that the file is 10 years old). Hence, there is nothing new here. It's always been possible for Boost to be modular without cmake. And ultimately it's not a question of what build system Boost uses.. It's always solely been a question of the structure of Boost. Sorry if that sounds like a rant. But I tire of people placing blame at B2's feet. -- -- Rene Rivera -- Grafik - Don't Assume Anything -- Robot Dreams - http://robot-dreams.net