about summary refs log tree commit diff
path: root/src/bootstrap
AgeCommit message (Collapse)AuthorLines
2025-01-02Remove the unused `extra_features` field from `tool_extended!`Zalathar-46/+18
This field was introduced in #48097 to support the "clippy" feature of RLS.
2025-01-02Auto merge of #134907 - Kobzol:rustc-dev-guide-josh, r=ehussbors-35/+2
Turn rustc-dev-guide into a Josh subtree Discussed on [Zulip](https://rust-lang.zulipchat.com/#narrow/channel/196385-t-compiler.2Fwg-rustc-dev-guide/topic/a.20move.20to.20main.20repo.20.28rust-lang.2Frust.29). Accompanying rustc-dev-guide PR: https://github.com/rust-lang/rustc-dev-guide/pull/2183 I didn't create a bootstrap step for rustc-dev-guide yet, because the rustc-dev-guide version that we currently use in this repo doesn't have linkcheck enabled and that fails tests. The subtree starts with commit [ad93c5f1c49f2aeb45f7a4954017b1e607df9f5e](https://github.com/rust-lang/rustc-dev-guide/commit/ad93c5f1c49f2aeb45f7a4954017b1e607df9f5e). What I did: ``` export DIR=src/doc/rustc-dev-guide # Remove submodule git submodule status ${DIR} git submodule deinit ${DIR} git rm -r --cached ${DIR} rm -rf ${DIR} # Remove rustc-dev-guide from .gitmodules git commit -m"Removed `${DIR}` submodule" # Import history with josh git fetch https://github.com/rust-lang/rustc-dev-guide ad93c5f1c49f2aeb45f7a4954017b1e607df9f5e josh-filter ':prefix=src/doc/rustc-dev-guide' FETCH_HEAD git merge --allow-unrelated FILTERED_HEAD # A few follow-up cleanup commits ``` r? ehuss
2025-01-01Rollup merge of #134967 - onur-ozkan:auto-submodule-handler, r=jieyouxuMatthias Krüger-32/+40
handle submodules automatically on `doc` steps Helps to make `doc` macros less complicated.
2025-01-01Do not pass LLD flags to targets flags of compiletestJakub Beránek-1/+0
Not all targets support these flags, so we cannot just pass them to the tests unconditionally. Before, we were using a linker arg (`-Clink-arg=-fuse-ld=lld`), which circumvented this in a hacky way.
2025-01-01Actually use self-contained lld in bootstrap when `use-lld = ↵Jakub Beránek-1/+14
"self-contained"` is used Before, we just used the global `lld` anyway.
2025-01-01Remove mention of rustc-dev-guide from toolstateJakub Beránek-4/+1
2025-01-01Remove obsolete `RustcGuide` bootstrap stepJakub Beránek-30/+0
It was not working for a long time.
2025-01-01Fix source code path in commentJakub Beránek-1/+1
2025-01-01Rollup merge of #134950 - Zalathar:tool-check-step, r=jieyouxuStuart Cook-75/+65
bootstrap: Overhaul and simplify the `tool_check_step!` macro Main changes: - Pull most of `run` out of the macro and into a regular helper function - Reduce the number of redundant/unnecessary macro arguments - Switch to struct-like syntax so that optional arguments are clearer, and so that rustfmt is happy ~~The one “functional” change is that the `-check.stamp` files now get their name from the final path segment, instead of the struct name; in practice this means that they now contain more hyphens in some cases. As far as I'm aware, the exact filename doesn't matter so this should be fine.~~ (that change has been removed from this PR)
2024-12-31add test coverage for `helpers::is_path_in_submodule`onur-ozkan-2/+17
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-31handle submodules automatically on `doc` stepsonur-ozkan-30/+23
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-31Use struct-like syntax in `tool_check_step!`Zalathar-15/+18
This tricks rustfmt into formatting the macro arguments as expressions, instead of giving up and ignoring them.
2024-12-31Make `tool_check_step!` always assume `SourceType::InTree`Zalathar-21/+23
All of the tools that use this macro are currently in-tree, so support for specifying a `SourceType` was not meaningfully used. It can potentially be re-added in the future if needed.
2024-12-31Infer tool-check-step display name from the last path componentZalathar-24/+13
2024-12-31Move most of the `Step::run` impl out of `tool_check_step!`Zalathar-45/+41
Ordinary code is much easier to work with than macro-generated code.
2024-12-31Rollup merge of #134919 - Zalathar:x-test-compiler, r=jieyouxuStuart Cook-2/+24
bootstrap: Make `./x test compiler` actually run the compiler unit tests Fixes #134916.
2024-12-31Make `./x test compiler` actually run the compiler unit testsZalathar-2/+24
2024-12-30Rollup merge of #134911 - HigherOrderLogic:master, r=onur-ozkanMatthias Krüger-3/+3
chore: fix typos This PR fixes typos errors in docstring only, so functionality wise, it should stay the same.
2024-12-30chore: fix typosHoru-3/+3
2024-12-30Auto merge of #134865 - clubby789:proc-macro-tls, r=onur-ozkanbors-1/+75
bootstrap: Don't apply -Ztls-model=initial-exec to deps of proc-macros Fixes #134863 1. Checks if a crate name is in a static list before applying the flag 2. Adds a tidy check that gathers transitive deps of proc macros and ensures the list is up to date cc `@bjorn3` - the issue specifies `rustc_fluent_macro` but I assume this applies to all proc macro crates.
2024-12-29bootstrap: Don't apply `-Ztls-model=initial-exec` to deps of proc-macrosclubby789-1/+4
2024-12-29Add tidy check for list of proc-macro crate transitive dependenciesclubby789-0/+71
2024-12-29Auto merge of #134887 - Zalathar:rollup-ghpz7oy, r=Zalatharbors-106/+127
Rollup of 5 pull requests Successful merges: - #134799 (nits: Cleanups in `librustdoc::clean`) - #134851 (docs: inline `alloc::ffi::c_str` types to `alloc::ffi`) - #134869 (Bump compiler cc) - #134876 (bootstrap: Consolidate the macros for declaring compiletest test suites) - #134883 (bootstrap: Fix `./x check bootstrap` by moving `shared_helpers::tests`) r? `@ghost` `@rustbot` modify labels: rollup
2024-12-29Rollup merge of #134883 - Zalathar:shared-helpers, r=clubby789Stuart Cook-3/+14
bootstrap: Fix `./x check bootstrap` by moving `shared_helpers::tests` Running `./x check bootstrap` currently doesn't work, because it builds the bootstrap shim binaries with `cfg(test)`, and those binaries can't find a `tests` submodule when they include `shared_helpers.rs` via `#[path]`. This PR fixes that by taking the tests module and moving it to `super::tests::shared_helpers_tests` instead. (The extra `tests` submodule prevents tidy from complaining about unit tests that aren't in a dedicated tests module.) --- It would be nice to also run `./x check bootstrap compiletest` in CI, so that this and #134848 don't regress, but I didn't want to bundle that change with this fix.
2024-12-29Auto merge of #134650 - onur-ozkan:clean-up-fixmes, r=Kobzolbors-14/+9
Clean up some FIXME notes on bootstrap Fixing and removing some FIXME notes.
2024-12-29Fix `./x check bootstrap` by moving `shared_helpers::tests`Zalathar-3/+14
2024-12-29Allow macro-declared test steps to have docstrings and attributesZalathar-21/+32
2024-12-29Consolidate the macros for declaring compiletest suitesZalathar-82/+81
2024-12-28Auto merge of #134848 - Zalathar:check-compiletest, r=jieyouxubors-0/+4
bootstrap: Allow `./x check compiletest` Did you know that bootstrap didn't support `./x check compiletest`? Well, now it does! Manually add `"compiletest"` to your `rust-analyzer.check.overrideCommand` check command to get error/warning integration when modifying compiletest.
2024-12-28Auto merge of #134845 - jieyouxu:temp-drop-warning, r=onur-ozkanbors-13/+4
bootstrap: drop warning for top-level test suite path check due to false positives The current top-level test suite directory does not exist warning logic doesn't quite handle the more exotic path suffix matches that test filters seem to accept (e.g. `library/test` can be matched with `--exclude test`), so avoid warning on non-existent top-level test suites for now. To avoid false positives, we probably need to query test `Step`s for their `should_run(exclude_filter)` logic. This retains the fix for the Windows path handling (unlike #134843). r? `@onur-ozkan`
2024-12-28Auto merge of #134790 - onur-ozkan:cfg-test, r=clubby789bors-22/+19
replace bootstrap-self-test feature flag with cfg(test) This makes it in more rusty way.
2024-12-28bootstrap: Allow `./x check compiletest`Zalathar-0/+4
2024-12-28bootstrap: drop warning for top-level test suite path check许杰友 Jieyou Xu (Joe)-13/+4
This doesn't quite handle the more exotic path suffix matches that test filters seem to accept (e.g. `library/test` can be matched with `--exclude test`), so avoid warning on non-existent top-level test suites for now. A proper fix will need to possibly query test `Step`s for their exclude logic.
2024-12-28remove deprecated option `parallel-compiler`onur-ozkan-10/+5
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-28read to `String` directly without extra conversiononur-ozkan-2/+1
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-28remove an invalid FIXME noteonur-ozkan-2/+3
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-27Auto merge of #134830 - matthiaskrgr:rollup-7hdjojz, r=matthiaskrgrbors-0/+21
Rollup of 6 pull requests Successful merges: - #133663 (Add a compiler intrinsic to back `bigint_helper_methods`) - #134798 (Make `ty::Error` implement all auto traits) - #134808 (compiletest: Remove empty 'expected' files when blessing) - #134809 (Add `--no-capture`/`--nocapture` as bootstrap arguments) - #134826 (Add spastorino to users_on_vacation) - #134828 (Add clubby789 back to bootstrap review rotation) r? `@ghost` `@rustbot` modify labels: rollup
2024-12-27Add change tracker entryclubby789-0/+5
2024-12-27compiletest: Replace `--nocapture` with `--no-capture`clubby789-1/+1
2024-12-27Add `--no-capture` as a bootstrap argumentclubby789-0/+16
2024-12-26Strip debuginfo from rustc-main and rustdocclubby789-2/+13
2024-12-26replace bootstrap-self-test feature flag with cfg(test)onur-ozkan-22/+19
This makes it in more rusty way. Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-24Auto merge of #134724 - onur-ozkan:type-improvements, r=jieyouxubors-53/+34
improve type mutation for certain structures self-explanatory
2024-12-24improve type mutation for certain structuresonur-ozkan-53/+34
self-explanatory Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-23Auto merge of #134405 - rmehri01:x-completions, r=onur-ozkanbors-2/+13
Generate shell completions for x as well It would be nice to be have shell completions for both `./x` and `x` (installed with `cargo install --path src/tools/x`) instead of just `x.py`. This pr generates the corresponding completions for each shell in a similar way to `x.py` but under `x.<shell>` instead.
2024-12-20fix missing ns units in bootstrap's benchmark renderingThe 8472-1/+1
2024-12-19Rollup merge of #134437 - onur-ozkan:improve-compiler-build, r=jieyouxu许杰友 Jieyou Xu (Joe)-30/+34
reduce compiler `Assemble` complexity `compile::Assemble` is already complicated by its nature (as it handles core internals like recursive building logic, etc.) and also handles half of `LldWrapper` tool logic for no good reason since it should be done in the build step directly. This change moves it there to reduce complexity of `compile::Assemble` logic.
2024-12-18reduce compiler `Assemble` complexityonur-ozkan-30/+34
`compile::Assemble` is already complicated by its nature (as it handles core internals like recursive building logic, etc.) and also handles half of `LldWrapper` tool logic for no good reason since it should be done in the build step directly. This change moves it there to reduce complexity of `compile::Assemble` logic. Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-18Rollup merge of #134444 - jyn514:cranelift-std, r=bjorn3许杰友 Jieyou Xu (Joe)-0/+5
Fix `x build --stage 1 std` when using cg_cranelift as the default backend Before, cg_cranelift would ICE when trying to lower f16 and f128. The library/ crates had all the infrastructure to omit using them, it just wasn't hooked up to bootstrap. r? `````@bjorn3`````
2024-12-18Rollup merge of #134420 - Integral-Tech:pathbuf-refactor, r=compiler-errors许杰友 Jieyou Xu (Joe)-7/+5
refactor: replace &PathBuf with &Path to enhance generality - According to [style.md](https://github.com/rust-lang/rust/blob/master/src/tools/rust-analyzer/docs/dev/style.md#useless-types): > More generally, always prefer types on the left ```rust // GOOD BAD &[T] &Vec<T> &str &String Option<&T> &Option<T> &Path &PathBuf ```