Skip to content

Conversation

tgross35
Copy link
Contributor

@tgross35 tgross35 commented Jun 4, 2025

Many of std's dependency have a dependency on the crates.io compiler-builtins when used with the feature rustc-std-workspace-core. Use a Cargo patch to select the in-tree version instead.

compiler-builtins is also added as a dependency of rustc-std-workspace-core so these crates can remove their crates.io dependency in the future.

Zulip discussion: #t-compiler > Using in-tree compiler-builtins

Once this merges, the following PRs will need to make it to a release for the relevant crates:

The above should cover all tier 1 targets with no std features enabled. The remaining cover the rest:

try-job: x86_64-gnu
try-job: test-various

@rustbot rustbot added A-compiler-builtins Area: compiler-builtins (https://github.com/rust-lang/compiler-builtins) T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Jun 4, 2025
@rust-log-analyzer

This comment has been minimized.

@tgross35 tgross35 added the rla-silenced Silences rust-log-analyzer postings to the PR it's added on. label Jun 4, 2025
@rustbot rustbot added A-tidy Area: The tidy tool T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Jun 4, 2025
@tgross35

This comment was marked as outdated.

@rust-bors

This comment was marked as outdated.

rust-bors bot added a commit that referenced this pull request Jun 4, 2025
WIP: Use the in-tree compiler-builtins for the sysroot

Zulip discussion: [#t-compiler > Using in-tree compiler-builtins](https://rust-lang.zulipchat.com/#narrow/channel/131828-t-compiler/topic/Using.20in-tree.20compiler-builtins/with/522445336)

try-job: x86_64-gnu
try-job: test-various
@tgross35 tgross35 force-pushed the use-in-tree-builtins branch 2 times, most recently from 94592d3 to 3c91330 Compare June 4, 2025 21:01
@tgross35

This comment was marked as outdated.

@rust-bors

This comment was marked as outdated.

@tgross35

This comment was marked as off-topic.

@rust-bors

This comment was marked as off-topic.

@tgross35 tgross35 force-pushed the use-in-tree-builtins branch 2 times, most recently from e3edcc4 to 145c702 Compare June 4, 2025 22:28
@tgross35

This comment was marked as outdated.

@rust-bors

This comment was marked as outdated.

rust-bors bot added a commit that referenced this pull request Jun 4, 2025
WIP: Use the in-tree compiler-builtins for the sysroot

Many of `std`'s dependency have a dependency on the crates.io `compiler-builtins` when used with the feature `rustc-std-workspace-core`. Use a Cargo patch to select the in-tree version instead.

`compiler-builtins` is also added as a dependency of `rustc-std-workspace-core` so these crates can remove their crates.io dependency in the future.

Zulip discussion: [#t-compiler > Using in-tree compiler-builtins](https://rust-lang.zulipchat.com/#narrow/channel/131828-t-compiler/topic/Using.20in-tree.20compiler-builtins/with/522445336)

try-job: x86_64-gnu
try-job: x86_64-gnu-aux
try-job: test-various
@tgross35

This comment was marked as outdated.

@tgross35 tgross35 force-pushed the use-in-tree-builtins branch from 145c702 to a543f01 Compare June 4, 2025 22:28
@rust-bors

This comment was marked as outdated.

@tgross35 tgross35 changed the title WIP: Use the in-tree compiler-builtins for the sysroot Use the in-tree compiler-builtins for the sysroot Jun 4, 2025
@tgross35 tgross35 marked this pull request as ready for review June 4, 2025 22:30
@tgross35
Copy link
Contributor Author

tgross35 commented Jun 4, 2025

I believe this works now. The first two commits are cherry picks that I will drop once #142036 merges.

r? @bjorn3

tgross35 added a commit to tgross35/cfg-if that referenced this pull request Jun 9, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
tgross35 pushed a commit to tgross35/compiler-builtins that referenced this pull request Jun 9, 2025
Rollup of 5 pull requests

Successful merges:

 - rust-lang/rust#140767 (Stabilize `sha512`, `sm3` and `sm4` for x86)
 - rust-lang/rust#141001 (Make NonZero<char> possible)
 - rust-lang/rust#141993 (Use the in-tree `compiler-builtins` for the sysroot)
 - rust-lang/rust#142208 (Always consider `const _` items as live for dead code analysis)
 - rust-lang/rust#142238 (stabilize nonnull_provenance)

r? `@ghost`
`@rustbot` modify labels: rollup
Manishearth pushed a commit to unicode-rs/unicode-width that referenced this pull request Jun 9, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
github-merge-queue bot pushed a commit to rust-lang/stdarch that referenced this pull request Jun 9, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
tgross35 added a commit to tgross35/rustc-demangle that referenced this pull request Jun 10, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

A new `compiler_builtins` feature is added for compatibility, but it
should eventually be removed.

[1]: rust-lang/rust#141993
Mark-Simulacrum pushed a commit to rust-lang/rustc-demangle that referenced this pull request Jun 10, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

A new `compiler_builtins` feature is added for compatibility, but it
should eventually be removed.

[1]: rust-lang/rust#141993
github-actions bot pushed a commit to rust-lang/miri that referenced this pull request Jun 10, 2025
Rollup of 5 pull requests

Successful merges:

 - rust-lang/rust#140767 (Stabilize `sha512`, `sm3` and `sm4` for x86)
 - rust-lang/rust#141001 (Make NonZero<char> possible)
 - rust-lang/rust#141993 (Use the in-tree `compiler-builtins` for the sysroot)
 - rust-lang/rust#142208 (Always consider `const _` items as live for dead code analysis)
 - rust-lang/rust#142238 (stabilize nonnull_provenance)

r? `@ghost`
`@rustbot` modify labels: rollup
alexcrichton pushed a commit to bytecodealliance/wasi-rs that referenced this pull request Jun 10, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
alexcrichton pushed a commit to bytecodealliance/wasi-rs that referenced this pull request Jun 10, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
alexcrichton pushed a commit to bytecodealliance/wasi-rs that referenced this pull request Jun 10, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
philipc pushed a commit to gimli-rs/object that referenced this pull request Jun 11, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
philipc pushed a commit to gimli-rs/gimli that referenced this pull request Jun 11, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
philipc pushed a commit to gimli-rs/addr2line that referenced this pull request Jun 11, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
BurntSushi pushed a commit to BurntSushi/memchr that referenced this pull request Jun 11, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993

PR #180
tgross35 added a commit to tgross35/rust-sgx that referenced this pull request Jun 14, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
madhav-madhusoodanan pushed a commit to madhav-madhusoodanan/stdarch that referenced this pull request Jun 16, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
Kobzol pushed a commit to Kobzol/rust that referenced this pull request Jun 16, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang#141993
dvdhrm pushed a commit to r-efi/r-efi that referenced this pull request Jun 17, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
dvdhrm pushed a commit to r-efi/r-efi-alloc that referenced this pull request Jun 17, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
tautschnig pushed a commit to model-checking/verify-rust-std that referenced this pull request Jun 17, 2025
…jorn3

Use the in-tree `compiler-builtins` for the sysroot

Many of `std`'s dependency have a dependency on the crates.io `compiler-builtins` when used with the feature `rustc-std-workspace-core`. Use a Cargo patch to select the in-tree version instead.

`compiler-builtins` is also added as a dependency of `rustc-std-workspace-core` so these crates can remove their crates.io dependency in the future.

Zulip discussion: [#t-compiler > Using in-tree compiler-builtins](https://rust-lang.zulipchat.com/#narrow/channel/131828-t-compiler/topic/Using.20in-tree.20compiler-builtins/with/522445336)

Once this merges, the following PRs will need to make it to a release for the relevant crates:

- rust-lang/getopts#119 (can merge at any time)
- rust-lang/hashbrown#625 (can merge at any time)
- rust-lang/stdarch#1825
- rust-lang/rustc-demangle#80
- rust-lang/cfg-if#84
- unicode-rs/unicode-width#77

The above should cover all tier 1 targets with no `std` features enabled. The remaining cover the rest:

- alexcrichton/dlmalloc-rs#50 (wasm, xous, sgx)
- gimli-rs/gimli#769
- r-efi/r-efi#89 (efi)
- r-efi/r-efi-alloc#9 (efi)
- fortanix/rust-sgx#770 (sgx)
- hermit-os/hermit-rs#718 (hermit)
- bytecodealliance/wasi-rs#108 (wasi)
- gimli-rs/addr2line#345
- oyvindln/adler2#2
- BurntSushi/memchr#180
- Frommi/miniz_oxide#173
- gimli-rs/object#777

try-job: x86_64-gnu
try-job: test-various
Taowyoo pushed a commit to tgross35/rust-sgx that referenced this pull request Jun 26, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang/rust#141993
GuillaumeGomez pushed a commit to GuillaumeGomez/rust that referenced this pull request Jun 30, 2025
…jorn3

Use the in-tree `compiler-builtins` for the sysroot

Many of `std`'s dependency have a dependency on the crates.io `compiler-builtins` when used with the feature `rustc-std-workspace-core`. Use a Cargo patch to select the in-tree version instead.

`compiler-builtins` is also added as a dependency of `rustc-std-workspace-core` so these crates can remove their crates.io dependency in the future.

Zulip discussion: [#t-compiler > Using in-tree compiler-builtins](https://rust-lang.zulipchat.com/#narrow/channel/131828-t-compiler/topic/Using.20in-tree.20compiler-builtins/with/522445336)

Once this merges, the following PRs will need to make it to a release for the relevant crates:

- rust-lang/getopts#119 (can merge at any time)
- rust-lang/hashbrown#625 (can merge at any time)
- rust-lang/stdarch#1825
- rust-lang/rustc-demangle#80
- rust-lang/cfg-if#84
- unicode-rs/unicode-width#77

The above should cover all tier 1 targets with no `std` features enabled. The remaining cover the rest:

- alexcrichton/dlmalloc-rs#50 (wasm, xous, sgx)
- gimli-rs/gimli#769
- r-efi/r-efi#89 (efi)
- r-efi/r-efi-alloc#9 (efi)
- fortanix/rust-sgx#770 (sgx)
- hermit-os/hermit-rs#718 (hermit)
- bytecodealliance/wasi-rs#108 (wasi)
- gimli-rs/addr2line#345
- oyvindln/adler2#2
- BurntSushi/memchr#180
- Frommi/miniz_oxide#173
- gimli-rs/object#777

try-job: x86_64-gnu
try-job: test-various
tautschnig pushed a commit to model-checking/verify-rust-std that referenced this pull request Jul 3, 2025
Since [1], this will come automatically from `rustc-std-workspace-core`
and the crates.io dependency should no longer be specified.

[1]: rust-lang#141993
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-compiler-builtins Area: compiler-builtins (https://github.com/rust-lang/compiler-builtins) A-run-make Area: port run-make Makefiles to rmake.rs A-tidy Area: The tidy tool rla-silenced Silences rust-log-analyzer postings to the PR it's added on. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-libs Relevant to the library 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