about summary refs log tree commit diff
path: root/src/bootstrap/bin
AgeCommit message (Collapse)AuthorLines
2020-10-11Mostly print statements to see where things areWinnie Xiao-4/+4
More print statementsstatements lol Solved the basic case of eliminating check_version ifk_version if subcommand = setup Finished v1 checking out old bootstrap.py checked out old irrelevant files fixed tidy Moved VERSION from bin/main.rs to lib.rs Fixed semicolon return issue x.py fmt
2020-10-03Auto merge of #77347 - jyn514:dox, r=Amanieubors-7/+0
Remove --cfg dox from rustdoc.rs This was added in https://github.com/rust-lang/rust/pull/53076 because several dependencies were using `cfg(dox)` instead of `cfg(rustdoc)` (now `cfg(doc)`). I ran `rg 'cfg\(dox\)'` on the source tree with no matches, so I think this is now safe to remove. r? `@Mark-Simulacrum` cc `@QuietMisdreavus` :)
2020-09-29Remove unused --cfg stageNJoshua Nelson-3/+0
2020-09-29Remove --cfg dox from rustdoc.rsJoshua Nelson-4/+0
This was added in https://github.com/rust-lang/rust/pull/53076 because several dependencies were using `cfg(dox)` instead of `cfg(rustdoc)`. I ran `rg 'cfg\(dox\)'` on the source tree with no matches, so I think this is now safe to remove.
2020-09-28Bump bootstrap version and update changelogTyler Mandry-1/+1
2020-09-26Rollup merge of #76631 - jyn514:x.py-setup, r=Mark-SimulacrumRalf Jung-3/+16
Add `x.py setup` Closes #76503. - Suggest `x.py setup` if config.toml doesn't exist yet - Prompt for a profile if not given on the command line - Print the configuration that will be used - Print helpful starting commands after setup - Link to the dev-guide after finishing
2020-09-24Add `x.py setup`Joshua Nelson-3/+16
- Suggest `x.py setup` if config.toml doesn't exist yet (twice, once before and once after the build) - Prompt for a profile if not given on the command line - Print the configuration file that will be used - Print helpful starting commands after setup - Link to the dev-guide after finishing - Note that distro maintainers will see the changelog warning
2020-09-23clarify that `changelog-seen = 1` goes to the beginning of config.tomlMatthias Krüger-1/+1
Fixes #77105
2020-09-21Add a changelog for x.pyJoshua Nelson-0/+35
- Add a changelog and instructions for updating it - Use `changelog-seen` in `config.toml` and `VERSION` in bootstrap to determine whether the changelog has been read - Nag people if they haven't read the x.py changelog + Print message twice to make sure it's seen - Give different error messages depending on whether the version needs to be updated or added
2020-09-07rustbuild: Propagate LLD to more places when `use-lld` is enabledVadim Petrochenkov-1/+7
2020-08-14Fix crate-version with rustdoc in bootstrap.Eric Huss-6/+0
2020-08-02Avoid dumping rustc invocations to stdoutMark Rousskov-1/+3
These are quite long, usually, and in most cases not interesting. On smaller terminals they can take up more than a full page of output, hiding the error diagnostics emitted.
2020-07-27rustbuild: refactor how the wrapper deals with exit codesXimin Luo-26/+24
2020-07-27rustbuild: format both Ok/Err separately, since Result doesn't do itXimin Luo-2/+2
2020-07-27rustbuild: use Display for exit status instead of Debug, see #74832 for ↵Ximin Luo-1/+1
justification
2020-07-27rustbuild: rename exec_cmd -> status_code for clarityXimin Luo-3/+3
2020-07-27rustbuild: fix bad usage of UNIX exec() in rustc wrapperXimin Luo-7/+0
exec never returns, it replaces the current process. so anything after it is unreachable. that's not how exec_cmd() is used in the surrounding code
2020-07-13Rollup merge of #74046 - ehuss:deny-warnings-caching, r=Mark-SimulacrumManish Goregaokar-0/+4
Fix caching issue when building tools. This fixes a problem with tool builds not being cached properly. #73297 changed it so that Clippy will participate in the "deny warnings" setting. Unfortunately this causes a problem because Clippy shares the build directory with other tools which do not participate in "deny warnings". Because Cargo does not independently cache artifacts based on different RUSTFLAGS settings, it causes all the shared dependencies to get rebuilt if Clippy ever gets built. The solution here is to stop using RUSTFLAGS, and just sneak the settings in through the rustc wrapper. Cargo won't know about the different settings, so it will not bust the cache. This should be safe since lint settings on dependencies are ignored. This is how things used to work in the past before #64316. Alternate solutions: * Treat Clippy as a "submodule" and don't enforce warnings on it. This was the behavior before #73297. The consequence is that if a warning sneaks into clippy, that the clippy maintainers will need to fix it when they sync clippy back to the clippy repo. * Just deny warnings on all tools (removing the in-tree/submodule distinction). This is tempting, but with some issues (cc #52336): * Adding or changing warnings in rustc can be difficult to land because tools have to be updated if they trip the warning. In practice, this isn't too bad. Cargo (and rustfmt) already runs with `deny(warnings)`, so this has been the de-facto standard already (although they do not use the extra lints like `unused_lifetimes`). * Teach Cargo to add flags to the workspace members, but not dependencies. * Teach Cargo to add flags without fingerprinting them? * Teach Cargo to independently cache different RUSTFLAGS artifacts (this was [reverted](https://github.com/rust-lang/cargo/pull/7417) due to complications). This would also unnecessarily rebuild dependencies, but would avoid cache thrashing. * Teach Cargo about lint settings. Closes #74016
2020-07-06Rollup merge of #70563 - GuillaumeGomez:page-hash-handling, r=ollie27,kinnisonManish Goregaokar-14/+1
[rustdoc] Page hash handling Fixes https://github.com/rust-lang/rust/issues/70476 A good example to see the change is to use this URL: https://doc.rust-lang.org/nightly/std/string/struct.String.html#from_iter.v-3 After the change, it actually goes to the target element (and change the page hash to something more clear for the users). r? @kinnison cc @ollie27
2020-07-04Fix caching issue when building tools.Eric Huss-0/+4
2020-07-02Remove render-redirect-pages option in rustdocGuillaume Gomez-14/+1
2020-06-29rustbuild: Move compiler-builtins build logic to manifestAlex Crichton-24/+0
This commit moves the compiler-builtins-specific build logic from `src/bootstrap/bin/rustc.rs` into the workspace `Cargo.toml`'s `[profile]` configuration. Now that rust-lang/cargo#7253 is fixed we can ensure that Cargo knows about debug assertions settings, and it can also be configured to specifically disable debug assertions unconditionally for compiler-builtins. This should improve rebuild logic when debug-assertions settings change and also improve build-std integration where Cargo externally now has an avenue to learn how to build compiler-builtins as well.
2020-04-24Fix cross-compiling LLD to different platformsAlex Crichton-1/+8
Looks like the native build system isn't great a coping with this, so try to work around that with a few workarounds.
2020-04-12rustbuild: Remove LLD flavor workaround for MSVCVadim Petrochenkov-5/+0
2020-02-26Stabilize --crate-version option in rustdocGuillaume Gomez-5/+0
2020-02-09Auto merge of #68623 - Zoxc:lld, r=Mark-Simulacrumbors-0/+5
Add an option to use LLD to link the compiler on Windows platforms Based on https://github.com/rust-lang/rust/pull/68609. Using LLD is good way to improve compile times on Windows since `link.exe` is quite slow. The time for `x.py build --stage 1 src/libtest` goes from 0:12:00 to 0:08:29. Compile time for `rustc_driver` goes from 226.34s to 18.5s. `rustc_macros` goes from 28.69s to 7.7s. The size of `rustc_driver` is also reduced from 83.3 MB to 78.7 MB. r? @Mark-Simulacrum
2020-02-03bootstrap: fix clippy warningsMatthias Krüger-4/+4
2020-01-29Add an option to use LLD to link the compiler on Windows platformsJohn Kåre Alsaker-0/+5
2019-12-22Format the worldMark Rousskov-40/+38
2019-11-06rename cfg(rustdoc) into cfg(doc)Guillaume Gomez-1/+1
2019-09-23Add some FIXME for future Cargo issuesAlex Crichton-0/+6
2019-09-23Move handling of `-Cprefer-dynamic` into `builder.rs`Alex Crichton-7/+0
This logic is *super* old and can be tweaked and moved into `builder.rs`
2019-09-23Move `--cfg bootstrap` out of `rustc.rs`Alex Crichton-15/+0
Instead let's do this via `RUSTFLAGS` in `builder.rs`. Currently requires a submodule update of `stdarch` to fix a problem with previous compilers.
2019-09-23Move handling of `RUSTC_PARALLEL_COMPILER` to `compile.rs`Alex Crichton-4/+0
No longer needs to live in `rustc.rs`
2019-09-23Move handling of `{MUSL,WASI}_ROOT` to `compile.rs`Alex Crichton-19/+1
No longer any need for them to live in `rustc.rs`!
2019-09-23Move debuginfo level handling to `builder.rs`Alex Crichton-4/+0
2019-09-23Remove duplication of `RUSTC_DEBUGINFO_MAP` in rustc.rsAlex Crichton-4/+0
2019-09-23Move handling of `codegen-units` to `builder.rs`Alex Crichton-4/+0
2019-09-23Move handling of internal lints to `build.rs`Alex Crichton-15/+0
2019-09-23Move handling of some warnings to `builder.rs`Alex Crichton-5/+0
2019-09-23Move handling of `-Dwarnings` to `builder.rs`Alex Crichton-3/+0
2019-09-23bootstrap: Remove need for `RUSTC_RPATH` variableAlex Crichton-48/+0
2019-09-23bootstrap: Move `RUSTC_CRT_STATIC` to `builder.rs`Alex Crichton-7/+2
2019-09-23bootstrap: Remove need for RUSTC_SAVE_ANALYSISAlex Crichton-9/+0
2019-09-23bootstrap: Remove usage of `RUSTC_TARGET_LINKER`Alex Crichton-5/+0
Cargo has a native enviroment variable for this.
2019-09-23bootstrap: Move `-Zdual-proc-macros` to `builder.rs`Alex Crichton-6/+0
2019-09-23bootstrap: Move `-Zexternal-macro-backtrace` to builderAlex Crichton-2/+0
No need for this to be in `rustc.rs`
2019-09-23bootstrap: Move `RUSTC_BREAK_ON_ICE` out of shimAlex Crichton-2/+0
This is always set, so let's just always set it elsewhere to reduce the need for our `rustc.rs` shim.
2019-09-23bootstrap: Delete handling of `RUSTC_METADATA_SUFFIX`Alex Crichton-17/+1
This is already handled by `__CARGO_DEFAULT_LIB_METADATA` so there's no need to doubly do it.
2019-09-04Ensure all warnings are emitted even on warnings=warnMark Rousskov-6/+7