-
Notifications
You must be signed in to change notification settings - Fork 0
ci(nightly): drop the musl linker override so rustc keeps the link (#683) #717
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
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -465,8 +465,19 @@ jobs: | |
| timeout-minutes: 60 | ||
| env: | ||
| TARGET: x86_64-unknown-linux-musl | ||
| # cc-rs needs this so aws-lc-sys' C and assembly compile for the musl | ||
| # target. It is deliberately NOT paired with a matching | ||
| # CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_LINKER. That variable would hand | ||
| # the link to musl-gcc - a spec-file wrapper around the host gcc whose | ||
| # specs select musl's DYNAMIC loader - so the build silently emits a | ||
| # binary carrying a PT_INTERP segment, and `-C target-feature=+crt-static` | ||
| # cannot win the link back once musl-gcc is driving it. Rust's | ||
| # x86_64-unknown-linux-musl target ships its own self-contained musl and | ||
| # static-links by default, so the correct move is to leave the link to | ||
| # rustc rather than take it away. Dropping that override is wfl#683; the | ||
| # regression it prevents is wfl#616 reappearing. The `Assert the binaries | ||
| # are statically linked` step below is what proves this held. | ||
|
Comment on lines
+477
to
+479
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
The AGENTS.md reference: AGENTS.md:L129-L137 Useful? React with 👍 / 👎. |
||
| CC_x86_64_unknown_linux_musl: musl-gcc | ||
|
Comment on lines
+468
to
480
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🔍 Removing the linker override changes which compiler drives the link, and the stack-size link-arg must still pass through With Was this helpful? React with 👍 or 👎 to provide feedback. |
||
| CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_LINKER: musl-gcc | ||
| # Matches the BUILD_INFO the old wflbuild tarballs carried: no debug | ||
| # symbols in the shipped artifact. Also keeps target/ far below the ~30 GB | ||
| # ceiling CLAUDE.md warns about, so no disk-space dance is needed here. | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔍 No PR-triggered lane exercises this job, so the change is unverified until the next nightly
build-linuxexists only innightly.ymland is gated oncheck-for-changes.outputs.should_build == 'true', so no pull-request event can run it. TheAssert the binaries are statically linkedstep is therefore the sole detector and it first executes after merge. If the default-linker path fails outright (e.g. hostcccannot find the self-contained musl objects), the nightly build breaks rather than degrading, which is the safer failure mode, but the merge is effectively unvalidated at review time.Was this helpful? React with 👍 or 👎 to provide feedback.