summary refs log tree commit diff
path: root/src/bootstrap
AgeCommit message (Collapse)AuthorLines
2023-03-29Create dir for build_tripleMu001999-0/+1
2023-03-02Rollup merge of #108644 - KittyBorgX:hashmap-toml, r=albertlarsan68Matthias Krüger-0/+2
Allow setting hashmap toml values in `./configure` Fixes https://github.com/rust-lang/rust/issues/108621
2023-03-02Allow setting hashmap toml values in `./configure`KittyBorgX-0/+2
2023-03-02Auto merge of #107879 - icedrocket:update-llvm, r=cuviperbors-9/+17
Update LLVM submodule Fixes #105626
2023-03-01Rollup merge of #108394 - ferrocene:pa-open, r=ozkanonurDylan DPC-15/+20
Make `x doc --open` work on every book Before this PR, the `--open` flag had to be configured explicitly for every book, and most of them didn't configure it, resulting in the flag silently failing in all but two books. In this PR, the code to check for the `--open` flag is in the underlying `RustbookSrc` step rather than all the individual steps. This is done by passing the parent step as a field of `RustbookSrc`, so that we can check for the correct step in `maybe_open_in_browser`. This was part of a larger change that in the end wasn't worth it. Still, I think it could be useful as-is.
2023-02-28Skip test `download_ci_llvm` with modified LLVMJosh Stone-9/+17
2023-02-28Fix `x clean` with specific pathsclubby789-0/+1
2023-02-27Rollup merge of #108308 - bjorn3:faster_bootstrap_build, r=albertlarsan68Matthias Krüger-9/+11
Allow building serde and serde_derive in parallel This reduces build time of bootstrap by ~6s
2023-02-27Allow building serde and serde_derive in parallelbjorn3-9/+11
This reduces build time of bootstrap by ~6s
2023-02-27Rollup merge of #108463 - clubby789:update-check-output, r=albertlarsan68Matthias Krüger-28/+60
bootstrap: Update the output of the `check` descriptions This should bring the output from `x check` in line with the changes in #108171
2023-02-25Rollup merge of #108229 - lionellloh:issue-107049, r=Mark-SimulacrumMichael Goulet-5/+21
[107049] Recognise top level keys in config.toml.example Closes #107049 Test Plan Configure changelog-seen ``` lionellloh@lionellloh-mbp rust % ./configure --set changelog-seen=1 configure: processing command line configure: configure: changelog-seen := 1 configure: build.configure-args := ['--set', 'changelog-seen=1'] configure: configure: writing `config.toml` in current directory configure: configure: run `python /Users/lionellloh/rust/x.py --help` lionellloh@lionellloh-mbp rust % diff config.toml config.toml.example 16c16 < changelog-seen = 1 --- > changelog-seen = 2 331c331 < configure-args = ['--set', 'changelog-seen=1'] --- > #configure-args = [] 675c675 < [target.x86_64-apple-darwin] --- > [target.x86_64-unknown-linux-gnu] 809d808 < ``` Configure profile ``` lionellloh@lionellloh-mbp rust % ./configure --set profile=xyz configure: processing command line configure: configure: profile := xyz configure: build.configure-args := ['--set', 'profile=xyz'] configure: configure: writing `config.toml` in current directory configure: configure: run `python /Users/lionellloh/rust/x.py --help` lionellloh@lionellloh-mbp rust % diff config.toml config.toml.example 26c26 < profile = xyz --- > #profile = <none> 331c331 < configure-args = ['--set', 'profile=xyz'] --- > #configure-args = [] 675c675 < [target.x86_64-apple-darwin] --- > [target.x86_64-unknown-linux-gnu] 809d808 < ```
2023-02-25Rollup merge of #107848 - clubby789:x-setup-options, r=Mark-SimulacrumMichael Goulet-21/+114
Split `x setup` sub-actions to CLI arguments Closes #107846 This adds a new `none` profile option which simply skips the `config.toml` step. It also adds `hook` and `vscode` subcommands, for installing the pre-push hook and getting `settings.json` respectively.
2023-02-25Rollup merge of #105736 - chenyukang:yukang/add-mir-opt-level-testing, r=jyn514Michael Goulet-0/+10
Test that the compiler/library builds with validate-mir Fixes #105706
2023-02-25Update the output of the `check` descriptionsclubby789-28/+60
2023-02-25Rollup merge of #108404 - ozkanonur:108004, r=jyn514Matthias Krüger-2/+2
support `x fmt` for sub and outside of rust directories This PR makes `x fmt` to be succesfully work from sub or outside dir of rust. The following cases are tested and the results were successful. ```sh # from rust/library directory ../x fmt compiler --check ../x fmt compiler/rustc # from outside of rust directory ../../rust/x fmt library/std library/core --check ../../rust/x fmt library/std ``` Resolves #108004 r? ``@albertlarsan68``
2023-02-24Test that the compiler/library builds with -Zmir-opt-level=3 -Zvalidate-miryukang-0/+10
2023-02-23support `x fmt` for sub and outside of rust directoriesozkanonur-2/+2
Signed-off-by: ozkanonur <work@onurozkan.dev>
2023-02-23make --open work on all booksPietro Albini-15/+20
2023-02-22Rollup merge of #108264 - jchecahi:tool-testsuite-ignores-no-fail-fast, ↵Guillaume Gomez-0/+12
r=ozkanonur no-fail-fast support for tool testsuites ~~This commit adds a change to pass "--no-fail-fast" flag to `cargo test` inside `tool::prepare_tool_cargo()` so there is no need to do it manually in each `Step` trait implementation in src/bootstrap/test.rs.~~ ~~Also, removes the flag from test.rs where prepare_tool_cargo() is called so cargo doesn't complain because the flag has been passed twice.~~ This commit adds `--no-fail-fast` flag to each `cargo test` command in each tool Step trait implementation (`miri`, `rustfmt` and `clippy`). Fixes #108261
2023-02-22Add no-fail-fast support to miri, rustfmt and clippy testsuitesJesus Checa Hidalgo-0/+12
This commit adds `--no-fail-fast` flag to each `cargo test` command in each tool Step trait implementation. Fixes #108261
2023-02-21Auto merge of #108302 - Kobzol:revert-107834, r=albertlarsan68bors-86/+12
Revert #107834 This reverts commit [41c6c5d4996728b5a635319ef9b077a3d0ccc480](https://github.com/rust-lang/rust/pull/107834). Trying to check if this fixes building `rustc` for perf bot.
2023-02-21Revert "Copy `bin/*` and `lib/*.dylib` files to `stage0-sysroot`"Jakub Beránek-66/+0
This reverts commit 6990ab9ad2cde9b67073ffac29ffecc2be8e722f.
2023-02-21Revert "port over symlink_file function from Build to Config and create ↵Jakub Beránek-20/+12
symlink for legacy rustfmt path" This reverts commit 41c6c5d4996728b5a635319ef9b077a3d0ccc480.
2023-02-21Enable --cfg=parallel_compiler in rustdoc.Mara Bos-1/+5
2023-02-20Rollup merge of #108171 - mattjperez:compiler-artifacts-output, r=jyn514Matthias Krüger-39/+132
Improve building compiler artifacts output Fixes #108051 ``@Manishearth,`` ``@jyn514`` mentioned you might be interested in these changes to the outputs.
2023-02-19Removed trailing spaces to satisfy lintlionelllohcd-11/+10
2023-02-19Improve building compiler artifacts outputMatthew J Perez-39/+132
2023-02-19Rollup merge of #108212 - KittyBorgX:master, r=jyn514Guillaume Gomez-9/+0
Download rustfmt regardless of rustc being set in config.toml Fixes #81155 cc : https://github.com/rust-lang/rust/issues/108210 for exact error details
2023-02-19Rollup merge of #108188 - jyn514:ra-sysroot, r=albertlarsan68Guillaume Gomez-0/+1
Change src/etc/vscode_settings.json to always treat ./library as the sysroot source See https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frust-analyzer/topic/False.20error.20report.20for.20.60rust-analyzer.28private-field.29.60 for further discussion; previously this had various bugs. I tested go-to-definition on: - `use std::io::Write` in `src/bootstrap/setup.rs` - `use std::cell::RefCell` in `src/librustdoc/core.rs` - `use rustc_span::symbol::sym` in `src/librustdoc/core.rs` - `use std::fmt` in `compiler/rustc_span/src/symbol.rs` - `Global` in `library/alloc/src/alloc/tests.rs` The following things still don't work: - `Global.deallocate` in alloc/tests.rs. This function is under `cfg(not(test))`, so it can't be enabled without disabling RA in `tests.rs` altogether. I think this might be fixable by moving `library/alloc/src/alloc/tests.rs` to `library/alloc/tests/alloc/lib.rs`, so it's in a different crate, but I'd like to avoid blocking this improvement on that change. cc `@thomcc` `@BoxyUwU` `@spastorino` - you've had issues with RA in the past, does this fix them? Are there any other use cases I should test? You can try these changes out by running `cp src/etc/vscode_settings.json .vscode/settings.json`, or running `x setup` and picking a random profile (it won't overwrite config.toml if it already exists). See https://github.com/rust-lang/rust/pull/108135 for plans to make updating the config easier. r? `@Veykril`
2023-02-18[107049] Recognise top level keys in config.toml.examplelionelllohcd-5/+22
2023-02-19Download rustfmt regardless of rustc being set in config.tomlKittyBorgX-9/+0
2023-02-18Auto merge of #106476 - ↵bors-4/+28
keith:ks/add-sanitizer-support-for-modern-ios-platforms, r=badboy Add sanitizer support for modern iOS platforms asan and tsan generally support iOS, but that previously wasn't configured in rust. This only adds support for the simulator architectures, and arm64 device architecture, not the older 32 bit architectures.
2023-02-17Change src/etc/vscode_settings.json to always treat ./library as the sysroot ↵Joshua Nelson-0/+1
source See https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frust-analyzer/topic/False.20error.20report.20for.20.60rust-analyzer.28private-field.29.60 for further discussion; previously this had various bugs. I tested go-to-definition on: - `use std::io::Write` in `src/bootstrap/setup.rs` - `use std::cell::RefCell` in `src/librustdoc/core.rs` - `use rustc_span::symbol::sym` in `src/librustdoc/core.rs` - `use std::fmt` in `compiler/rustc_span/src/symbol.rs` - `Global` in `library/alloc/src/alloc/tests.rs` The following things still don't work: - `Global.deallocate` in alloc/tests.rs. This function is under `cfg(not(test))`, so it can't be enabled without disabling RA in `tests.rs` altogether. I think this might be fixable by moving `library/alloc/src/alloc/tests.rs` to `library/alloc/tests/alloc/lib.rs`, so it's in a different crate, but I'd like to avoid blocking this improvement on that change.
2023-02-17Rollup merge of #107956 - KittyBorgX:master, r=ozkanonurMatthias Krüger-0/+66
Copy `bin/*` and `lib/*.dylib` files to `stage0-sysroot` Fixes #101691
2023-02-17Copy `bin/*` and `lib/*.dylib` files to `stage0-sysroot`KittyBorgX-0/+66
2023-02-17Rollup merge of #107905 - clubby789:x-free-args, r=albertlarsan68Matthias Krüger-1/+20
Pass arguments to `x` subcommands with `--` Fixes #107375 Any arguments passed to `x` following `--` are removed and not parsed, instead passed down to subcommands (just the ones listed in the issue, not sure if more are needed). This does not remove the existing `--args` and `--test-args` behaviour, just extends it. It's also not documented in the help, not sure of the best way to format it. r? `@jyn514`
2023-02-16Remove save-analysis.Nicholas Nethercote-25/+9
Most tests involving save-analysis were removed, but I kept a few where the `-Zsave-analysis` was an add-on to the main thing being tested, rather than the main thing being tested. For `x.py install`, the `rust-analysis` target has been removed. For `x.py dist`, the `rust-analysis` target has been kept in a degenerate form: it just produces a single file `reduced.json` indicating that save-analysis has been removed. This is necessary for rustup to keep working. Closes #43606.
2023-02-14Rollup merge of #107626 - jyn514:x-fix, r=Mark-SimulacrumMatthias Krüger-0/+4
Fix `x fix` on the standard library itself Fixes https://github.com/rust-lang/rust/issues/107501
2023-02-14Rollup merge of #107573 - cuviper:drop-llvm-13, r=nagisaMatthias Krüger-2/+2
Update the minimum external LLVM to 14 With this change, we'll have stable support for LLVM 14 through 16 (pending release). For reference, the previous increase to LLVM 13 was #100460.
2023-02-13Rollup merge of #107948 - jieyouxu:issue-107944, r=ozkanonurMatthias Krüger-2/+38
Allow shortcuts to directories to be used for ./x.py fmt Fixes #107944. Maximum recursive search depth is 3 and only accepts shortcuts for directories. If there are no shortcut candidates, the previous behavior to panic is preserved. If there are multiple candidates, the shortcut candidates are ignored. After this change, `./x.py fmt std` no longer panics and formats `library/std` instead.
2023-02-14Allow shortcuts to directories to be used for `./x.py fmt`许杰友 Jieyou Xu (Joe)-2/+38
Fixes #107944. Maximum recursive search depth is 3 and only accepts shortcuts for directories (single component paths, such as `./x.py fmt std`). If there are no shortcut candidates but single componenet path(s) are given, it falls back to the previous behavior to panic with unable to find directory. If there are multiple shortcut candidates for a given single component path, the shortcut candidates are considered ambiguous, are then ignored, and the single component path is accepted as-is. After this change, `./x.py fmt std` no longer panics and formats `library/std` instead.
2023-02-13Add additional options to `x setup`clubby789-21/+114
2023-02-12Add sanitizer support for modern iOS platformsKeith Smiley-4/+28
asan and tsan generally support iOS, but that previously wasn't configured in rust. This only adds support for the simulator architectures, and arm64 device architecture, not the older 32 bit architectures.
2023-02-12Rollup merge of #107842 - fee1-dead-contrib:patch_rustfmt_nixos, ↵Matthias Krüger-2/+8
r=Mark-Simulacrum Patch `build/rustfmt/lib/*.so` for NixOS fixes #107676.
2023-02-11Rollup merge of #107873 - zephaniahong:issue-107832-fix, r=albertlarsan68Matthias Krüger-0/+4
Emit JSON output for the building of bootstrap itself Fixes #107832 . Main changes are from line 792 onwards. Other changes are due to the flake8 formatter. Let me know if I should not use the formatter.
2023-02-11Rollup merge of #107657 - chenyukang:yukang/add-only-modified, r=albertlarsan68Matthias Krüger-15/+19
Add only modified subcommand for compiletest r? `@jyn514` From [discussion](https://rust-lang.zulipchat.com/#narrow/stream/326414-t-infra.2Fbootstrap/topic/Add.20subcommand.20to.20retest.20all.20tests.20with.20different.20results)
2023-02-11emit JSON output for building of bootstrap itselfZephaniah Ong-0/+4
2023-02-10Update the minimum external LLVM to 14Josh Stone-2/+2
2023-02-10Pass arguments to `x` subcommands with `--`clubby789-1/+20
2023-02-10cleanup and fix namingyukang-1/+1