Skip to content
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

bootstrap: support target specific config overrides #125515

Merged
merged 2 commits into from
May 25, 2024

Conversation

weihanglo
Copy link
Member

Can't find any previous discussion about not supporting this,
so I get it done.

The motivation of this is from #125473 (comment).

@rustbot
Copy link
Collaborator

rustbot commented May 24, 2024

r? @albertlarsan68

rustbot has assigned @albertlarsan68.
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 S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels May 24, 2024
@rustbot
Copy link
Collaborator

rustbot commented May 24, 2024

This PR modifies src/bootstrap/src/core/config.

If appropriate, please update CONFIG_CHANGE_HISTORY in src/bootstrap/src/utils/change_tracker.rs.

@weihanglo
Copy link
Member Author

This PR modifies src/bootstrap/src/core/config.

If appropriate, please update CONFIG_CHANGE_HISTORY in src/bootstrap/src/utils/change_tracker.rs.

This doesn't really change any schema of config.toml, so probably don't need to update? Not sure though.

Copy link
Member

@onur-ozkan onur-ozkan left a comment

Choose a reason for hiding this comment

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

This doesn't really change any schema of config.toml, so probably don't need to update? Not sure though.

Yeah, update isn't needed for this.

@onur-ozkan
Copy link
Member

Feel free to r=me once the CI is green.

r? onur-ozkan

@rustbot rustbot assigned onur-ozkan and unassigned albertlarsan68 May 24, 2024
@weihanglo
Copy link
Member Author

Thanks for the review!

@bors r=onur-ozkan rollup

@bors
Copy link
Contributor

bors commented May 24, 2024

📌 Commit d1f0bc7 has been approved by onur-ozkan

It is now in the queue for this repository.

@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 May 24, 2024
workingjubilee added a commit to workingjubilee/rustc that referenced this pull request May 25, 2024
…onur-ozkan

 bootstrap: support target specific config overrides

Can't find any previous discussion about not supporting this,
so I get it done.

The motivation of this is from <rust-lang#125473 (comment)>.
bors added a commit to rust-lang-ci/rust that referenced this pull request May 25, 2024
…kingjubilee

Rollup of 9 pull requests

Successful merges:

 - rust-lang#124080 (Some unstable changes to where opaque types get defined)
 - rust-lang#125271 (use posix_memalign on almost all Unix targets)
 - rust-lang#125433 (A small diagnostic improvement for dropping_copy_types)
 - rust-lang#125498 (Stop using the avx512er and avx512pf x86 target features)
 - rust-lang#125510 (remove proof tree formatting, make em shallow)
 - rust-lang#125513 (Don't eagerly monomorphize drop for types that are impossible to instantiate)
 - rust-lang#125514 (Structurally resolve before `builtin_index` in EUV)
 - rust-lang#125515 ( bootstrap: support target specific config overrides )
 - rust-lang#125527 (Add manual Sync impl for ReentrantLockGuard)

r? `@ghost`
`@rustbot` modify labels: rollup
@workingjubilee
Copy link
Member

This is the only one that seems like it can explain the failure in fixes_missing_ampersand: #125533 (comment)

but I still don't know how...

@bors rollup=iffy

@Urgau
Copy link
Member

Urgau commented May 25, 2024

@workingjubilee I don't think it's this PR fault that the rollup failed. The more likely explanation given the source code is #125433.

@surechen
Copy link
Contributor

@workingjubilee I don't think it's this PR fault that the rollup failed. The more likely explanation given the source code is #125433.

It certainly seems so. My PR would check

fn main() { let mut x = 3; drop(x); }

Where should the repairs be made to make them suitable?

@Urgau
Copy link
Member

Urgau commented May 25, 2024

Where should the repairs be made to make them suitable?

In the Cargo repository, by submitting a PR fixing the test https://github.com/rust-lang/cargo/blob/a8d72c675ee52dd57f0d8f2bae6655913c15b2fb/tests/testsuite/fix.rs#L504-L545

bors added a commit to rust-lang-ci/rust that referenced this pull request May 25, 2024
…ur-ozkan

 bootstrap: support target specific config overrides

Can't find any previous discussion about not supporting this,
so I get it done.

The motivation of this is from <rust-lang#125473 (comment)>.
@bors
Copy link
Contributor

bors commented May 25, 2024

⌛ Testing commit d1f0bc7 with merge 5a6498d...

@rust-log-analyzer
Copy link
Collaborator

A job failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
error: failed retrieving file 'mingw-w64-x86_64-headers-git-11.0.0.r547.g4c8123efb-1-any.pkg.tar.zst' from mirror.msys2.org : Operation too slow. Less than 1 bytes/sec transferred the last 10 seconds
error: failed retrieving file 'mingw-w64-x86_64-gdb-14.1-1-any.pkg.tar.zst' from mirror.msys2.org : Operation too slow. Less than 1 bytes/sec transferred the last 10 seconds
error: failed retrieving file 'mingw-w64-x86_64-crt-git-11.0.0.r547.g4c8123efb-1-any.pkg.tar.zst' from mirror.msys2.org : Operation too slow. Less than 1 bytes/sec transferred the last 10 seconds
warning: too many errors from mirror.msys2.org, skipping for the remainder of this transaction
error: failed retrieving file 'mingw-w64-x86_64-openssl-3.2.0-1-any.pkg.tar.zst.sig' from mirror.umd.edu : Operation too slow. Less than 1 bytes/sec transferred the last 10 seconds
 mingw-w64-x86_64-python-3.11.7-1-any downloading...
 mingw-w64-x86_64-gcc-ada-13.2.0-3-any downloading...
 mingw-w64-x86_64-gcc-objc-13.2.0-3-any downloading...
