Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bringing rules_boost to BCR #573

Open
Vertexwahn opened this issue Jun 10, 2024 · 3 comments
Open

Bringing rules_boost to BCR #573

Vertexwahn opened this issue Jun 10, 2024 · 3 comments

Comments

@Vertexwahn
Copy link
Collaborator

Vertexwahn commented Jun 10, 2024

We should bring rules_boost to the Bazel Central Registry.

In the long term there should be rules_boost (this repo) and boost as drafted here in the BCR.

I see rules_boost as the short term solution and boost (as shown in the draft) as the long term solution. It is cleaner in some ways - for instance when depending only on a single header library of boost you are not forced to fetched the whole boost library. Or in cases when you depend only on single boost module (e.g. Boost Asio). Also the boost (as shown in the draft) enable us to support different boost version (e.g. 1.84.0 and 1.85.0) at the same time (some user might want stick to an old boost version for some reason). Futhermore, it does not need awkward workaround for "zlib.h" includes.

@hofbi
Copy link

hofbi commented Jul 31, 2024

@nelhage A kind reminder about this issue.

@Vertexwahn
Copy link
Collaborator Author

Vertexwahn commented Aug 12, 2024

@hofbi rules_boost have some drawbacks. For instance, only one specific boost version at a time is supported. Another problem is if you want to use only a header-only library such as boost.uuid you have to fetch the whole rules boost package (for Boost 1.85.0 approx. 200 MB) for a "single header". There is a more BCR idiomatic way of doing this.

It seems the bringing Boost to BCR (in a BCR idiomatic way) already started:
bazelbuild/bazel-central-registry#2580

I would keep this repo as a reference until we find a complete Boost 1.83.0 on the BCR.

Feel free to join the effort and provide PRs to BCR

@Vertexwahn
Copy link
Collaborator Author

Vertexwahn commented Aug 29, 2024

Just a short update - meanwhile the following Boost 1.83.0 modules landed in the BCR:

  • boost.array
  • boost.assert
  • boost.bind
  • boost.concept_check
  • boost.config
  • boost.container_hash
  • boost.core
  • boost.describe
  • boost.detail
  • boost.endian
  • boost.exception
  • boost.function
  • boost.functional
  • boost.function_types
  • boost.integer
  • boost.io
  • boost.move
  • boost.mp11
  • boost.mpl
  • boost.optional
  • boost.pool
  • boost.predef
  • boost.preprocessor
  • boost.rational
  • boost.smart_ptr
  • boost.static_assert
  • boost.throw_exception
  • boost.tuple
  • boost.type_index
  • boost.typeof
  • boost.type_traits
  • boost.unordered
  • boost.utility
  • boost.uuid
  • boost.variant
  • boost.variant2
  • boost.winapi

I think in one month there will be even more...

If someone needs a newer version (e.g 1.86.0) trivial copy & pasting and changing version numbers should do it in the most cases.

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

No branches or pull requests

2 participants