about summary refs log tree commit diff
path: root/src/bootstrap
AgeCommit message (Collapse)AuthorLines
2018-07-06Rollup merge of #51619 - mksully22:ppc64le_rust, r=alexcrichtonkennytm-0/+1
rust: add initial changes to support powerpc64le musl Initial changes to support rustc building on ppc64le with musl. A PR was also submitted to libc component https://github.com/rust-lang/libc/pull/1023 to add changes to libc musl definitions. A PR was submitted on Alpine https://github.com/alpinelinux/aports/pull/4549 with equivalent temporary patches for building on Alpine for now. As a verification test a github project was put together to build ppc64le versions of rustc, rust-stdlib, and cargo on Alpine, https://github.com/mksully22/ppc64le_alpine_rust_1.26.2
2018-07-05Auto merge of #51917 - alexcrichton:update, r=Mark-Simulacrumbors-27/+76
Update crates in `Cargo.lock` This is a "hopefully routine" update of our crates.io-based crates in `Cargo.lock`, and let's see how it fares on CI...
2018-07-05Address review commentsOliver Schneider-12/+6
2018-07-05Only display difference of features, not all featuresOliver Schneider-4/+22
2018-07-05Vertical list of tools to checkOliver Schneider-2/+7
2018-07-05Update Cargo.lock dependenciesAlex Crichton-2/+7
Run `cargo update` and let's see how far we can get!
2018-07-05Auto merge of #51936 - japaric:rust-lld, r=alexcrichtonbors-3/+7
rename rustc's lld to rust-lld to not shadow the system installed LLD when linking with LLD. Before: - `-C linker=lld -Z linker-flavor=ld.lld` uses rustc's LLD - It's not possible to use a system installed LLD that's named `lld` With this commit: - `-C linker=rust-lld -Z linker-flavor=ld.lld` uses rustc's LLD - `-C linker=lld -Z linker-flavor=ld.lld` uses the system installed LLD we don't offer guarantees about the availability of LLD in the rustc sysroot so we can rename the tool as long as we don't break the wasm32-unknown-unknown target which depends on it. r? @alexcrichton we discussed this before
2018-07-04in the second copy lld is already named rust-lldJorge Aparicio-4/+3
2018-07-03Compile stage0 tools with the raw bootstrap compilerAlex Crichton-29/+73
This commit updates the stage0 build of tools to use the libraries of the stage0 compiler instead of the compiled libraries by the stage0 compiler. This should enable us to avoid any stage0 hacks (like missing SIMD).
2018-07-03rust: add initial changes to support powerpc64le muslMike Sullivan-0/+1
amend powerpc64le_unknown_linux_musl.rs to fix copyright date
2018-07-03Rollup merge of #52006 - Mark-Simulacrum:keep-stage-fix, r=alexcrichtonPietro Albini-21/+44
Change --keep-stage to apply more often Previously, the --keep-stage argument would only function for compilers that were depended on by future stages. For example, if trying to build a stage 1 compiler you could --keep-stage 0 to avoid re-building the stage 0 compiler. However, this is often not what users want in practice. The new implementation essentially skips builds all higher stages of the compiler, so an argument of 1 to keep-stage will skip rebuilds of the libraries, just linking them into the sysroot. This is unlikely to work well in cases where metadata or similar changes have been made, but is likely fine otherwise. This change is somewhat untested, but since it shouldn't have any effect except with --keep-stage, I don't see that as a large problem. r? @alexcrichton cc @nikomatsakis - I believe you wanted this functionality
2018-07-03Rollup merge of #52004 - kennytm:toolstate-fixes, r=Mark-SimulacrumPietro Albini-8/+6
toolstate: Fixed detection of changed submodule, and other fixes. 1. Make sure that if a submodule is updated but failed to test-pass, we'll block the merge. 2. Make sure failure on external docs (nomicon/RBE/etc) are properly checked. 3. If the commit message starts with "Update RLS" (or clippy etc), automatically run the "tools" job on the PR, so that we could know if the update failed before merging.
2018-07-02Change --keep-stage to apply moreMark Rousskov-20/+43
Previously, the --keep-stage argument would only function for compilers that were depended on by future stages. For example, if trying to build a stage 1 compiler you could --keep-stage 0 to avoid re-building the stage 0 compiler. However, this is often not what users want in practice. The new implementation essentially skips builds all higher stages of the compiler, so an argument of 1 to keep-stage will skip rebuilds of the libraries, just linking them into the sysroot. This is unlikely to work well in cases where metadata or similar changes have been made, but is likely fine otherwise. This change is somewhat untested, but since it shouldn't have any effect except with --keep-stage, I don't see that as a large problem.
2018-07-03Fixed detection of test-fail for doctests.kennytm-8/+6
2018-07-02Make explicit that assemble is not run from CLIMark Rousskov-1/+1
2018-07-02bootstrap: tests should use rustc from config.tomlNikolai Merinov-4/+4
Tests should always use "rustc" and "cargo" from config.toml instead of assuming that stage0 binaries was downloaded to build directory.
2018-07-02Auto merge of #51122 - oli-obk:clippy, r=Mark-Simulacrumbors-1/+134
Did you mean to block nightlies on clippy? Discussion: https://gitter.im/rust-lang/WG-clippy?at=5b073b6597a0361fb760cdc2 r? @alexcrichton did I forget anything? cc @nrc @Manishearth
2018-07-02Clippy tool also has only a single LICENSE fileOliver Schneider-2/+1
2018-07-01Rollup merge of #51922 - japaric:llvm-tools-preview, r=alexcrichtonPietro Albini-7/+10
rename the llvm-tools component to llvm-tools-preview and tweak its image as per https://github.com/rust-lang/rust/issues/49584#issuecomment-401217483 r? @alexcrichton or @Mark-Simulacrum
2018-07-01Provide llvm-strip in llvm-tools componentCrLF0710-1/+2
Shipping this tool gives people reliable way to reduce the generated executable size. I'm not sure if this strip tool is available from the llvm version current rust is built on. But let's take a look. @japaric
2018-07-01Also run the bootstrap in bootstrap modeOliver Schneider-0/+1
2018-07-01Did you mean to block nightlies on clippy?Oliver Schneider-1/+134
2018-06-30Notice non-toplevel dll dependencies in rustbuildMark Simulacrum-3/+3
Previously Cargo would hardlink all the dependencies into the "root" as foo.dll and the `toplevel` array would get populated with these, but that's no longer the case. Instead, cargo will only do this for the final artifacts/final libraries. Rustbuild is updated to continue looping through the artifacts mentioned instead of early-returning. This should fix the bug. @alexcrichton found the cause of this and suggested this fix.
2018-06-30Bootstrap from 1.28.0-beta.3Mark Simulacrum-1/+1
2018-06-29rename rustc's lld to rust-lldJorge Aparicio-5/+10
to not shadow the system installed LLD when linking with LLD. Before: - `-C linker=lld -Z linker-flavor=ld.lld` uses rustc's LLD - It's not possible to use a system installed LLD that's named `lld` With this commit: - `-C linker=rust-lld -Z linker-flavor=ld.lld` uses rustc's LLD - `-C linker=lld -Z linker-flavor=ld.lld` uses the system installed LLD
2018-06-29rename the llvm-tools component to llvm-tools-preview and tweak its imageJorge Aparicio-7/+10
2018-06-26Auto merge of #51725 - Mark-Simulacrum:no-llvm, r=kennytmbors-6/+3
Do not build LLVM tools for any of the tools None of the tools in the list should need LLVM tools themselves as far as I can tell; if this is incorrect, we can re-enable the tool building later. The primary reason for doing this is that rust-central-station uses the BuildManifest tool and building LLVM there is not cached: it takes ~1.5 hours on the 2 core machine. This commit should make nightlies and stable releases much faster. Followup to https://github.com/rust-lang/rust/pull/51459, r? @kennytm I'm mostly relying on CI to test this so probably don't roll it up; I'm not sure how to (and not particularly inclined to) wait for multiple hours to test this locally. I imagine that the failures should be fairly obvious when/if encountered.
2018-06-25Do not build LLVM tools for any of the toolsMark Simulacrum-6/+3
None of the tools in the list should need LLVM tools themselves as far as I can tell; if this is incorrect, we can re-enable the tool building later. The primary reason for doing this is that rust-central-station uses the BuildManifest tool and building LLVM there is not cached: it takes ~1.5 hours on the 2 core machine. This commit should make nightlies and stable releases much faster.
2018-06-25Auto merge of #51728 - bradjc:llvm-tools2, r=kennytmbors-29/+15
build: add llvm-tools to manifest This commit expands on a previous commit to build llvm-tools as a rustup component. It causes the llvm-tools component to be built if the extended step is active. It also adds llvm-tools to the build manifest so rustup can find it. I tested this as far as I could, but had to hack `build-manifest/src/main.rs` a bit as it is not supported on MacOS. The main change I am not sure about is this line: ```rust self.package("llvm-tools", &mut manifest.pkg, TARGETS); ``` There are numerous calls to `self.package()`, and I'm not sure if `TARGETS`, `HOSTS`, or `["*"]` is appropriate for llvm-tools. Otherwise I mostly copied the example set by `rustfmt-preview`.
2018-06-24Haiku: there is no setpriority on this platform.Niels Sascha Reedijk-2/+2
2018-06-23build: llvm-tools: replace compiler.hostBrad Campbell-15/+7
Use `target` instead.
2018-06-23build: llvm_tools tidyBrad Campbell-1/+5
2018-06-23build: add llvm-tools to manifestBrad Campbell-19/+9
This commit expands on a previous commit to build llvm-tools as a rustup component. It causes the llvm-tools component to be built if the extended step is active. It also adds llvm-tools to the build manifest so rustup can find it.
2018-06-22Handle current directory prefix for parsing command arguments in bootstrap ↵Steven Laabs-0/+6
test command.
2018-06-22Added stripping current directory prefixes when comparing suite path namesSteven Laabs-0/+6
2018-06-21Auto merge of #50336 - japaric:llvm-tools, r=Mark-Simulacrumbors-4/+130
ship LLVM tools with the toolchain this PR adds llvm-{nm,objcopy,objdump,size} to the rustc sysroot (right next to LLD) this slightly increases the size of the rustc component. I measured these numbers on x86_64 Linux: - rustc-1.27.0-dev-x86_64-unknown-linux-gnu.tar.gz 180M -> 193M (+7%) - rustc-1.27.0-dev-x86_64-unknown-linux-gnu.tar.xz 129M -> 137M (+6%) r? @alexcrichton cc #49584
2018-06-20no -Bsymbolic for mac; no static-libstdc++ for windowsJorge Aparicio-1/+7
2018-06-19Auto merge of #51367 - oli-obk:silence!_I_test_you, r=Mark-Simulacrumbors-11/+11
Use quiet tests by default r? @eddyb
2018-06-16Prevent Windows filesystem races in bootstrap testsMark Simulacrum-0/+3
2018-06-16Move bootstrap tests to the end of the default test runMark Simulacrum-1/+2
Since they are unlikely to fail and are almost never going to fail except with bootstrap changes (which would be tested locally anyway) it makes sense to run these tests close to last.
2018-06-12Add verify-llvm-ir flag to config.tomlNikita Popov-0/+11
2018-06-10Added comment to explain why only RustIstaller has `llvm_tools = false`.kennytm-0/+3
2018-06-10Allowing building the codegen backend specifically.kennytm-0/+1
Use `./x.py build src/librustc_codegen_llvm` to build the codegen backend.
2018-06-10Allow some tools to be run without first building LLVM.kennytm-16/+25
Conservatively only disable LLVM for rust-installer. This should shave 5 minutes from the x86_64-gnu-distcheck job by not building LLVM twice.
2018-06-08Rollup merge of #51437 - est31:rustbuild_metadata, r=Mark-SimulacrumMark Rousskov-24/+33
rustbuild: generate full list of dependencies for metadata Previously, we didn't send --features to our cargo metadata invocations, and thus missed some dependencies that we enable through the --features mechanism.
2018-06-08rustbuild: generate full list of dependencies for metadataest31-24/+33
Previously, we didn't send --features to our cargo metadata invocations, and thus missed some dependencies that we enable through the --features mechanism.
2018-06-08Do not require stage 2 compiler for rustdocMark Simulacrum-4/+1
2018-06-07quiet-tests -> !verbose-testsOliver Schneider-12/+11
2018-06-05Use quiet tests by defaultOliver Schneider-0/+1
2018-06-03Rollup merge of #51317 - oli-obk:incremental_all_the_way, r=Mark-SimulacrumMark Simulacrum-0/+5
Allow enabling incremental via config.toml r? @QuietMisdreavus