about summary refs log tree commit diff
path: root/src/bootstrap
AgeCommit message (Collapse)AuthorLines
2017-10-22Auto merge of #45304 - kennytm:travis-color-color-conflict, r=aturonbors-2/+2
Fix rustbuild --color conflict when building on Travis outside of Docker When trying to build rust on Travis without using `stamp` or `docker`, both `RUSTC_COLOR=1` and `TRAVIS=true` will separately pass `--color always` to the command line. This causes the build to fail due to "*Option 'color' given more than once*". In this PR, the `RUSTC_COLOR=1` will not be passed in the CI environment.
2017-10-22Don't build docs for removed libcollections.leonardo.yvens-1/+1
2017-10-22Remove deprecated `collections` crate.leonardo.yvens-1/+0
This reverts commit 6484258f1749499d3e51685df867b3d460a7f0be.
2017-10-22Auto merge of #45432 - ollie27:rustbuild_error_index_gen, r=Mark-Simulacrumbors-5/+5
rustbuild: Build stage 1 error index generator at stage 0 At stage 1 rustdoc is built at stage 0 so the error index generator should be as well. This fixes `x.py --stage 1 doc` as rustdoc doesn't even build at stage 1. It was broken by #44605. r? @alexcrichton
2017-10-22Auto merge of #45433 - ollie27:rustbuild_nomicon, r=Mark-Simulacrumbors-1/+1
rustbuild: Fix path for the nomicon
2017-10-22Auto merge of #45400 - alexcrichton:bootstrap-thinlto, r=Mark-Simulacrumbors-6/+18
rustbuild: Compile rustc with ThinLTO This commit enables ThinLTO for the compiler as well as multiple codegen units. This is intended to get the benefits of parallel codegen while also avoiding any major loss of perf. Finally this commit is also intended as further testing for #45320 and shaking out bugs.
2017-10-21Auto merge of #45366 - ollie27:rustbuild_compiler_docs, r=alexcrichtonbors-5/+3
rustbuild: Don't try to build rustdoc API docs with compiler docs rustdoc is built separately to rustc now so the docs would need to be generated separately as well. Also rustdoc doesn't build at stage 1 which prevented the compiler docs being built at stage 1. Fixes: #44629
2017-10-21rustbuild: Fix path for the nomiconOliver Middleton-1/+1
2017-10-21rustbuild: Build stage 1 error index generator at stage 0Oliver Middleton-5/+5
At stage 1 rustdoc is built at stage 0 so the error index generator should be as well. This fixes `x.py --stage 1 doc` as rustdoc doesn't even build at stage 1.
2017-10-21Fix rustbuild --color conflict when building on Travis outside of Docker.kennytm-2/+2
2017-10-20rustbuild: Compile rustc with ThinLTOAlex Crichton-6/+18
This commit enables ThinLTO for the compiler as well as multiple codegen units. This is intended to get the benefits of parallel codegen while also avoiding any major loss of perf. Finally this commit is also intended as further testing for #45320 and shaking out bugs.
2017-10-20Auto merge of #44792 - Mark-Simulacrum:correct-deps, r=alexcrichtonbors-79/+132
Make sure to clear out the stageN-{rustc,std,tools} directories. We copy built tool binaries into a dedicated directory to avoid deleting them, stageN-tools-bin. These aren't ever cleared out by code, since there should be no reason to do so, and we'll simply overwrite them as necessary. When clearing out the stageN-{std,rustc,tools} directories, make sure to delete both Cargo directories -- per-target and build scripts. This ensures that changing libstd doesn't cause problems due to build scripts not being rebuilt, even though they should be. Fixes https://github.com/rust-lang/rust/issues/44739.
2017-10-19Make tools which may not build return Option.Mark Simulacrum-53/+65
This makes it mandatory for other steps to have to handle the potential failure instead of failing in an odd way later down the road.
2017-10-20Rollup merge of #45382 - Keruspe:master, r=Mark-Simulacrumkennytm-1/+1
rustbuild: fix dist in debug mode In debug mode, the artifacts are placed in "debug", so don't hardcode "release" and use our helper to get the right directory name
2017-10-20Rollup merge of #45375 - topecongiro:enable-tilde, r=Mark-Simulacrumkennytm-1/+1
Allow passing a path with tilde to the configure script Currently `./configure --local-rust-root=~/.cargo --enable-local-rebuild` fails with ``` Exception: no cargo executable found at `~/.cargo//bin/cargo` ```
2017-10-20Rollup merge of #45374 - topecongiro:remove-enable-rustbuild-config-option, ↵kennytm-2/+2
r=Mark-Simulacrum Remove --enable-rustbuild config option from an example `--enable-rustbuild` is no longer recognized by the configure script. Also I think we should use `./configure` and `./x.py` instead of `configure` and `../x.py`.
2017-10-19rustbuild: fix dist in debug modeMarc-Antoine Perennou-1/+1
Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
2017-10-18Make sure to clear out the stageN-{rustc,std,tools} directories.Mark Simulacrum-31/+72
We copy built tool binaries into a dedicated directory to avoid deleting them, stageN-tools-bin. These aren't ever cleared out by code, since there should be no reason to do so, and we'll simply overwrite them as necessary. When clearing out the stageN-{std,rustc,tools} directories, make sure to delete both Cargo directories -- per-target and build scripts. This ensures that changing libstd doesn't cause problems due to build scripts not being rebuilt, even though they should be.
2017-10-19Allow passing a path with tildetopecongiro-1/+1
2017-10-19Fix typostopecongiro-2/+2
2017-10-19Remove --enable-rustbuild config option from exampletopecongiro-1/+1
2017-10-19Rollup merge of #45326 - cuviper:min-llvm-3.9, r=alexcrichtonkennytm-4/+8
Bump the minimum LLVM to 3.9 Old LLVM bugs are reportedly cropping up harder, but 3.9 seems to be OK. Fixes #45277.
2017-10-17bootstrap: Avoid fetching jemalloc if it's disabledTatsuyuki Ishi-1/+2
Fix #45300
2017-10-16Merge branch 'master' into future_importsjohnthagen-214/+365
2017-10-16bootstrap: update and enable the LLVM version-checkJosh Stone-4/+8
While the `config.toml.example` comments say "we automatically check the version by default," we actually didn't. That check was badly out of date, only allowing 3.5, 3.6, or 3.7. This it now updated to the new 3.9 minimum requirement, and truly enabled by default.
2017-10-16rustbuild: Allow setting rls/rustfmt to "broken"Alex Crichton-88/+115
This commit enables configuring the RLS/rustfmt tools to the "broken" state and actually get it past CI. The main changes here were to update all dist-related code to handle the situation where the RLS isn't available. This in turn involved a homegrown preprocessor-like-function to edit the configuration files we pass to the various combined installer tools.
2017-10-16Re-enable linker override for cross-compilationVadim Petrochenkov-2/+3
2017-10-15Don't use target's linker when linking build scriptsVadim Petrochenkov-41/+33
2017-10-15rustbuild: Support specifying archiver and linker explicitlyVadim Petrochenkov-36/+130
2017-10-15Auto merge of #45299 - kennytm:rollup, r=kennytmbors-1/+1
Rollup of 9 pull requests - Successful merges: #45113, #45250, #45255, #45258, #45263, #45264, #45269, #45280, #45289 - Failed merges:
2017-10-15Rollup merge of #45264 - 0xAX:fix-typo-bootstrap-readm, r=kennytmkennytm-1/+1
fix typo in src/bootstrap/README.md
2017-10-15Auto merge of #45224 - malbarbo:x32, r=alexcrichtonbors-1/+1
Add x86_64-unknown-linux-gnux32 target This adds X32 ABI support for Linux on X86_64. Let's package and dist it so we can star testing libc, libstd, etc. Fixes https://github.com/rust-lang/rfcs/issues/1339
2017-10-14Auto merge of #45177 - oli-obk:clippy, r=alexcrichtonbors-4/+9
Enable building clippy in CI r? @alexcrichton As discussed at Rustfest. Measured additional time is 4 minutes on my machine if no dependencies are shared with other tools. In reality most dependencies are shared (especially the slow to compile ones like serde). cc @Manishearth Does not run clippy's test suite, since a) it is nontrivial in the rustc build system b) it breaks more frequently but the breakage is negligible If clippy breaks, the procedure to follow is documented under https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#external-dependencies
2017-10-14rustbuild: Don't try to build rustdoc API docs with compiler docsOliver Middleton-5/+3
rustdoc is built separately to rustc now so the docs would need to be generated separately as well. Also rustdoc doesn't build at stage 1 which prevented the compiler docs being built at stage 1.
2017-10-14Auto merge of #45102 - petrochenkov:noar, r=alexcrichtonbors-9/+2
cleanup: rustc doesn't use an external archiver cc https://github.com/rust-lang/rust/pull/45090 r? @alexcrichton
2017-10-13fix typo in src/bootstrap/README.mdAlexander Kuleshov-1/+1
2017-10-13Auto merge of #45261 - kennytm:rollup, r=kennytmbors-24/+47
Rollup of 14 pull requests - Successful merges: #44855, #45110, #45122, #45133, #45173, #45178, #45189, #45203, #45209, #45221, #45236, #45240, #45245, #45253 - Failed merges:
2017-10-13Rollup merge of #45236 - alexcrichton:build-less, r=Mark-Simulacrumkennytm-4/+10
rustbuild: Prevent spurious rebuilds of the RLS The RLS currently is rebuilt every time you test it because the `OPENSSL_DIR` env var is changing, which is in turn caused by an accidental omission of `prepare_tool_cargo` when testing the RLS.
2017-10-13Rollup merge of #45209 - kennytm:treat-checksum-error-as-download-error, ↵kennytm-20/+37
r=Mark-Simulacrum rustbuild: Make openssl download more reliable. 1. Add `-f` flag to curl, so when the server returns 403 or 500 it will fail immediately. 2. Moved the checksum part into the retry loop, assuming checksum failure is due to broken download that can be fixed by downloading again. This PR is created responding to two recent spurious failures in https://github.com/rust-lang/rust/pull/45075#issuecomment-335202319 and https://github.com/rust-lang/rust/pull/45030#issuecomment-335029356. r? @Mark-Simulacrum , cc @aidanhs
2017-10-13Auto merge of #45063 - michaelwoerister:bring-back-incremental-info, ↵bors-4/+0
r=nikomatsakis incr.comp.: Bring back output of -Zincremental-info. This got kind lost during the transition to red/green. I also switched back from `eprintln!()` to `println!()` since the former never actually produced any output. I suspect this has to do with `libterm` somehow monopolizing `stderr`. r? @nikomatsakis
2017-10-13Rollup merge of #45121 - johnthagen:pep8-bootstrap, r=alexcrichtonkennytm-17/+32
Fix PEP8 style issues in bootstrap code This fixes PEP8 style issues (other than line-length) in the bootstrap Python code. The most important fix is in the `set` function where the code was indented with 6 spaces instead of 4.
2017-10-13Rollup merge of #44989 - QuietMisdreavus:what-is-your-quest, r=GuillaumeGomezkennytm-1/+13
let rustdoc print the crate version into docs This PR adds a new unstable flag to rustdoc, `--crate-version`, which when present will add a new entry to the sidebar of the root module, printing the given version number: ![Screenshot of a test crate, showing "Version 1.3.37" under the crate name](https://user-images.githubusercontent.com/5217170/31104096-805e3f4c-a7a0-11e7-96fc-368b6fe063d6.png) Closes #24336 (The WIP status is because i don't want to merge this until i can get the std docs to use it, which i need help from rustbuild people to make sure i get right.)
2017-10-12rustbuild: Prevent spurious rebuilds of the RLSAlex Crichton-4/+10
The RLS currently is rebuilt every time you test it because the `OPENSSL_DIR` env var is changing, which is in turn caused by an accidental omission of `prepare_tool_cargo` when testing the RLS.
2017-10-11Bump cc to 1.01 to include x86_64-unknown-linux-gnux32 supportMarco A L Barbosa-1/+1
2017-10-12rustbuild: Make openssl download more reliable.kennytm-20/+37
1. Add -f flag to curl, so when the server returns 403 or 500 it will fail immediately. 2. Moved the checksum part into the retry loop, assuming checksum failure is due to broken download that can be fixed by downloading again.
2017-10-11Fix typo during merge from masterjohnthagen-1/+1
2017-10-11Merge branch 'master' into pep8-bootstrapjohnthagen-9/+7
2017-10-10render the rust version into std/compiler/test docsQuietMisdreavus-1/+13
2017-10-10Rollup merge of #45180 - 0xAX:fix-help-message-in-configure.py, ↵Steve Klabnik-6/+1
r=Mark-Simulacrum Fix path to x.py in bootstrap/configure.py script We may see a help message in the end of the output of the ./configure script: ``` $ ./configure configure: processing command line configure: configure: build.configure-args := [] configure: configure: writing `config.toml` in current directory configure: configure: run `python ./src/bootstrap/x.py --help` configure: ``` but the `x.py` script is actually in the rust root directory and executing of such help string will give us error: ``` $ python ./src/bootstrap/x.py --help python: can't open file './src/bootstrap/x.py': [Errno 2] No such file or directory ``` This patch fixes path to the x.py script in the output of the ./configure
2017-10-11Fix path to x.py in configure.py scriptAlexander Kuleshov-6/+1
We may see a help message in the end of the output of the ./configure script: $ ./configure configure: processing command line configure: configure: build.configure-args := [] configure: configure: writing `config.toml` in current directory configure: configure: run `python ./src/bootstrap/x.py --help` configure: but the x.py script is actually in the rust root directory and executing of such help string will give us error: $ python ./src/bootstrap/x.py --help python: can't open file './src/bootstrap/x.py': [Errno 2] No such file or directory This patch fixes path to the x.py script in the output of the ./configure