about summary refs log tree commit diff
path: root/src/bootstrap
AgeCommit message (Collapse)AuthorLines
2022-11-11Rollup merge of #104245 - kubycsolutions:master, r=jyn514Dylan DPC-1/+1
Reduce default configuration's dependency upon static libstdcpp library (#103606) Fixes #103606 Remove default dependency on static libstdcpp except during dist llvm builds (where we want static libraries so `libLLVM.so` is self-contained).
2022-11-10Avoid runtime dependency on static libstdc++kubycsolutions-1/+1
Usually, we do want to use the static C++ library when building rustc_llvm, but do not want to have that dependency at compiler runtime. Change the defaults to Make It So.
2022-11-09Rollup merge of #104046 - RalfJung:run-miri-run, r=oli-obkMichael Goulet-54/+140
bootstrap: add support for running Miri on a file This enables: ``` ./x.py run src/tools/miri --stage 0 --args src/tools/miri/tests/pass/hello.rs ``` That can be super helpful for debugging. Also avoid sharing the Miri sysroot dir with a system-wide (rustup-managed) installation of Miri. Fixes https://github.com/rust-lang/rust/issues/76666
2022-11-08Rollup merge of #103778 - mati865:update-deps, r=Mark-SimulacrumManish Goregaokar-10/+67
Update several crates for improved support of the new targets This helps with `*-windows-gnullvm` targets by reducing amount of patching.
2022-11-08Rollup merge of #104027 - ted-tanner:issue-103697-fix, r=jyn514Guillaume Gomez-4/+5
Place config.toml in current working directory if config not found Fixes an issue where bootsrapping a Rust build would place `config.toml` in `{src_root}` rather than the current working directory #103697
2022-11-07Only set config.config to None when using default pathTanner Davies-1/+2
2022-11-07Auto merge of #103569 - RalfJung:miri-test-macos, r=Mark-Simulacrumbors-0/+16
fix and (re-)enable Miri cross-target checks on macOS and Windows Fixes https://github.com/rust-lang/rust/issues/103519 r? `@Mark-Simulacrum`
2022-11-07add FIXME to replace this env var in the futureRalf Jung-0/+6
2022-11-06bootstrap: put Miri sysroot into local build dirRalf Jung-1/+9
2022-11-06bootstrap: add support for running Miri on a fileRalf Jung-54/+132
2022-11-06Rollup merge of #103851 - viandoxdev:103816_bootstrap_fix_json_doc, r=jyn514Matthias Krüger-53/+44
Fix json flag in bootstrap doc Fix the `--json` flag not working with x.py (Closes #103816) While this works I'm not sure about the `should_run` of `JsonStd`, had to change it because https://github.com/rust-lang/rust/blob/ab5a2bc7316012ee9b2a4a4f3821673f2677f3d5/src/bootstrap/builder.rs#L334 would match with JsonStd and remove the paths that Std matched. So I did [this](https://github.com/viandoxdev/rust/blob/ffd4078264c4892b5098d6191e0adfe3564d62ca/src/bootstrap/doc.rs#L526-L534) but that looks more like a hack/workaround than anything. I'm guessing there's something to do with the default condition thing but idk how it works
2022-11-05Place config.toml in current working directory if config not foundTanner Davies-4/+4
2022-11-05fix out dir being wrong in jsonviandoxdev-1/+5
2022-11-05Rollup merge of #103920 - ferrocene:pa-maybe-open-in-browser, r=jyn514Matthias Krüger-25/+28
Move browser opening logic in `Builder` This allows `open()` to be called from other places in bootstrap (I need this for Ferrocene, as we keep our custom steps in `src/bootstrap/ferrocene`), and it simplifies the callers by moving the `was_invoked_explicitly` check into the function.
2022-11-05Update several crates for improved support of the new targetsMateusz Mikuła-10/+67
This helps with `*-windows-gnullvm` targets
2022-11-05Rollup merge of #103878 - Mark-Simulacrum:fix-stable-ci-download, r=jyn514Matthias Krüger-17/+42
Fix artifact version/channel detection for stable On stable, our artifacts are uploaded with the raw version number (e.g., 1.65.0), not the channel. This adjusts our detection logic to use the version number from src/version when we detect the stable channel. This is really only important for stable channel re-builds, I think, but those do happen from time to time. I'm backporting a similar commit in https://github.com/rust-lang/rust/pull/103859 to make that PR pass CI.
2022-11-03address review commentPietro Albini-2/+5
2022-11-03Fix artifact version/channel detection for stableMark Rousskov-17/+42
On stable, our artifacts are uploaded with the raw version number (e.g., 1.65.0), not the channel. This adjusts our detection logic to use the version number from src/version when we detect the stable channel.
2022-11-03move browser opening logic in BuilderPietro Albini-29/+29
This allows open() to be called from other places in bootstrap (I need this for Ferrocene), and it simplifies the callers by moving the "was_invoked_explicitly" check into the function.
2022-11-02Ban dashes in miropt test file namesJakob Degen-0/+3
2022-11-02prevent open with jsonviandoxdev-0/+5
2022-11-02merge JsonStd and Std stepsviandoxdev-58/+34
2022-11-01Rollup merge of #103781 - JakobDegen:mir-opt-tidy, r=jyn514Manish Goregaokar-0/+2
Detect unused files in `src/test/mir-opt` and error on them in tidy. Closes #97564 . Determining which files are generated by a given mir opt test is somewhat difficult. Because of this, we extract the logic for doing it out into a common crate that both compiletest and tidy can depend on. This avoids making compiletest a dependency of tidy which would negatively impact compile times for tidy. Testing for this is that it catches 5 files that violated this lint (and removes them).
2022-11-01fix json running all the timeviandoxdev-2/+7
2022-11-01Fixes #103816 make --json workviandoxdev-1/+2
2022-10-31Detect unused files in `src/test/mir-opt` and error on them in tidy.Jakob Degen-0/+2
2022-11-01Rollup merge of #103805 - Mark-Simulacrum:forward-port, r=jyn514Yuki Okushi-0/+3
Enable RUSTC_BOOTSTRAP for a few steps This forward-ports this commit so we don't need to keep applying it when branching beta (as done in 1.64, 1.65, and 1.66 beta bumps).
2022-10-31Auto merge of #102950 - oli-obk:check_miri, r=RalfJungbors-53/+24
Enable `x.py check` for miri Now that the miri subtree is working properly, let's add it to x.py check. cc `@rust-lang/miri`
2022-10-31Enable RUSTC_BOOTSTRAP for a few stepsMark Rousskov-0/+3
2022-10-31Rollup merge of #103732 - Mark-Simulacrum:revert-compiler-builtins, r=jyn514Dylan DPC-29/+22
Revert "Make the `c` feature for `compiler-builtins` opt-in instead of inferred" This reverts commit 3acb505ee560770c62bad5362f6caf7567d467b9 (PR #101833). The changes in this commit caused several bugs/incompatibilities (https://github.com/rust-lang/rust/pull/101833#issuecomment-1270191721, https://github.com/rust-lang/rust/issues/102560). For now we're reverting this commit and will re-land it alongside fixes for those bugs. Re-opens #101172 cc #102560 cc #102579
2022-10-30Rollup merge of #102101 - BelovDV:new-check-lld-version, r=petrochenkovMichael Howell-9/+22
check lld version to choose correct option to disable multi-threading in tests Testing compiler with 'use-lld = true' may be incorrect with old lld. Flag, disabling multi-threading, should consider lld version. r? ``@petrochenkov``
2022-10-30skip bootstrap target sanity checks when testing MiriRalf Jung-0/+10
2022-10-29Revert "Make the `c` feature for `compiler-builtins` opt-in instead of inferred"Mark Rousskov-29/+22
This reverts commit 3acb505ee560770c62bad5362f6caf7567d467b9 (PR #101833). The changes in this commit caused several bugs or at least incompatibilies. For now we're reverting this commit and will re-land it alongside fixes for those bugs.
2022-10-29Rollup merge of #102634 - andrewpollack:refactor-test-rustcflags, ↵Guillaume Gomez-3/+7
r=Mark-Simulacrum compiletest: Refactor test rustcflags Refactoring `host-rustcflags` and `target-rustcflags` from `Option<String>` to `Vec<String>` Ref: #102438 r? `@Mark-Simulacrum`
2022-10-26Rollup merge of #102706 - ferrocene:pa-ignore-doc-index, r=jyn514Dylan DPC-18/+48
Support excluding the generation of the standalone docs For Ferrocene we need to exclude the generation of the standalone docs (which include the index page, which we want to replace with our own), but with the way bootstrap is currently implemented that proved not possible. This PR aims to support that. The first problem is that the `doc::Standalone` step did two things: it generated the "standalone" documentation (which includes the index page and all the pages at the root of the documentation tree), but it also generated some files like `rust.css` and `version_info.html` that other step like `doc::TheBook` required. This meant generating the book required generating the index page, which made disabling the index page generation problematic. The approach I took to fix the first problem is to split the step into `doc::Standalone` and `doc::SharedAssets`, with `doc::TheBook` now depending on `doc::SharedAssets`. The second problem is that disabling the `doc::Standalone` proved to be tricky due to its path, `src/doc`. The path is accurate, as the source files for that step are `src/doc/*.md`. The problem is, bootstrap treats `--exclude` as a *suffix*, and so it also excluded the Cargo book whose source lives at `src/tools/cargo/src/doc`. The approach I took to fix the second problem is to add the `standalone` path in addition to `src/doc`, so that you can pass `--exclude standalone`. I'm not fully happy with the solution, and the other idea I had was to just move the standalone docs source code to `src/doc/standalone`. I feel that second approach is cleaner, but also requires more changes and might require more consensus. This PR is best reviewed commit-by-commit. r? `@jyn514`
2022-10-26Add cargo miri to x.py checkOli Scherer-0/+2
2022-10-26check lld version to choose correct flag for testsDaniil Belov-9/+22
2022-10-25Auto merge of #103392 - RalfJung:miri, r=oli-obkbors-5/+49
update Miri I had to use a hacked version of josh to create this, so let's be careful with merging this and maybe wait a bit to see if the josh issue becomes more clear. But the history looks good to me, we are not adding duplicates of rustc commits that were previously mirrored to Miri. Also I want to add some cross-testing of Miri in x.py.
2022-10-24use the shared assets step for building std tooPietro Albini-1/+2
2022-10-24also smoke-test 'cargo miri test'Ralf Jung-2/+36
2022-10-24add support for testing Miri on other targets, and do some cross-testing on CIRalf Jung-3/+13
2022-10-23Rollup merge of #103347 - RalfJung:rustc-src, r=Mark-SimulacrumMichael Howell-0/+14
bootstrap: also create rustc-src component in sysroot Fixes https://github.com/rust-lang/rust-analyzer/issues/12926
2022-10-23Introduce dedicated `-Zdylib-lto` flag for enabling LTO on `dylib`sJakub Beránek-4/+25
2022-10-23Add `rust.lto` config optionJakub Beránek-1/+32
2022-10-21bootstrap: also create rustc-src component in sysrootRalf Jung-0/+14
2022-10-19compiletest: refactor rustcflags to VecAndrew Pollack-3/+7
2022-10-19mark rust-analyzer as a host-only toolPietro Albini-2/+2
All tools meant to be shipped with host toolchains only should be marked as `ONLY_HOSTS = true`, but rust-analyzer was marked as `ONLY_HOSTS = false` incorrectly. This meant that bootstrap attempted to build rust-analyzer for cross-compilation-only targets, causing errors because libstd is not present on some of them. It will still be possible to cross-compile rust-analyzer by passing a different --host flag to ./x, like you can cross-compile other tools.
2022-10-18apply joshua's suggestionPietro Albini-1/+1
Co-authored-by: Joshua Nelson <github@jyn.dev>
2022-10-14more dupe word typosRageking8-1/+1
2022-10-13Remove unused macro argumentOli Scherer-12/+11