about summary refs log tree commit diff
path: root/src/bootstrap
AgeCommit message (Collapse)AuthorLines
2023-02-10Rollup merge of #107876 - zephaniahong:issue-107547-fix, r=albertlarsan68Matthias Krüger-3/+6
create symlink only for non-windows operating systems Follow up on #107834 It's my first time using the #cfg attribute. Did I use it correctly? Thank you!
2023-02-10create symlink only for non-windows operating systemsZephaniah Ong-3/+6
2023-02-10Rollup merge of #107841 - tharunsuresh-code:snap_curl, r=ozkanonurMatthias Krüger-2/+2
Handled snap curl issue inside Rust
2023-02-09Patch `build/rustfmt/lib/*.so` for NixOSDeadbeef-2/+8
fixes #107676.
2023-02-09Handled snap curl issue inside Rust #107722Tharun Suresh-2/+2
2023-02-09Rollup merge of #107834 - zephaniahong:issue-107547-fix, r=albertlarsan68Matthias Krüger-12/+17
create symlink for legacy rustfmt path Fixes #107547 . Main change is in the `download.rs` file. Created a symlink for the legacy rustfmt path to the new rustfmt path. Other file changes are simply as a result of porting over the symlink_file function from the Build struct to the config Struct
2023-02-09Rollup merge of #107808 - kadiwa4:built-unsuccessfully, r=albertlarsan68Matthias Krüger-1/+3
bootstrap.py: fix build-failure message A small mistake I did. Corrects #107470, fixes #107804 r? `@albertlarsan68` (since you reviewed the last one)
2023-02-09port over symlink_file function from Build to Config and create symlink for ↵Zephaniah Ong-12/+17
legacy rustfmt path
2023-02-08Rollup merge of #107819 - clubby789:x-py-root, r=jyn514Michael Goulet-3/+5
Set `rust-analyzer.check.invocationLocation` to `root` Add ```json "rust-analyzer.check.invocationLocation": "root", "rust-analyzer.check.invocationStrategy": "once", ``` to the bundled VS code config. This prevents an error with r-a invoking `python3 x.py` in `src/bootstrap` where `x.py` does not exist. r? ``@jyn514``
2023-02-08Rollup merge of #107790 - tharunsuresh-code:snap_curl, r=jyn514Michael Goulet-8/+10
x.py fails all downloads that use a tempdir with snap curl #107722 Have used the open() library from python to capture the binary output of the curl command and write it to a file using stdout of the subprocess. Added a single-line comment mentioning the redirect operator.
2023-02-08Set `rust-analyzer.check.invocationLocation` to `root`clubby789-3/+5
2023-02-08bootstrap.py: fix build-failure messageKaDiWa-1/+3
2023-02-08 x.py fails all downloads that use a tempdir with snap curl #107722Tharun Suresh-8/+10
2023-02-08Rollup merge of #107757 - clubby789:setup-settings-json, r=jyn514Matthias Krüger-26/+135
Allow automatically creating vscode `settings.json` with `x setup` Closes #107703
2023-02-07Allow automatically creating vscode `settings.json` from bootstrapclubby789-26/+135
2023-02-05Run `expand-yaml-anchors` in `x test tidy`Joshua Nelson-3/+5
Previously, the pre-commit hook which runs `x test tidy` could pass only to have CI fail within the first 30 seconds. This adds about 30 seconds to `test tidy` (for an initial run, much less after the tool is built the first time) in exchange for catching errors in `.github/workflows/ci.yml` before they're pushed.
2023-02-04Rollup merge of #107116 - ozkanonur:consolidate-bootstrap-docs, r=jyn514Matthias Krüger-248/+38
consolidate bootstrap docs With this diff, I tried to consolidate bootstrap documentations and remove the duplicated informations. Coupled with https://github.com/rust-lang/rustc-dev-guide/pull/1563 Resolves #90686 Signed-off-by: ozkanonur <work@onurozkan.dev>
2023-02-04consolidate bootstrap docsozkanonur-248/+38
Signed-off-by: ozkanonur <work@onurozkan.dev>
2023-02-03Fix `x fix` on the standard library itselfJoshua Nelson-0/+4
2023-02-03Auto merge of #107241 - clubby789:bootstrap-lto-off, r=simulacrumbors-1/+17
Add `rust.lto=off` to bootstrap and set as compiler/library default Closes #107202 The issue mentions `embed-bitcode=on`, but here https://github.com/rust-lang/rust/blob/c8e6a9e8b6251bbc8276cb78cabe1998deecbed7/src/bootstrap/compile.rs#L379-L381 it appears that this is always set for std stage 1+, so I'm unsure if changes are needed here. `@rustbot` label +A-bootstrap
2023-02-01Rollup merge of #107470 - kadiwa4:bootstrap_cleanup, r=albertlarsan68Matthias Krüger-170/+188
Small bootstrap improvements - i/o-less check for `xz` availability - cache result of NixOS detection - load correct `bootstrap` module even when a package of that name is installed - no `-W semicolon_in_expressions_from_macros` – it is warn-by-default - one type per variable (making dynamic typing less confusing) - integrate python-side `--help` flag into the argument parser (makes `-hv` work as a short form of `--help --verbose`) I even checked that it works with Python 2.
2023-01-31Auto merge of #107297 - Mark-Simulacrum:bump-bootstrap, r=pietroalbinibors-4/+16
Bump bootstrap compiler to 1.68 This also changes our stage0.json to include the rustc component for the rustfmt pinned nightly toolchain, which is currently necessary due to rustfmt dynamically linking to that toolchain's librustc_driver and libstd. r? `@pietroalbini`
2023-01-31assert that `should_fix_bins_and_dylibs` has been runKaDiWa-42/+54
2023-01-31Download rustc component for rustfmt toolchain as wellMark Rousskov-4/+16
2023-01-30bootstrap: --help handlingKaDiWa-23/+24
2023-01-30bootstrap script: slight cleanupKaDiWa-141/+146
2023-01-30Auto merge of #107080 - Urgau:cleanup-bootstrap-extra-check-cfgs, ↵bors-14/+8
r=Mark-Simulacrum bootstrap: cleanup the list of extra check cfgs This PR performs some cleanups on the `EXTRA_CHECK_CFGS` list in bootstrap. - `target_os=watchos`: no longer relevant because there are now proper targets `*-apple-watchos` - `target_arch=nvptx64`: target `nvptx64-nvidia-cuda` makes it useless - `target_arch=le32`: target was removed (https://github.com/rust-lang/rust/pull/45041) - `release`: was removed from rustfmt (https://github.com/rust-lang/rustfmt/pull/5375 and https://github.com/rust-lang/rustfmt/pull/5449) - `dont_compile_me`: was removed from stdarch (https://github.com/rust-lang/stdarch/pull/1308) Also made some external cfg exception mode clear and only activated for rustc and rustc tools (as to not have the Standard Library unintentionally depend on them).
2023-01-30Rollup merge of #107264 - ferrocene:pa-private-items, r=Mark-SimulacrumDylan DPC-0/+6
Add option to include private items in library docs I need to perform some one-off analysis on libcore, and I wanted to use the unstable JSON rustdoc output to easily do it. Unfortunately, there is currently no way to include unstable items in the library docs. This PR adds support for that, with the off-by-default `build.library-docs-private-items` setting.
2023-01-30Rollup merge of #106106 - jyn514:remote-tracking-branch, r=Mark-SimulacrumDylan DPC-3/+23
Pass `branch.{branch}.remote=origin` to `git submodule update` This works around a bug in git itself. Fixes https://github.com/rust-lang/rust/issues/101144.
2023-01-29When stamp doesn't exist, should say Error, and print path to stamp fileteapot4195-1/+2
2023-01-28Gracefully exit when --keep-stage used on clean source treeteapot4195-0/+7
2023-01-28Rollup merge of #107332 - chansuke:issue-107230, r=albertlarsan68Yuki Okushi-1/+1
Fix wording from `rustbuild` to `bootstrap` Fixes #107230
2023-01-28Rollup merge of #107234 - Rattenkrieg:bootstrap-fix-is_ci_llvm_available, ↵Yuki Okushi-34/+41
r=albertlarsan68 Revisit fix_is_ci_llvm_available logic Fixes #107225 Now `supported_platforms` has a knowledge whether llvm asserts artifacts are available for particular host triple. ``@jyn514`` ``@albertlarsan68`` PTAL
2023-01-27Revisit fix_is_ci_llvm_available logic; read build triple from tomlSergey Prytkov-34/+41
2023-01-27Fix woriding from `rustbuild` to `bootstrap`chansuke-1/+1
2023-01-26also document hidden itemsPietro Albini-1/+1
2023-01-26Add `rust.lto=off` to bootstrapclubby789-1/+17
2023-01-26Rollup merge of #107086 - clubby789:bootstrap-lock-pid-linux, r=albertlarsan68Matthias Krüger-2/+34
Print PID holding bootstrap build lock on Linux Partially address #107077 Parse `/proc/locks` to find the PID of the process which created the build directory lock
2023-01-25Cleanup extra check configs in bootstrapUrgau-14/+8
- `target_os=watchos`: no longer relevant because there are now proper targets `*-apple-watchos` - `target_arch=nvptx64`: `nvptx64-nvidia-cuda` - `target_arch=le32`: target was removed (https://github.com/rust-lang/rust/pull/45041) - `release`: was removed from rustfmt (https://github.com/rust-lang/rustfmt/pull/5375 and https://github.com/rust-lang/rustfmt/pull/5449) - `dont_compile_me`: was removed from stdarch (https://github.com/rust-lang/stdarch/pull/1308) Also made some external cfg exception mode clear and only activated for rustc and rustc tools (as to not have the Standard Library unintentionally depend on them).
2023-01-24add option to include private items in library docsPietro Albini-0/+6
2023-01-23Print PID holding bootstrap build lock on Linuxclubby789-2/+34
2023-01-23Bring tests back into rustc source tarballTomasz Miąsko-1/+1
They were missing after recent move from src/test to tests.
2023-01-23Rollup merge of #106886 - dtolnay:fastinstall, r=Mark-SimulacrumYuki Okushi-6/+22
Make stage2 rustdoc and proc-macro-srv disableable in x.py install Rustdoc will build if `[build] tools = ["rustdoc"]` is set, and rust-analyzer-proc-macro-srv will build if `[build] tools = ["rust-analyzer"]` is set. On my machine skipping these tools speeds up `x.py install` from 7m15s to 6m08s (0m43s for rustdoc and 0m24s for rust-analyzer-proc-macro-srv). This is a significant speedup, since I never use rust-analyzer-proc-macro-srv, and I practically never need to use a custom build of rustdoc.
2023-01-22Rollup merge of #107127 - uweigand:s390x-sanitizer, r=Mark-SimulacrumMatthias Krüger-0/+6
Enable sanitizers for s390x-linux Include sanitizers supported by LLVM on s390x (asan, lsan, msan, tsan) in the target definition, as well as in the compiletest supported list. Build sanitizer runtime for the target. Enable sanitizers in the CI.
2023-01-21Rollup merge of #107015 - cuviper:ra-riscv64, r=Mark-SimulacrumMichael Goulet-6/+0
Re-enable building rust-analyzer on riscv64 It was disabled in #75103 due to an LLVM bug, but followup comments have confirmed that it builds fine on Fedora with LLVM 15. r? ```@Mark-Simulacrum``` cc ```@matklad``` ```@davidlt```
2023-01-20Enable sanitizers for s390x-linuxUlrich Weigand-0/+6
Include sanitizers supported by LLVM on s390x (asan, lsan, msan, tsan) in the target definition, as well as in the compiletest supported list. Build sanitizer runtime for the target. Enable sanitizers in the CI.
2023-01-18Auto merge of #105716 - chriswailes:ndk-update-redux, r=pietroalbinibors-6/+18
Ndk update redux Blocked on https://github.com/rust-lang/blog.rust-lang.org/pull/1055
2023-01-17Re-enable building rust-analyzer on riscv64Josh Stone-6/+0
It was disabled in #75103 due to an LLVM bug, but followup comments have confirmed that it builds fine on Fedora with LLVM 15.
2023-01-14Make stage2 rustdoc and proc-macro-srv disableable in x.py installDavid Tolnay-6/+22
2023-01-14Auto merge of #106520 - ehuss:update-mdbook, r=Mark-Simulacrumbors-18/+102
Update mdbook This updates mdbook from 0.4.21 to 0.4.25. The list of changes is [here](https://github.com/rust-lang/mdBook/blob/master/CHANGELOG.md#mdbook-0425). The only user-visible changes are some changes around the theme picker, and change to the copy-to-clipboard ignoring hidden lines. Internally there were some dependency updates and small fixes. This also updates `clap` from 4.0.15 to 4.0.32 whose changelog is [here](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md#4032---2022-12-22). This impacts tools like cargo. I don't see anything particularly noteworthy there, though there are some small user-visible changes. Unfortunately this required adding a hack for building `rustix` with a bootstrap tool. The comment explains why. I am unable to think of some other workaround (or even a cleaner way to set the rustflag). Ideas are welcome if you can think of alternatives. I'm struggling to even think of a long-term solution, other than asking projects not to do auto-nightly feature detection. One medium-term solution is to avoid the clap dependency for the mdbook library (which is how rustix gets pulled in). That is one of my goals for the 0.5 release of mdbook, but that probably won't happen until later this year. It would also require dropping clap from `rustbook` and using some other means to parse arguments (there's only two options, so it can probably be done manually).