about summary refs log tree commit diff
path: root/src/bootstrap
AgeCommit message (Collapse)AuthorLines
2019-10-15minimize the rust-std componentJosh Stone-33/+97
This splits out a rustc-dev component with the compiler crates, and keeps the status quo of default installed files on nightly. The default changing to not install compiler libraries by default is left for a future pull request. However, on stable and beta, this does remove the compiler libraries from the set of libraries installed by default, as they are never needed there (per our stability story, they "cannot" be used).
2019-10-12Revert "Auto merge of #64823 - cuviper:min-std, r=Mark-Simulacrum"Mark Rousskov-97/+33
This reverts commit 000d90b11f7be70ffb7812680f7abc6deb52ec88, reversing changes made to 898f36c83cc28d7921a1d7b3605323dc5cfcf533.
2019-10-10Auto merge of #64823 - cuviper:min-std, r=Mark-Simulacrumbors-33/+97
minimize the rust-std component This changes the `rust-std` dist component to only include the artifacts of compiling the `libstd` step, as listed in `.libstd.stamp`. This does include `test` and `proc-macro` as well. The remaining _unstable_ libraries that are built as part of `rustc` are packaged into a new `rustc-dev` component, intended for use in the development of closely related tools (clippy, miri, rls). Here are the component sizes from the [try build](https://dev-static.rust-lang.org/dist/2019-10-07/index.html): | Name | Size | --- | --- | rust-std-nightly-x86_64-unknown-linux-gnu.tar.gz | 23.94 MiB | rust-std-nightly-x86_64-unknown-linux-gnu.tar.xz | 17.4 MiB | rustc-dev-nightly-x86_64-unknown-linux-gnu.tar.gz | 182.03 MiB | rustc-dev-nightly-x86_64-unknown-linux-gnu.tar.xz | 157.91 MiB Fixes #61978 Fixes #62486
2019-10-10Auto merge of #65129 - andjo403:cargo_args, r=alexcrichtonbors-0/+10
make it possible to add args to cargo in x.py eg. make it easier to test -Ztimings for rustc cc https://github.com/rust-lang/rust/issues/65088
2019-10-09make it possible to add args to cargo in x.pyAndreas Jonson-0/+10
eg. make it easier to test -Ztimings for rustc
2019-10-07add dist::RustcDev for unstable compiler librariesJosh Stone-58/+46
2019-10-07Use builder.compiler_for() to find the libstd stampJosh Stone-2/+2
2019-10-07[WIP] minimize the rust-std componentJosh Stone-2/+78
2019-10-05Revert "Auto merge of #63649 - tlively:emscripten-upstream-upgrade, ↵Tyler Mandry-4/+2
r=alexcrichton" This reverts commit 7870050796e5904a0fc85ecbe6fa6dde1cfe0c91, reversing changes made to 2e7244807a7878f6eca3eb7d97ae9b413aa49014.
2019-10-04Fix ABI, run and fix more tests, re-enable CI for PRsThomas Lively-2/+6
2019-10-04Upgrade Emscripten targets to use upstream LLVM backendThomas Lively-4/+2
- Refactors the Emscripten target spec to share code with other wasm targets. - Replaces the incorrect wasm32 C call ABI with the old asmjs version, which is correct for both wasm32 and JS. - Updates the varargs ABI used by Emscripten and deletes the old one. - Removes the obsolete wasm32-experimental-emscripten target. - Temporarily makes Emscripten targets use panic=abort by default because supporting unwinding will require an LLVM patch.
2019-10-02Replace mentions of IRC with DiscordBO41-3/+5
2019-09-25Switch version to 1.40Mark Rousskov-1/+1
2019-09-23rustbuild: Pass `-Zsave-analysis` during testsAlex Crichton-2/+1
This is needed to ensure that the crates during a normal build are shared with the crates during testing, otherwise they'll end up hasing differently and we'll recompile crates like `core` during tests.
2019-09-23No need to remove target-specific RUSTFLAGSAlex Crichton-5/+3
Turns out Cargo favors RUSTFLAGS!
2019-09-23Stylistic changesAlex Crichton-13/+7
2019-09-23Add some FIXME for future Cargo issuesAlex Crichton-0/+6
2019-09-23Move handling of `-Cprefer-dynamic` into `builder.rs`Alex Crichton-15/+10
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/+1
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-5/+1
No longer needs to live in `rustc.rs`
2019-09-23Move handling of `{MUSL,WASI}_ROOT` to `compile.rs`Alex Crichton-21/+12
No longer any need for them to live in `rustc.rs`!
2019-09-23Allow adding `RUSTFLAGS` after `Builder::cargo`Alex Crichton-59/+95
This commit changes the return type of `Builder::cargo` to return a builder that allows dynamically adding more `RUSTFLAGS` values after-the-fact. While not used yet, this will later be used to delete more of `rustc.rs`
2019-09-23Move debuginfo level handling to `builder.rs`Alex Crichton-5/+1
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-6/+12
2019-09-23Move handling of internal lints to `build.rs`Alex Crichton-15/+8
2019-09-23Move handling of some warnings to `builder.rs`Alex Crichton-7/+10
2019-09-23Move handling of `-Dwarnings` to `builder.rs`Alex Crichton-5/+2
2019-09-23bootstrap: Remove need for `RUSTC_RPATH` variableAlex Crichton-49/+48
2019-09-23bootstrap: Handle target-specific cargo env varsAlex Crichton-2/+12
This commit ensure that we handle target-specific env vars for RUSTFLAGS through Cargo as well.
2019-09-23bootstrap: Move `RUSTC_CRT_STATIC` to `builder.rs`Alex Crichton-8/+7
2019-09-23bootstrap: Remove need for RUSTC_SAVE_ANALYSISAlex Crichton-26/+20
2019-09-23bootstrap: Remove usage of `RUSTC_TARGET_LINKER`Alex Crichton-17/+13
Cargo has a native enviroment variable for this.
2019-09-23bootstrap: Move `-Zdual-proc-macros` to `builder.rs`Alex Crichton-7/+1
2019-09-23bootstrap: Move `-Zexternal-macro-backtrace` to builderAlex Crichton-2/+2
No need for this to be in `rustc.rs`
2019-09-23bootstrap: Move `RUSTC_BREAK_ON_ICE` out of shimAlex Crichton-3/+2
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-35/+1
This is already handled by `__CARGO_DEFAULT_LIB_METADATA` so there's no need to doubly do it.
2019-09-23bootstrap: Add a helper for managing RUSTFLAGSAlex Crichton-17/+34
Most of `bootstrap/bin/rustc.rs` doesn't need to exist with the advent of `RUSTFLAGS` (yes this is super old) so this starts by refactoring a bit to make it easier locally in the `Builder::cargo` method to append to `RUSTFLAGS` that gets down to rustc.
2019-09-21Rollup merge of #64618 - alexcrichton:improve-dist-output, r=Mark-SimulacrumMazdak Farrokhzad-19/+47
rustbuild: Improve output of `dist` step * Pass `/Q` to `iscc` on Windows to supress the thousands of lines of output about compressing documentation. * Print out what's happening before long steps * Use `timeit` to print out timing information for long-running installer assemblies. * Try to scope output of `Dist ...` to not also encompass actual build steps
2019-09-19rustbuild: Improve output of `dist` stepAlex Crichton-19/+47
* Pass `/Q` to `iscc` on Windows to supress the thousands of lines of output about compressing documentation. * Print out what's happening before long steps * Use `timeit` to print out timing information for long-running installer assemblies.
2019-09-19Rollup merge of #64613 - alexcrichton:less-doc-copies, r=Mark-SimulacrumMazdak Farrokhzad-1/+1
rustbuild: Copy crate doc files fewer times Previously when building documentation for the standard library we'd copy all the files 5 times, and these files include libcore/libstd docs which are huge! This commit instead only copies the files after rustdoc has been run for each crate, reducing the number of redundant copies we're making.
2019-09-19rustbuild: Copy crate doc files fewer timesAlex Crichton-1/+1
Previously when building documentation for the standard library we'd copy all the files 5 times, and these files include libcore/libstd docs which are huge! This commit instead only copies the files after rustdoc has been run for each crate, reducing the number of redundant copies we're making.
2019-09-19rustbuild: Don't package libstd twiceAlex Crichton-1/+1
Looks like the packaging step for the standard library was happening twice on CI, but it only needs to happen once! The `Analysis` packaging step accidentally packaged `Std` instead of relying on compiling `Std`, which meant that we ended up packaging it twice erroneously.
2019-09-17build-manifest: add some commentsRalf Jung-4/+10
2019-09-17Revert "Rollup merge of #64451 - RalfJung:miri-manifest, r=pietroalbini"Pietro Albini-10/+4
This reverts commit 7975973e2b806a7ee8e54b40f9e774528a777e31, reversing changes made to f0320e54c7c2c923e2e05996ac1d74f781115bbc.
2019-09-14when BUILD_MANIFEST_DISABLE_SIGNING is set, we don't need gpg-password-fileRalf Jung-4/+10
2019-09-10Locate rustc binary similarly to codegen backend loadingMark Rousskov-4/+6
This ensures that the failure cases for finding the codegen backend and for finding the rustc binary are essentially the same, and since we almost always will load the codegen backend, this is essentially meaning that the rustc change is not a regression.
2019-09-09check git in bootstrap.py when trying to update submoduleGuanqun Lu-0/+8
2019-09-09use 'get_toml' instead of regular expressionGuanqun Lu-5/+15
2019-09-07Rollup merge of #64139 - Mark-Simulacrum:strip-legacy-proc-macro, r=petrochenkovMazdak Farrokhzad-1/+4
Migrate internal diagnostic registration to macro_rules Review is best done commit-by-commit. Fixes #64132.