Skip to content

Conversation

@grafikrobot
Copy link
Member

@grafikrobot grafikrobot commented Jul 20, 2024

This is part of the effort to make the Boost libraries "modular" for build and consumption. See https://lists.boost.org/Archives/boost/2024/01/255704.php and https://github.com/grafikrobot/boost-b2-modular/blob/b2-modular/README.adoc for more information.

This PR depends on the following other PRs being merged to both develop and master branches of the respective repos:

This PR will be changed to ready for review, i.e. not draft, when the above are merged. Do not merge this one until that time.

@grafikrobot grafikrobot marked this pull request as ready for review August 18, 2024 15:27
@grafikrobot
Copy link
Member Author

Please review and merge this PR at your earliest convenience.

@grafikrobot
Copy link
Member Author

@zajo replying here as it's easier for me to keep track of questions/issues..

I use b2 only to build the unit tests, as long as this functionality doesn't break, I don't think LEAF needs this. What user would benefit from this change and how?

Some benefits:

  • It makes it possible for user to directly consume the library from B2 in a modular way, which int he case of LEAF would be a standalone mode since it doesn't have public Boost dependencies.
  • It makes it easier to package the library in a modular way. I.e. vcpkg and Conan wont have to do heroics to modularize the Boost release. As modular use will be directly supported.

I understand that other benefits from other use cases might not apply to LEAF because it doesn't depend on other Boost libraries (neither does mine, Predef, and that doesn't even depend on Boost for tests). But if at some future point another Boost library, or perhaps a non-Boost library, depends on LEAF and uses B2 it will need the public declaration of the project and project target to make it work (to add the include dir path and any build requirements).

This generally brings B2 on par with what's in the CML. Hence if you think having a CML is useful.. Then having this PR is useful for the same reasons.

@pdimov pdimov merged commit f4034fe into boostorg:develop May 2, 2025
34 of 35 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants