Commit Graph

767 Commits

Author SHA1 Message Date
Dylan DPC
2f914bf327
Rollup merge of #68863 - pietroalbini:azure-macos-10.15, r=Mark-Simulacrum
ci: switch macOS builders to 10.15

Azure Pipelines is deprecating the macOS 10.13 image we're currently running, [and they plan to remove them](https://devblogs.microsoft.com/devops/removing-older-images-in-azure-pipelines-hosted-pools/) on March 23, 2020. This PR switches our macOS builders to macOS 10.15.

r? @Mark-Simulacrum
2020-02-19 18:12:07 +01:00
Mark Rousskov
c992ab23fa
Clean out some default-installed directories
This helps us have enough disk space for our builders to be able to complete
successfully. For now, the choices are ad-hoc and 'definitely not needed'. This
should never fail the build, as everything our build needs should be inside
Docker.
2020-02-18 11:34:59 +01:00
Pietro Albini
79c166ef73
ci: switch macOS builders to 10.15 2020-02-17 12:21:28 +01:00
Yuki Okushi
931005d549
Rollup merge of #68947 - chrissimpkins:python-fmt, r=alexcrichton
Python script PEP8 style guide space formatting and minor Python source cleanup

This PR includes the following changes in the Python sources based on a flake8 3.7.9 (mccabe: 0.6.1, pycodestyle: 2.5.0, pyflakes: 2.1.1) CPython 3.7.6 on Darwin lint:

- PEP8 style guide spacing updates *without* line length changes
- removal of unused local variable assignments in context managers and exception handling
- removal of unused Python import statements
- removal of unnecessary semicolons
2020-02-12 18:55:41 +09:00
Jethro Beekman
1b12232b8f Fix SGX RWLock representation for UnsafeCell niche fix 2020-02-10 14:44:12 -05:00
Chris Simpkins
60889d418e remove unnecessary semicolons 2020-02-07 23:35:27 -05:00
Jorge Aparicio
8abbd0beae for now, do not build rust-std for the armv7a-none-eabihf target
it needs some upstream changes in the build script of the compiler-builtins
crate
2020-01-21 17:18:37 +01:00
Jorge Aparicio
a3a0776100
Merge branch 'master' into bare-metal-cortex-a 2020-01-20 07:50:32 +00:00
bors
1b117d7546 Auto merge of #68037 - msizanoen1:riscv-ci, r=alexcrichton
Distribution CI for riscv64gc-unknown-linux-gnu

This modifies `dist-various-1` to build the standard library for RISC-V GNU/Linux.

r? @alexcrichton
2020-01-18 08:18:44 +00:00
Jorge Aparicio
470cdf54ac add bare metal ARM Cortex-A targets to rustc
-> `rustc --target armv7-none-eabi` will work

also build rust-std (rustup) components for them

-> `rustup target add armv7-none-eabi` will work
2020-01-15 18:05:06 +01:00
Alex Crichton
87504173b3 Update the wasi-libc bundled with libstd 2020-01-14 09:59:46 -08:00
bors
3ebcfa1451 Auto merge of #67831 - mati865:ci-images-upgrade, r=pietroalbini
ci: bump ubuntu 19.04 images to 19.10

Ubuntu 19.04 goes EOL this month.
2020-01-12 14:52:48 +00:00
msizanoen1
451c97ba53 Distribution CI for RISC-V GNU/Linux 2020-01-11 12:14:03 +07:00
Pietro Albini
cdbb60e6a8
ci: another take at fixing toolstate
Seems like the variable showed by $(ciCheckoutPath) on Azure Pipelines
was wrong, making the toolstate script fail. This commit changes that
function to return the variable previously used by the toolstate script.
Other uses of the function were audited, and there should be no
conflict.
2020-01-09 09:49:25 +01:00
Pietro Albini
aabc73631e
ci: fix wrong shared.sh import for publish_toolstate 2020-01-08 12:24:01 +01:00
bors
f48e576756 Auto merge of #67733 - pietroalbini:gha-2, r=alexcrichton
GitHub Actions: preparations, part 2

This PR adds the second batch of commits in preparation for GitHub Actions:

* Removed hardcoded Azure Pipelines variables from `publish_toolstate.sh`
* Fixed a bug in `shared.sh`'s GitHub Actions support
* Fixed binutils missing from MSYS2 on Windows 2019 (GitHub Actions-specific)
* Fixed wrong sysroot in macOS 10.15 onwards (GitHub Actions-specific)

This PR does **not** yet add any builders on GitHub Actions.

r? @alexcrichton
2020-01-08 05:05:06 +00:00
bors
56446fef49 Auto merge of #67732 - pietroalbini:fewer-apples, r=alexcrichton
ci: remove 32-bit Apple targets

This PR drops the `i686-apple` and `dist-i686-apple` CI builders, as well as removing the `armv7-apple-ios`, `armv7s-apple-ios`  and `i386-apple-ios` targets from the `x86_64-apple` CI builder.

The change was approved in [RFC 2837](https://github.com/rust-lang/rfcs/pull/2837), and it should land in Rust 1.42 stable (so this cycle).

r? @alexcrichton
2020-01-07 14:53:27 +00:00
Mateusz Mikuła
66207ae7f8 ci: bump ubuntu 19.04 images to 19.10
Ubuntu 19.04 goes EOL this month.
2020-01-03 12:35:55 +01:00
Michael Woerister
6f57bad318 Set a lower ThinLTO import limit for PR CI image. 2020-01-02 14:06:45 +01:00
Pietro Albini
39ddbeb874
ci: fix wrong sysroot in macos 10.15 onwards
In their infinite wisdom, Apple decided that (starting from macOS 10.15
onwards) /usr/include is not the location we should all search in for
our beloved C headers. Instead, we should look inside the extremely
intuitive and easily guessable new path:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include

Because why not.
2019-12-30 14:56:51 +01:00
Pietro Albini
846d386b4d
ci: install binutils in msys2 2019-12-30 14:56:50 +01:00
Pietro Albini
ae9ca09612
ci: fix wrong variable name in shared.sh's ciCommandAddPath 2019-12-30 14:56:48 +01:00
Pietro Albini
d9278f7ff6
ci: make publish_toolstate.sh generic over the CI provider 2019-12-30 14:56:46 +01:00
Pietro Albini
67cc06806d
ci: remove 32-bit apple targets 2019-12-30 14:36:34 +01:00
Aidan Hobson Sayers
cefeb66366 Use the chocolatey CDN directly to avoid the flaky API 2019-12-24 00:59:37 +00:00
Mark Rousskov
3a6cd8e42b temporary retry around msys2 install 2019-12-22 20:17:00 -05:00
Rust Toolstate Update
a6df38ec9f Utilize rust-lang/rust commit hashes in toolstate
When moving the script out of CI configuration and into a proper script
we lost track of the current directory changing (and as such the
parameters of the script needing to be different now).
2019-12-22 09:21:08 -05:00
Mark Rousskov
cbd1e73124 Set release channel on non-dist builders
Toolstate publication only runs if the channel is "nightly" and
previously the toolstate builders did not know that the channel was
nightly (since they are not dist builders).

A look through bootstrap seems to indicate that nothing should directly
depend on the channel being set to `-dev` on the test builders, though
this may cause some problems with UI tests (if for some reason they're
dumping the channel into stderr), but we cannot find evidence of such so
hopefully this is fine.
2019-12-18 22:44:42 -05:00
Yuki Okushi
472e7548d8 Make it executable 2019-12-11 05:26:40 +09:00
Mark Rousskov
97d936423c Move CI to new builtin check-toolstate 2019-12-10 09:30:09 -05:00
Aaron Hill
3c14f0eaa7
Add note to src/ci/docker/README.md about multiple docker images
I spent a while debugging a strage linker error about an outdated `glibc` version, only to discover that it was caused by a stale `obj` directory. It wasn't obviously to be that using the same obj dir with multiple Docker images (for the same target triple) could be a problem.

This commit adds a note to the README, which should hopefully be helpful to anyone else who runs into this issue.
2019-12-06 16:38:57 -05:00
Yuki Okushi
acd2b0835d
Rollup merge of #67066 - alexcrichton:update-wasi-libc, r=Mark-Simulacrum
Update the revision of wasi-libc used in wasm32-wasi

This commit updates the `wasi-libc` repository used to build the
wasm32-wasi target's libstd to ensure that both libstd and libc are
using the same wasi snapshot version.
2019-12-06 15:37:14 +09:00
Yuki Okushi
3b878aa9ae
Rollup merge of #66974 - cuviper:not-isCI, r=alexcrichton
[CI] fix the `! isCI` check in src/ci/run.sh

Using `if [ ! isCI ] || ...` doesn't run any command, just tests `isCI`
as a string, whereas `if ! isCI || ...` will actually run the `isCI`
command and negate its exit status.
2019-12-06 15:37:04 +09:00
Alex Crichton
db7b0f88f1 Update the revision of wasi-libc used in wasm32-wasi
This commit updates the `wasi-libc` repository used to build the
wasm32-wasi target's libstd to ensure that both libstd and libc are
using the same wasi snapshot version.
2019-12-05 11:36:35 -08:00
Josh Stone
b1ececa669 [CI] fix the ! isCI check in src/ci/run.sh
Using `if [ ! isCI ] || ...` doesn't run any command, just tests `isCI`
as a string, whereas `if ! isCI || ...` will actually run the `isCI`
command and negate its exit status.
2019-12-02 11:49:38 -08:00
Josh Stone
2304c25f31 Update the minimum external LLVM to 7
LLVM 7 is over a year old, which should be plenty for compatibility. The
last LLVM 6 holdout was llvm-emscripten, which went away in #65501.

I've also included a fix for LLVM 8 lacking `MemorySanitizerOptions`,
which was broken by #66522.
2019-12-02 11:36:21 -08:00
Mark Rousskov
47b3d4d8c9 Revert "DO NOT MERGE: enable windows try builder"
This reverts commit 90a37bce44.
2019-11-26 08:06:13 -05:00
Pietro Albini
90a37bce44
DO NOT MERGE: enable windows try builder 2019-11-22 15:37:36 +01:00
Pietro Albini
ee12992da9
ci: guess some environment variables based on builder name and os
Some environment variables (like DEPLOY or DEPLOY_ALT for dist builders,
or IMAGE on Linux builders) are set on a lot of builders, and whether
they should be present or not can be detected automatically based on the
builder name and the platform.

This commit simplifies the CI configuration by automatically setting
those environment variables.
2019-11-22 15:36:37 +01:00
Pietro Albini
262ce313d0
ci: add support for GitHub Actions in the CI scripts 2019-11-22 15:36:37 +01:00
Mazdak Farrokhzad
49077c59a8
Rollup merge of #66090 - pietroalbini:ci-improvements, r=alexcrichton
Misc CI improvements

This PR contains some misc improvements to our CI configuration:

* The environment variables for MinGW builders were greatly simplified, with just `CUSTOM_MINGW=1` to tell the install scripts to install the vendored copy. All the others (`MINGW_URL`, `MINGW_DIR`, `MINGW_ARCHIVE` and `MSYS_BITS`) are detected either from the builder name or the environment.
* Collecting CPU stats and running the build were moved into scripts.
* Toolstate scripts validation was previously a separate step, ran just when `IMAGE=mingw-check`. This moves the validation code inside the actual image.
* Vendored copies are now fetched from https://ci-mirrors.rust-lang.org instead of directly from the bucket.

r? @alexcrichton
2019-11-19 13:10:09 +01:00
Pietro Albini
85132b20c4
ci: download curl and openssl from s3 for dist-x86_64-linux
CentOS 5 only supports SSLv3 without SNI, and to get newer protocols
working we need to download and compile OpenSSL and cURL from our
mirror. Because of that, we can't use the CDN, as CloudFront requires
TLSv1 with SNI.

This commit changes the dist-x86_64-linux image to bypass the CDN for
OpenSSL and cURL.
2019-11-12 11:06:11 +01:00
Pietro Albini
14da85c68e
ci: move mirrors to https://ci-mirrors.rust-lang.org 2019-11-12 11:06:11 +01:00
Pietro Albini
c90cc12b07
ci: move validate-toolstate.sh in the mingw-check image
The task was already run just there, so this cleans things up.
2019-11-12 11:06:11 +01:00
Pietro Albini
e209ee42e9
ci: extract collecting cpu stats into a script 2019-11-12 11:06:11 +01:00
Pietro Albini
d623c56f4c
ci: extract running the build into a script 2019-11-12 11:06:11 +01:00
Pietro Albini
6104aa77eb
ci: extract validate-toolstate into a script 2019-11-12 11:06:11 +01:00
Pietro Albini
af6b26646b
ci: remove the MSYS_BITS env var 2019-11-12 11:05:54 +01:00
Pietro Albini
53c2c04d63
ci: remove the MINGW_DIR and MINGW_ARCHIVE env vars 2019-11-12 11:03:52 +01:00
Pietro Albini
71e5018071
ci: replace MINGW_URL with CUSTOM_MINGW=1
This commit replaces the mirrors base URL contained in the MINGW_URL
with a CUSTOM_MINGW=1 environment variable. The mirrors base URL will be
fetched instead through the MIRRORS_BASE environment variable, defined
in src/ci/shared.sh.
2019-11-12 11:03:52 +01:00