about summary refs log tree commit diff
path: root/src/ci/docker
AgeCommit message (Collapse)AuthorLines
2017-04-29ci: Update sccache buildAlex Crichton-34/+34
Pulls in mozilla/sccache@ef0d77543 to fix #40240 again after the builds included in #41447 forgot to include the mio fixed included in #41076. Closes #40240
2017-04-27appveyor: Use Ninja/sccache on MSVCAlex Crichton-34/+34
Now that the final bug fixes have been merged into sccache we can start leveraging sccache on the MSVC builders on AppVeyor instead of relying on the ad-hoc caching strategy of trigger files and whatnot.
2017-04-27travis: Update sccache build usedAlex Crichton-34/+34
This build is no longer a forked version with temporary bugfixes, everything should be upstreamed!
2017-04-24Auto merge of #40123 - TimNN:llvm40, r=alexcrichtonbors-5/+5
LLVM 4.0 Upgrade Since nobody has done this yet, I decided to get things started: **Todo:** * [x] push the relevant commits to `rust-lang/llvm` and `rust-lang/compiler-rt` * [x] cleanup `.gitmodules` * [x] Verify if there are any other commits from `rust-lang/llvm` which need backporting * [x] Investigate / fix debuginfo ("`<optimized out>`") failures * [x] Use correct emscripten version in docker image --- Closes #37609. --- **Test results:** Everything is green 🎉
2017-04-23FIN: update emscripten builderTim Neumann-5/+5
2017-04-20Add x86_64-linux-android targetMarco A L Barbosa-3/+11
2017-04-12travis: Enable rust-analysis package for more targetsAlex Crichton-3/+7
This commit enables the `rust-analysis` package to be produced for all targets that are part of the `dist-*` suite of docker images on Travis. Currently these packages are showing up with `available = false` in the `channel-rust-nightly.toml` manifest where we'd prefer to have them show up for all targets. Unfortunately rustup isn't handling the `available = false` section well right now, so this should also inadvertently fix the nightly regression.
2017-04-11Rollup merge of #41231 - TimNN:fix-centos, r=frewsxcvCorey Farwell-2/+2
Use correct vault URL in CentOS images r? @frewsxcv
2017-04-11use correct vault urlTim Neumann-2/+2
2017-04-11Make sccache a bit quieterAidan Hobson Sayers-1/+0
2017-04-07Auto merge of #41138 - frewsxcv:rollup, r=frewsxcvbors-22/+69
Rollup of 9 pull requests - Successful merges: #40797, #41047, #41056, #41061, #41075, #41080, #41120, #41130, #41131 - Failed merges:
2017-04-07Rollup merge of #41130 - petrhosek:fuchsia-ci-upstream, r=alexcrichtonCorey Farwell-12/+64
travis: Use upstream LLVM repositories for Fuchsia The Fuchsia copies of LLVM repositories contain additional patches for work-in-progress features and there is some amount of churn that may break Rust. Use upstream LLVM repositories instead for building the toolchain used by the Fuchsia builder.
2017-04-07Rollup merge of #41080 - cuviper:generic-powerpc, r=alexcrichtonCorey Farwell-10/+5
dist-powerpc-linux: use a pure 32-bit CPU profile With `-mcpu=power4`, code might use instructions like `fcfid`, excluding older CPUs like the PowerPC G4, which apparently some users would like to use. The generic `-mcpu=powerpc` should stick to pure 32-bit PowerPC instructions. Fixes rust-lang/cargo#3852.
2017-04-07Auto merge of #40971 - malbarbo:android-emulator-64, r=alexcrichtonbors-4/+6
Use 64 bits emulator to run android tests Also install headless jre instead of the full jre.
2017-04-06travis: Use upstream LLVM repositories for FuchsiaPetr Hosek-12/+64
The Fuchsia copies of LLVM repositories contain additional patches for work-in-progress features and there is some amount of churn that may break Rust. Use upstream LLVM repositories instead for building the toolchain used by the Fuchsia builder.
2017-04-06Rollup merge of #41089 - alexcrichton:update-musl, r=brsonCorey Farwell-4/+7
travis: Update musl for i686/x86_64 This is a random stab towards #38618, no idea if it'll work. But hey more up-to-date software is better, right?
2017-04-05travis: Update musl for i686/x86_64Alex Crichton-4/+7
This is a random stab towards #38618, no idea if it'll work. But hey more up-to-date software is better, right?
2017-04-05dist-powerpc-linux: use a pure 32-bit CPU profileJosh Stone-10/+5
With `-mcpu=power4`, code might use instructions like `fcfid`, excluding older CPUs like the PowerPC G4, which apparently some users would like to use. The generic `-mcpu=powerpc` should stick to pure 32-bit PowerPC instructions. Fixes rust-lang/cargo#3852.
2017-04-04travis: Update sccache binariesAlex Crichton-34/+34
I've tracked down what I believe is the last spurious sccache failure on #40240 to behavior in mio (carllerche/mio#583), and this commit updates the binaries to a version which has that fix incorporated.
2017-04-04fix rollupTim Neumann-0/+6
2017-04-04Merge remote-tracking branch 'hub/centos5-vault' into rollupTim Neumann-0/+6
2017-04-03use fixed ip for vault.centos.org until updates have propagated to all mirrorsTim Neumann-1/+1
2017-04-03switch to vault.centos.orgTim Neumann-0/+6
2017-04-03travis: Split all dist builders in twoAlex Crichton-61/+983
Previously we would use one builder on Travis to produce two sets of host compilers for two different targets. Unfortunately though we've recently increased how much we're building for each target so this is starting to take unnecessarily long (#40804). This commit splits the dist builders in two by ensuring that we only dist one target on each builder, which should take a much shorter amount of time. This should also unblock other work such as landing the RLS (#40584).
2017-03-31Use 64 bits emulator to run android testsMarco A L Barbosa-4/+6
Also install headless jre instead of the full jre.
2017-03-29Rollup merge of #40780 - aidanhs:aphs-cache-git-modules, r=alexcrichtonCorey Farwell-0/+1
Attempt to cache git modules Partial resolution of #40772, appveyor remains to be done once travis looks like it's working ok. The approach in this PR is based on the `--reference` flag to `git-clone`/`git-submodule --update` and is a compromise based on the current limitations of the tools we're using. The ideal would be: 1. have a cached pristine copy of rust-lang/rust master in `$HOME/rustsrc` with all submodules initialised 2. clone the PR branch with `git clone --recurse-submodules --reference $HOME/rustsrc git@github.com:rust-lang/rust.git` This would (in the nonexistent ideal world) use the pristine copy as an object cache for the top level repo and all submodules, transferring over the network only the changes on the branch. Unfortunately, a) there is no way to manually control the initial clone with travis and b) even if there was, cloned submodules don't use the submodules of the reference as an object cache. So the steps we end up with are: 1. have a cached pristine copy of rust-lang/rust master in `$HOME/rustsrc` with all submodules initialised 2. have a cloned PR branch 3. extract the path of each submodule, and explicitly `git submodule update --init --reference $HOME/rustsrc/$module $module` (i.e. point directly to the location of the pristine submodule repo) for each one I've also taken some care to make this forward compatible, both for adding and removing submodules. r? @alexcrichton
2017-03-29Attempt to cache git modulesAidan Hobson Sayers-0/+1
2017-03-26Auto merge of #40809 - alexcrichton:update-sccache-again, r=alexcrichtonbors-26/+26
travis: Update sccache again Looks like the last version was built with mio 0.6.5 which now has known bugs against it. This build includes mio 0.6.6
2017-03-25fix permissions of emsdk_portableTim Neumann-0/+4
2017-03-25travis: try to fix the build on emscriptenAriel Ben-Yehuda-1/+14
The emsdk-portable .tar.gz now extracts to emsdk-portable instead of emsdk_portable. Handle that.
2017-03-24travis: Update sccache againAlex Crichton-26/+26
Looks like the last version was built with mio 0.6.5 which now has known bugs against it. This build includes mio 0.6.6
2017-03-23travis: Update sccache binaryAlex Crichton-26/+26
2017-03-23travis: Delay sccache downloads in dockerAlex Crichton-21/+21
Let's have this layer be towards the end as we're emprically changing sccache more than we're changing the rest of the image, so this'll allow us to reuse as much of the cached image as possible.
2017-03-23Rollup merge of #40612 - TimNN:new-netbsd-cross, r=alexcrichtonCorey Farwell-107/+70
Use the "official" cross compiler for NetBSD The current NetBSD cross compiler is lacking, for example `std::thread` is not available (which causes problems for LLVM 4.0). This PR uses the official netbsd build system to compiler the cross compiler. @alexcrichton: Can you please mirror `ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-7.0/source/sets/{src,gnusrc,sharesrc,syssrc}.tgz`. (Optionally you may want to use NetBSD versions 7.0.2 or 7.1, in that case you'll probably want to update the binary downloads used today as well). I'll update the URL's afterwards (or feel free to use "allow edits from maintainers"). r? @alexcrichton
2017-03-21dist-x86-linux: ugrade gcc to 4.8.5Tim Neumann-5/+8
2017-03-21include compiler hash in wrapper scriptsTim Neumann-0/+6
2017-03-21Switch to rust-lang-ci mirror URLsAlex Crichton-7/+7
2017-03-21ci/netbsd: use the "official" cross compilerTim Neumann-100/+57
2017-03-20travis: Don't set `RUST_LOG` globallyAlex Crichton-1/+0
I have a suspicion that this caused a large regression in cycle times by forcing the compiler to perform more checks on every `debug!` statement, so let's test this out by removing the `RUST_LOG` env var globally. This regression in cycle time was witnessed between [two] [builds] where the [PR] in question didn't do much suspicious. Judging by how the stage0 times *also* regressed though then this is my best guess. [two]: https://travis-ci.org/rust-lang/rust/builds/210149932 [builds]: https://travis-ci.org/rust-lang/rust/builds/210179995 [PR]: https://github.com/rust-lang/rust/pull/40446
2017-03-18Auto merge of #40507 - alexcrichton:static-libcurl, r=brsonbors-0/+6
travis: Ensure cargo links libcurl statically We don't want a dynamic dependency in the library that we ship, so link it statically by configuring curl-sys's build script to not pick up the system version via pkg-config.
2017-03-17travis: Use `hide_output` in dist-powerpc64-linuxAlex Crichton-24/+36
Looks like we blew the 4MB cap, so let's hide some more output.
2017-03-16travis: Update sccache binaryAlex Crichton-26/+26
I've built a local copy with mozilla/sccache#79 and mozilla/sccache#78. Let's see if that helps #40240!
2017-03-13travis: Ensure cargo links libcurl staticallyAlex Crichton-0/+6
We don't want a dynamic dependency in the library that we ship, so link it statically by configuring curl-sys's build script to not pick up the system version via pkg-config.
2017-03-11Auto merge of #40199 - alexcrichton:doc-proc-macro, r=brsonbors-0/+1
rustbuild: Build documentation for `proc_macro` This commit fixes #38749 by building documentation for the `proc_macro` crate by default for configured hosts. Unfortunately did not turn out to be a trivial fix. Currently rustbuild generates documentation into multiple locations: one for std, one for test, and one for rustc. The initial fix for this issue simply actually executed `cargo doc -p proc_macro` which was otherwise completely elided before. Unfortunately rustbuild was the left to merge two documentation trees together. One for the standard library and one for the rustc tree (which only had docs for the `proc_macro` crate). Rustdoc itself knows how to merge documentation files (specifically around search indexes, etc) but rustbuild was unaware of this, so an initial fix ended up destroying the sidebar and the search bar from the libstd docs. To solve this issue the method of documentation has been tweaked slightly in rustbuild. The build system will not use symlinks (or directory junctions on Windows) to generate all documentation into the same location initially. This'll rely on rustdoc's logic to weave together all the output and ensure that it ends up all consistent. Closes #38749
2017-03-10Rollup merge of #40324 - alexcrichton:sccache-errors, r=aturonAlex Crichton-1/+5
travis: Attempt to debug sccache failures I can't find anything that'd cause unexpected EOF in the source, so let's try taking a look at the error logs on failures.
2017-03-10rustbuild: Build documentation for `proc_macro`Alex Crichton-0/+1
This commit fixes #38749 by building documentation for the `proc_macro` crate by default for configured hosts. Unfortunately did not turn out to be a trivial fix. Currently rustbuild generates documentation into multiple locations: one for std, one for test, and one for rustc. The initial fix for this issue simply actually executed `cargo doc -p proc_macro` which was otherwise completely elided before. Unfortunately rustbuild was the left to merge two documentation trees together. One for the standard library and one for the rustc tree (which only had docs for the `proc_macro` crate). Rustdoc itself knows how to merge documentation files (specifically around search indexes, etc) but rustbuild was unaware of this, so an initial fix ended up destroying the sidebar and the search bar from the libstd docs. To solve this issue the method of documentation has been tweaked slightly in rustbuild. The build system will not use symlinks (or directory junctions on Windows) to generate all documentation into the same location initially. This'll rely on rustdoc's logic to weave together all the output and ensure that it ends up all consistent. Closes #38749
2017-03-10travis: Fuchsia builderPetr Hosek-0/+188
This change introduces a Dockerfile and script which builds a complete Fuchsia toolchain which can be used to build Rust distribution for Fuchsia. We only support cross-compiling at the moment, hence only setting the target.
2017-03-10travis: Attempt to debug sccache failuresAlex Crichton-1/+5
I can't find anything that'd cause unexpected EOF in the source, so let's try taking a look at the error logs on failures.
2017-03-09travis: Split the linux-tested-targets builderAlex Crichton-21/+85
Travis only gives us 30GB disk space and we don't currently have an option to increase that. Each musl target generates "hello world" binaries of about 3.5MB in size, and we're testing two targets in the same image. We have around 3k run-pass tests and 2 musl targets which works out to around 20GB. That's dangerously close to the limit and is causing PRs to bounce. This PR splits up the builder in two, one for x86_64 musl and the other for i686. Hopefully that'll keep us under the disk limit. Closes #40359
2017-02-28Rollup merge of #40130 - alexcrichton:fix-musl-again, r=nikomatsakisSteve Klabnik-2/+2
travis: Fix typos in linux-tested-targets These flags were supposed to be relevant for musl, not for gnu cc #39979