Closed illicitonion closed 9 months ago
Initial code-drop: https://github.com/bazel-contrib/musl-toolchain/pull/1
Screenshot of what the generated GitHub actions end up like:
Screenshot of what a generated release looks like:
Something worth calling out: The ARM macOS build requires billing to be enabled for the org, and the "build musl" actions are sloooow, so the other platforms will reasonably quickly churn through the free actions quota.
Approved at the Bazel Rules SIG meeting on 2023-10-31 without the arm MacOS CI runners.
@illicitonion When the CI MacOS arm stuff is disabled, let us know and we can get someone to approve the PR.
I just pushed https://github.com/bazel-contrib/musl-toolchain/pull/1/commits/af7cfa292cb4392861f3a60218d30ebfbd26dfd4 removing the macOS ARM support :) Thanks @cgrindel!
Is there more to do on this issue, or can it be closed?
As discussed in previous meetings, we have scripted the creation of a
cc_toolchain
which usesmusl
to produce statically-linked binaries, and which can be built cross-platform (e.g. Linux binaries can be built from macOS).From the criteria:
Happy to Apache-2.0.
Yes - this applies to anyone who wants a C++ toolchain with Bazel, similar to https://github.com/aspect-build/gcc-toolchain.
Yes - @illicitonion
Yes - my company has been using this and releasing binaries to production based on it for several years. There's no reason this wouldn't reasonably apply to any other user too.
Yes - We have CI that verifies binaries built on each of {linux x86-64, macOS x86-64, macOS arm64} successfully run on a linux x86-64 worker, and a README explaining how to use. We don't have API documentation similar to https://github.com/aspect-build/gcc-toolchain the API is just: register the toolchain.
Yes.
@illicitonion and @gibfahn have signed up as initial maintainers, my company can provide more if needed.
Sure.
CI currently tests 6.3.2. Happy to target future LTSes as they're released.