about summary refs log tree commit diff
path: root/src/bootstrap/bin/rustc.rs
AgeCommit message (Collapse)AuthorLines
2020-04-12rustbuild: Remove LLD flavor workaround for MSVCVadim Petrochenkov-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-3/+3
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-22/+24
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
2019-08-27rustbuild: allow disabling deny(warnings) for bootstrapMarc-Antoine Perennou-5/+3
When deny-warnings is not specified or set to true, the behaviour is the same as before. When deny-warnings is set to false, warnings are now allowed Fixes #63911 Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2019-08-17Make built-in derives opaque macrosMatthew Jasper-2/+2
2019-08-17Rollup merge of #63642 - eddyb:wrap-it-up, r=rkruppe,Mark-SimulacrumMazdak Farrokhzad-2/+7
Rename overflowing_{add,sub,mul} intrinsics to wrapping_{add,sub,mul}. These confused @Gankra, and then, also me, especially since `overflowing_*` *methods* also exist, but they map to `*_with_overflow` intrinsics! r? @oli-obk / @nikomatsakis cc @Mark-Simulacrum (on the rustbuild workaround)
2019-08-17Rollup merge of #63558 - jgalenson:move-remap, r=alexcrichtonMazdak Farrokhzad-4/+4
Remap paths for proc-macro crates. The remap-debuginfo config option remaps paths in most crates, but it does not apply to proc-macros, so they are still non-reproducible. This patch fixes that. I'm not completely sure if this is the best way to do this, but to get reproducible builds we need librustc_macros to be built with --remap-path-prefix. I was previously modifying Cargo to pass that argument to all child crates, so this seems simpler and more correct. I did not add a test since there do not seem to be any existing tests for RUSTC_DEBUGINFO_MAP. r? @alexcrichton
2019-08-16rustbuild: work around the stdarch cfg(bootstrap) bug.Eduard-Mihai Burtescu-2/+7
2019-08-14Remap debuginfo for all crates.Joel Galenson-13/+3
2019-08-14Remap paths for proc-macro crates.Joel Galenson-0/+10
The remap-debuginfo config option remaps paths in most crates, but it does not apply to proc-macros, so they are still non-reproducible. This patch fixes that.
2019-08-14Update error-format to match new Cargo flags for pipeliningAlex Crichton-12/+0
2019-08-14Disable --cfg bootstrap in libcoreMark Rousskov-1/+5
This is needed to permit us building core_arch which is a submodule dep (so we can't snap it to the new beta compiler).
2019-08-14Handle cfg(bootstrap) throughoutMark Rousskov-4/+1
2019-08-08Miri test: call 'cargo miri test' and use the sysroot it has set upRalf Jung-2/+5
2019-08-08bootstrap: get rid of TEST_MIRI env varRalf Jung-14/+0
2019-07-28Fix `cfg(parallel_compiler)` modeVadim Petrochenkov-0/+2
Fix rebase
2019-07-28Deny `unused_lifetimes` through rustbuildVadim Petrochenkov-1/+2
2019-07-28Remove lint annotations in specific crates that are already enforced by ↵Vadim Petrochenkov-1/+2
rustbuild Remove some random unnecessary lint `allow`s
2019-07-07Address review commentsVadim Petrochenkov-2/+4
2019-07-06rustbuild: Cleanup global lint settingsVadim Petrochenkov-37/+29
2019-06-24Use symbols in lint tool listflip1995-5/+6
2019-06-24Turn internal lints into tool lintsflip1995-2/+6
2019-06-24Rename internal -> rustc::internalflip1995-1/+3
2019-06-24Enable internal lints in bootstrapflip1995-1/+7
2019-06-12Add a RUSTC_TIME env var to time rust crates during bootstrapJohn Kåre Alsaker-4/+16
2019-06-05Utilize cfg(bootstrap) over cfg(stage0)Mark Rousskov-2/+6
Also removes stage1, stage2 cfgs being passed to rustc to ensure that stage1 and stage2 are only differentiated as a group (i.e., only through not bootstrap).
2019-05-24rustbuild: Simplify debuginfo configurationVadim Petrochenkov-5/+4
2019-05-02Auto merge of #60156 - RalfJung:macos-rand, r=oli-obk,alexcrichtonbors-0/+1
use SecRandomCopyBytes on macOS in Miri This is a hack to fix https://github.com/rust-lang/miri/issues/686: on macOS, rustc will open `/dev/urandom` to initialize a `HashMap`. That's quite hard to emulate properly in Miri without a full-blown implementation of file descriptors. However, Miri needs an implementation of `SecRandomCopyBytes` anyway to support [getrandom](https://crates.io/crates/getrandom), so using it here should work just as well. This will only have an effect when libstd is compiled specifically for Miri, but that will generally be the case when people use `cargo miri`. This is clearly a hack, so I am opening this to start a discussion about whether we are okay with such a hack or not. Cc @oli-obk