Skip to content

Make tier 3 musl targets link dynamically by default #144410

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

Merged
merged 1 commit into from
Aug 1, 2025

Conversation

Gelbpunkt
Copy link
Contributor

Since we don't build std for these and don't provide any support for them, these can trivially be changed to link dynamically by default.

Since we don't build std for these and don't provide any support for
them, these can trivially be changed to link dynamically by default.

Signed-off-by: Jens Reidel <[email protected]>
@rustbot
Copy link
Collaborator

rustbot commented Jul 24, 2025

r? @SparrowLii

rustbot has assigned @SparrowLii.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jul 24, 2025
@rustbot
Copy link
Collaborator

rustbot commented Jul 24, 2025

These commits modify compiler targets.
(See the Target Tier Policy.)

@rustbot rustbot added the T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. label Jul 24, 2025
@jieyouxu
Copy link
Member

Pinging target maintainers as a heads-up:

  • mips64-unknown-linux-muslabi64: @Gelbpunkt
  • hexagon-unknown-linux-musl: @androm3da
  • powerpc64-unknown-linux-musl: @Gelbpunkt @famfo @neuschaefer
  • powerpc-unknown-linux-musl: no platform support page / no listed target maintainer
  • powerpc-unknown-linux-muslspe: @BKPepe
  • riscv32gc-unknown-linux-musl: no platform support page / no listed target maintainer
  • s390x-unknown-linux-musl: @uweigand
  • thumbv7neon-unknown-linux-musleabihf: no platform support page / no listed target maintainer

@Gelbpunkt
Copy link
Contributor Author

Just FYI, the hexagon target already links dynamically by default, I just removed the explicit line there since the default musl target already links dynamically. So hexagon doesn't change behavior here :)

@androm3da
Copy link
Contributor

Just FYI, the hexagon target already links dynamically by default, I just removed the explicit line there since the default musl target already links dynamically. So hexagon doesn't change behavior here :)

Thanks - LGTM.

@petrochenkov
Copy link
Contributor

IIRC, there was an official decision to switch all musl targets to dynamically-linked-by-default, which didn't turn into an actual implementation.
It would be good to find it and link it from here.

@Gelbpunkt
Copy link
Contributor Author

Gelbpunkt commented Jul 25, 2025

which didn't turn into an actual implementation.

It (partially) did, the base linux_musl target is dynamically linked now, so any new targets will be dynamically linked. Noone has taken onto the existing ones yet.

I'm working on implementing the lint that was proposed in the MCP as a step towards changing the tier 2 targets to be dynamically linked, but that lint isn't necessary to change the tier 3 targets like done in this PR.

The original MCP is rust-lang/compiler-team#422

@Gelbpunkt
Copy link
Contributor Author

@jieyouxu hi there, it's been a week so I was wondering whether this could be merged?
Out of the affected targets, only 4 of them have maintainers listed, and all of them except powerpc-unknown-linux-muslspe have shown their agreement with this PR. The powerpc-unknown-linux-muslspe target currently is broken anyways (#138960), so I think there's nothing stopping this.

@jieyouxu
Copy link
Member

jieyouxu commented Aug 1, 2025

IIRC, there was an official decision to switch all musl targets to dynamically-linked-by-default, which didn't turn into an actual implementation. It would be good to find it and link it from here.

I believe this was rust-lang/compiler-team#422.

Copy link
Member

@jieyouxu jieyouxu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Judging from the thumb ups and explicit approvals, there is consensus in favor of this change from all pinged target maintainers. Since these targets are all Tier 3 and do not have pre-compiled std, we can make this change without too much hassle.

@jieyouxu
Copy link
Member

jieyouxu commented Aug 1, 2025

Thanks! I'll tag this with relnotes just so users of these targets might have a chance to be aware of this change.
r? jieyouxu @bors r+ rollup

@bors
Copy link
Collaborator

bors commented Aug 1, 2025

📌 Commit effcd54 has been approved by jieyouxu

It is now in the queue for this repository.

@rustbot rustbot assigned jieyouxu and unassigned SparrowLii Aug 1, 2025
@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 1, 2025
@jieyouxu jieyouxu added the relnotes Marks issues that should be documented in the release notes of the next release. label Aug 1, 2025
RalfJung added a commit to RalfJung/rust that referenced this pull request Aug 1, 2025
…eyouxu

Make tier 3 musl targets link dynamically by default

Since we don't build std for these and don't provide any support for them, these can trivially be changed to link dynamically by default.
bors added a commit that referenced this pull request Aug 1, 2025
Rollup of 6 pull requests

Successful merges:

 - #144397 (`tests/ui/issues/`: The Issues Strike Back [2/N])
 - #144410 (Make tier 3 musl targets link dynamically by default)
 - #144708 (Add tracing to step.rs and friends)
 - #144730 (Create a typed wrapper for codegen backends in bootstrap)
 - #144771 (Remove some noisy triagebot pings for myself)
 - #144772 (add unsupported_calling_conventions to lint list)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit fce6771 into rust-lang:master Aug 1, 2025
10 checks passed
@rustbot rustbot added this to the 1.90.0 milestone Aug 1, 2025
rust-timer added a commit that referenced this pull request Aug 1, 2025
Rollup merge of #144410 - Gelbpunkt:musl-tier3-dynamic, r=jieyouxu

Make tier 3 musl targets link dynamically by default

Since we don't build std for these and don't provide any support for them, these can trivially be changed to link dynamically by default.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
relnotes Marks issues that should be documented in the release notes of the next release. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants