
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/43a9a2af28f6ec9656f0294fa62c1e... . 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@gmail.com> 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.