Boost logo

Boost :

Subject: Re: [boost] proposal - modularize Boost build system
From: Stefan Seefeld (stefan_at_[hidden])
Date: 2017-06-19 19:38:51


On 19.06.2017 14:58, Peter Dimov via Boost wrote:
> Stefan Seefeld wrote:
>> Then what about the second point, which was:
>>
>> > 2) Define a clear interface the outer build logic will use to
>> invoke the > nested build commands.
>
> The clear interface at present is that you need to have a Jamfile.
> Building using something else as part of the global build is not
> supported, unless you somehow invoke this something else from your
> Jamfile. But this would imply that whatever something else you pick -
> for instance, SCons - would now become a prerequisite for building Boost.
>
>> In other words, what does that Jamroot file need to contain at a
>> minimum, to satisfy the global build processes (i.e., the ones used
>> to build Boost as a whole, including building release docs etc.) ?
>
> The global build process currently in use requires you to not have a
> Jamroot.
>
>> There are globally called rules such as "boost-install",
>> "boostrelease", etc. that seem to be required.
>
> Yes, if you want to use the boost-install rule, it won't work without
> the global Boost Jamroot.
>
> I'm not entirely clear on what we're talking about here though. Are we
> in the "git clone boostorg/python" standalone case yet, or are we in
> "git clone --recursive boostorg/boost", except you want to use SCons
> for libs/python instead?

*Sigh*. Am I expressing myself really that poorly ?

I want more autonomy / independence for individual libraries. I want to
be able to build them stand-alone, which you tell me already works if I
have toplevel Jamroot in my repo, except you then tell me that I may in
fact not because the global build process requires me not to have that.

I also want to be able to pick my own build (etc.) tools, not in
addition to Boost.Build, but instead of it. I understand that right now
that's not supported, which is why I'm writing this proposal. What would
it take for Boost to support individual libraries to be built with
anything else ? What requirements would that "anything" have to meet,
and how would it interact with the existing infrastructure to work ? Is
that such a strange request ?

        Stefan

-- 
      ...ich hab' noch einen Koffer in Berlin...

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