Boost logo

Boost :

From: Hassan Sajjad (hassan.sajjad069_at_[hidden])
Date: 2024-03-22 09:35:48


Yes. I intend to first coexist with b2 for a brief period and then replace
it. Yes, it supports pre C++20 builds and it will support Boost internal
test suite.

 This is not trivial at all.
>

I am highly confident. Please see that what this achieves is non-trivial
as-well.
https://github.com/HassanSajjad-302/SFML/blob/43a9a2af28f6ec9656f0294fa62c1e45291221a8/hmake.cpp
.

In header-unit configuration, t compiles 232 header-units ifc and 1308
module-files(consumer of these ifc). Eight DLLs are compiled
(automatically copied to dependent executables). 17 different targets are
compiled. A target is a group of files with same compile-command. targets
can have other targets as dependencies which impacts the dependent target's
compile and link command. These targets are compiled in 3 different
configurations. So, a total of 51 targets is compiled. And 24 library
targets are compiled (8 shared libs, 16 static libs), others are
header-only libs. More configurations could be defined very easily as-well.
And that's all in 200 lines.

I have experience with b2 which would be helpful as well.

On Fri, Mar 22, 2024 at 12:36 AM Ruben Perez <rubenperez038_at_[hidden]>
wrote:

>
>>
>> 1) 2-months: Boost basic configuration compiled with C++20 header-units.
>> This is more of a lone sprint.
>>
>
> Can you please elaborate on what this means? Are you intending to replace
> the build mechanism we ship to users (as in when they build Boost by typing
> ./b2 --with-X)? If that's the case, does your system support pre C++20
> builds, which we support? Or Boost internal test suite?
>
> 2) 3-months: All boost current configurations + new with header-units and
>> modules + tests and examples.
>>
>
> Bear in mind that we have many libraries and each one has really extensive
> suits. This is not trivial at all.
>
> Thanks,
> Ruben.
>
>>


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