warning: failed to retrieve some files

@bors
Copy link
Contributor

bors commented May 25, 2024

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels May 25, 2024
@onur-ozkan
Copy link
Member

error: failed retrieving file 'mingw-w64-x86_64-headers-git-11.0.0.r547.g4c8123efb-1-any.pkg.tar.zst' from mirror.msys2.org : Operation too slow. Less than 1 bytes/sec transferred the last 10 seconds
error: failed retrieving file 'mingw-w64-x86_64-gdb-14.1-1-any.pkg.tar.zst' from mirror.msys2.org : Operation too slow. Less than 1 bytes/sec transferred the last 10 seconds
error: failed retrieving file 'mingw-w64-x86_64-crt-git-11.0.0.r547.g4c8123efb-1-any.pkg.tar.zst' from mirror.msys2.org : Operation too slow. Less than 1 bytes/sec transferred the last 10 seconds
warning: too many errors from mirror.msys2.org, skipping for the remainder of this transaction
error: failed retrieving file 'mingw-w64-x86_64-openssl-3.2.0-1-any.pkg.tar.zst.sig' from mirror.umd.edu : Operation too slow. Less than 1 bytes/sec transferred the last 10 seconds
mingw-w64-x86_64-python-3.11.7-1-any downloading...
mingw-w64-x86_64-gcc-ada-13.2.0-3-any downloading...
mingw-w64-x86_64-gcc-objc-13.2.0-3-any downloading...
warning: failed to retrieve some files

Seems like a temporary network problem. @bors retry

@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 May 25, 2024
@workingjubilee
Copy link
Member

@Urgau Oh.

Why don't we run that test in the PR CI...?

@bors
Copy link
Contributor

bors commented May 25, 2024

⌛ Testing commit d1f0bc7 with merge 1ba35e9...

@bors
Copy link
Contributor

bors commented May 25, 2024

☀️ Test successful - checks-actions
Approved by: onur-ozkan
Pushing 1ba35e9 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label May 25, 2024
@bors bors merged commit 1ba35e9 into rust-lang:master May 25, 2024
7 checks passed
@rustbot rustbot added this to the 1.80.0 milestone May 25, 2024
@weihanglo weihanglo deleted the target-toml-override branch May 25, 2024 23:29
@weihanglo
Copy link
Member Author

@workingjubilee

It checks too much stuff I guess?

These are additional stuff we need to test

check-aux:
$(Q)$(BOOTSTRAP) test --stage 2 \
src/tools/cargo \
src/tools/cargotest \
$(BOOTSTRAP_ARGS)
# Run standard library tests in Miri.
$(Q)BOOTSTRAP_SKIP_TARGET_SANITY=1 \
$(BOOTSTRAP) miri --stage 2 \
library/core \
library/alloc \
--no-doc
# Some doctests have intentional memory leaks.
$(Q)MIRIFLAGS="-Zmiri-ignore-leaks -Zmiri-disable-isolation" \
$(BOOTSTRAP) miri --stage 2 \
library/core \
library/alloc \
--doc
# In `std` we cannot test everything.
$(Q)MIRIFLAGS="-Zmiri-disable-isolation" BOOTSTRAP_SKIP_TARGET_SANITY=1 \
$(BOOTSTRAP) miri --stage 2 library/std \
--no-doc -- \
--skip fs:: --skip net:: --skip process:: --skip sys::pal::
$(Q)MIRIFLAGS="-Zmiri-ignore-leaks -Zmiri-disable-isolation" BOOTSTRAP_SKIP_TARGET_SANITY=1 \
$(BOOTSTRAP) miri --stage 2 library/std \
--doc -- \
--skip fs:: --skip net:: --skip process:: --skip sys::pal::
# Also test some very target-specific modules on other targets
# (making sure to cover an i686 target as well).
$(Q)MIRIFLAGS="-Zmiri-disable-isolation" BOOTSTRAP_SKIP_TARGET_SANITY=1 \
$(BOOTSTRAP) miri --stage 2 library/std \
--target aarch64-apple-darwin,i686-pc-windows-msvc \
--no-doc -- \
time:: sync:: thread:: env::

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (1ba35e9): comparison URL.

Overall result: ❌ regressions - no action needed

@rustbot label: -perf-regression

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
0.2% [0.2%, 0.2%] 2
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Max RSS (memory usage)

This benchmark run did not return any relevant results for this metric.

Cycles

Results (secondary -3.0%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.0% [-3.0%, -3.0%] 1
All ❌✅ (primary) - - 0

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 671.029s -> 672.69s (0.25%)
Artifact size: 315.62 MiB -> 315.68 MiB (0.02%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merged-by-bors This PR was explicitly merged by bors. 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)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants