[meta] add aarch64-unknown-linux-musl release target#3025
Conversation
This provides a statically-linked ARM64 Linux binary with no runtime library dependencies, useful for Alpine containers and minimal Linux environments. Changes: - Add `aarch64-unknown-linux-musl` to the release workflow build matrix. - Add rustflags configuration for the new target in `.cargo/config.toml`. - Add the `linux-arm-musl` URL alias for convenient downloads. - Update installation documentation with the new option.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3025 +/- ##
==========================================
+ Coverage 82.98% 83.02% +0.04%
==========================================
Files 155 155
Lines 42136 42251 +115
==========================================
+ Hits 34965 35081 +116
+ Misses 7171 7170 -1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
|
||
| [target.aarch64-unknown-linux-musl] | ||
| # See https://github.com/rust-lang/compiler-team/issues/422 for why we're specifying +crt-static. We | ||
| # always want musl builds to be static. | ||
| rustflags = ["-C", "target-feature=+crt-static", "--cfg", "tokio_unstable"] |
There was a problem hiding this comment.
Can this be combined with x86_64-unknown-linux-musl above? target.'cfg(target_env = "musl")' maybe?
There was a problem hiding this comment.
Confirmed this works - updated in af5cc9d.
| <!-- TODO: This entry needs to be placed in the correct version section before release --> | ||
| <!-- BEGIN UNRELEASED ENTRY --> | ||
|
|
||
| ### Added |
There was a problem hiding this comment.
I'd just add an ## Unreleased heading here.
We've done this through adding the next version here (which would be 0.9.125). It's okay that that link wouldn't lead to anywhere. |
|
thanks for the help, i'll try to get it all applied tomorrow. |
Use target.'cfg(target_env = "musl")' instead of separate sections for x86_64-unknown-linux-musl and aarch64-unknown-linux-musl. This applies the +crt-static flag to all musl targets automatically.
This comment was marked as duplicate.
This comment was marked as duplicate.
Replace TODO comments and markers with a proper "## Unreleased" section heading as suggested in PR review.
Summary
aarch64-unknown-linux-muslto the release workflow, providing a statically-linked ARM64 Linux binary with no runtime library dependencies.linux-arm-muslURL alias for convenient downloads.Motivation
This complements the existing
x86_64-unknown-linux-musltarget (added in #399) to provide a more complete matrix of musl builds. Immediate use case: altendky/onshape-mcp#39Guidance requested
This PR includes a draft changelog entry and documentation updates with TODO comments for version information. However, reviewing the project's changelog workflow, it appears changelogs may be prepared at release time rather than per-PR.
Questions:
<!-- md:version X.Y.Z -->annotations be handled?