about summary refs log tree commit diff
path: root/src/bootstrap
AgeCommit message (Collapse)AuthorLines
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.
2019-09-07Rollup merge of #64098 - Mark-Simulacrum:always-warn, r=alexcrichtonMazdak Farrokhzad-10/+12
Ensure edition lints and internal lints are enabled with deny-warnings=false Previously we only passed the deny command line flags if deny-warnings was enabled, but now we either pass -W... or -D... for each of the flags as appropriate. This is also a breaking change to x.py as it changes `--warnings=allow` to `--warnings=warn` which is what that flag actually did; we don't have an allow warnings mode.
2019-09-07Rollup merge of #64240 - maurer:include-compiler-rt, r=alexcrichtonMazdak Farrokhzad-0/+1
Include compiler-rt in the source tarball In #60981 we switched to using src/llvm-project/compiler-rt inside compiler-builtins rather than a separate copy of it. In order to have the "c" feature turn on in builds from the source tarball, we need to include that path in its creation. fixes #64239
2019-09-06Include compiler-rt in the source tarballMatthew Maurer-0/+1
In #60981 we switched to using src/llvm-project/compiler-rt inside compiler-builtins rather than a separate copy of it. In order to have the "c" feature turn on in builds from the source tarball, we need to include that path in its creation. fixes #64239
2019-09-06Rollup merge of #64208 - guanqun:py-is-not-none, r=matkladMazdak Farrokhzad-1/+1
it's more pythonic to use 'is not None' in python files
2019-09-06Rollup merge of #64166 - infinity0:master, r=alexcrichtonMazdak Farrokhzad-0/+1
Better way of conditioning the sanitizer builds Previously the build would take the presence of the LLVM_CONFIG envvar to mean that the sanitizers should be built, but this is a common envvar that could be set for reasons unrelated to the rustc sanitizers. This commit adds a new envvar RUSTC_BUILD_SANITIZERS and uses it instead. This PR or similar will be necessary in order to work correctly with https://github.com/rust-lang-nursery/compiler-builtins/pull/296
2019-09-06it's more pythonic to use 'is not None' in python filesGuanqun Lu-1/+1
2019-09-05Explicitly create test tempdirMark Rousskov-1/+4
2019-09-05Better way of conditioning the sanitizer buildsXimin Luo-0/+1
Previously the build would take the presence of the LLVM_CONFIG envvar to mean that the sanitizers should be built, but this is a common envvar that could be set for reasons unrelated to the rustc sanitizers. This commit adds a new envvar RUSTC_BUILD_SANITIZERS and uses it instead.
2019-09-04Assume non-git LLVM is fresh if the stamp file existsJosh Stone-13/+14
Rustbuild usually writes the LLVM submodule commit in a stamp file, so we can avoid rebuilding it unnecessarily. However, for builds from a source tarball (non-git), we were assuming a rebuild is always needed. This can cause a lot of extra work if any environment like `CFLAGS` changed between steps like build and install, which are often separate in distro builds. Now we also write an empty stamp file if the git commit is unknown, and its presence is trusted to indicate that no rebuild is needed. An info message reports that this is happening, along with the stamp file path that can be deleted to force a rebuild anyway.
2019-09-04Rename --warnings=allow to --warnings=warnMark Rousskov-3/+3
We never allowed the warnings, only made them not denied.
2019-09-04Ensure all warnings are emitted even on warnings=warnMark Rousskov-7/+9
2019-09-03Auto merge of #63869 - GuillaumeGomez:fix-build-failure, r=Mark-Simulacrumbors-1/+1
Fix build failure in case file doesn't exist It fixes the following issue: ```bash $ ./x.py test src/tools/linkchecker ./build/x86_64-apple-darwin/doc/ --stage 1 Updating only changed submodules Submodules updated in 0.05 seconds Finished dev [unoptimized] target(s) in 0.15s thread 'main' panicked at 'source "/Users/imperio/rust/rust/build/x86_64-apple-darwin/doc/version_info.html" failed to get metadata: No such file or directory (os error 2)', src/build_helper/lib.rs:179:19 note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace. failed to run: /Users/imperio/rust/rust/build/bootstrap/debug/bootstrap test src/tools/linkchecker ./build/x86_64-apple-darwin/doc/ --stage 1 Build completed unsuccessfully in 0:00:01 ``` If the file doesn't exist, it makes sense anyway to just run the command in order to generate it. r? @Mark-Simulacrum
2019-09-02Generate version file if it doesn't existGuillaume Gomez-1/+1
2019-09-01remove the unstable rustdoc parameter --linkerAndreas Jonson-1/+4
use the code generation parameter -Clinker (same parameter as rustc) to control what linker to use for building the rustdoc test executables. closes: #63816
2019-08-29Rollup merge of #63979 - alexcrichton:remove-wasm-syscall, r=dtolnayMazdak Farrokhzad-16/+0
std: Remove the `wasm_syscall` feature This commit removes the `wasm_syscall` feature from the wasm32-unknown-unknown build of the standard library. This feature was originally intended to allow an opt-in way to interact with the operating system in a posix-like way but it was never stabilized. Nowadays with the advent of the `wasm32-wasi` target that should entirely replace the intentions of the `wasm_syscall` feature.
2019-08-29Rollup merge of #63953 - crlf0710:bootstrap_mirroring, r=Mark-SimulacrumMazdak Farrokhzad-2/+14
bootstrap: allow specifying mirror for bootstrap compiler download.
2019-08-29Rollup merge of #63949 - JohnTitor:fix-quick-build, r=Mark-SimulacrumMazdak Farrokhzad-3/+3
Fix build src/libtest Fixes #63928 r? @Mark-Simulacrum