Commit graph

432 commits

Author SHA1 Message Date
Alex Crichton
66f0e42b4e ci: Upgrade Travis to Xenial
In theory we shouldn't require trusty so long as docker continues to
work!
2019-01-03 12:22:37 -08:00
Mark Rousskov
2a663555dd Remove licenses 2018-12-25 21:08:33 -07:00
Mazdak Farrokhzad
7011035c1c
Rollup merge of #57010 - phansch:run_compiletest_tests_on_ci, r=kennytm
Actually run compiletest tests on CI

I was assuming that https://github.com/rust-lang/rust/pull/56792 would
have resulted in compiletest tests being executed on CI. However, I
couldn't find any mentions of the unit test names in any CI logs.

This adds the compiletest test execution to the checktools.sh script.
2018-12-24 13:29:33 +01:00
bors
ddab10a692 Auto merge of #56892 - alexcrichton:new-llvm, r=michaelwoerister
rustc: Update Clang used to build LLVM on Linux

This commit updates from LLVM 7.0.0 to git revisions of clang/llvm/lld
to build LLVM on our dist builders for Linux. The goal of this is to
fix #56849 by picking up a fix [1] in LLD.

Closes #56849

[1]: 3be4e82db7
2018-12-23 06:56:10 +00:00
Philipp Hansch
0493c99777
Move compiletest test run to mingw-check builder
This way, checktools.sh continues to be used only for tools that are
published later on.
2018-12-20 18:00:07 +01:00
Philipp Hansch
2d2435b47e
Run compiletest tests on CI
I was assuming that https://github.com/rust-lang/rust/pull/56792 would
have resulted in compiletest tests being executed in CI. However, I
couldn't find any mentions of the unit test names in any CI logs.

This adds the compiletest test execution to the checktools.sh script.
2018-12-20 16:03:49 +01:00
Pietro Albini
8ee2147182
Rollup merge of #56947 - hsivonen:neon, r=alexcrichton
Add targets thumbv7neon-linux-androideabi and thumbv7neon-unknown-linux-gnueabihf

These two targets enable both thumb-mode and NEON for ARMv7 CPUs.

This another attempt at #49902, which cannot be reopened. Between that PR and this one, some subrepos with C code whose build systems were failing went away.
2018-12-19 11:47:20 +01:00
bors
63f8e6e12b Auto merge of #56642 - nikic:llvm-6, r=alexcrichton
Bump minimum required LLVM version to 6.0

Based on the discussion in #55842, while the overall position of Rust wrt LLVM continues to be contentious, there does seem to be a consensus that there is no need for continued support of LLVM 5. This PR bumps our version requirement to LLVM 6.0 and makes Travis run against that.

I hope that this is going to unblock #52694. If I understand correctly, while this issue still exists in LLVM 6, Ubuntu has backported the relevant patch.

r? @alexcrichton
2018-12-17 04:18:14 +00:00
Alex Crichton
bbce189046 rustc: Update Clang used to build LLVM on LInux
This commit updates from LLVM 7.0.0 to git revisions of clang/llvm/lld
to build LLVM on our dist builders for Linux. The goal of this is to
fix #56849 by picking up a fix [1] in LLD.

Closes #56849

[1]: 3be4e82db7
2018-12-16 13:21:23 -08:00
Henri Sivonen
0fbe382f0f Add targets thumbv7neon-linux-androideabi and thumbv7neon-unknown-linux-gnueabihf
These two targets enable both thumb-mode and NEON for ARMv7 CPUs.
2018-12-13 19:21:27 +02:00
Piers Finlayson
b17a3f21c2 fix rust-lang/rust issue #50583 2018-12-11 20:02:16 +00:00
Mark Rousskov
ddd8b416a6 Build manifest tool on mingw-check builder
This builder is not really the correct place to put this, but it
definitely has the time budget and checking this tool builds on just one
platform is more than sufficient.
2018-12-10 21:43:52 -08:00
Nikita Popov
706e67b0a0 Bump minimum required LLVM version to 6.0 2018-12-09 12:05:40 +01:00
Alex Crichton
8ee62bb239 ci: Only run compare-mode tests on one builder
The run-pass test suite currently takes 30 minutes on Windows, and
that appears to be roughly split between two 15 minute runs of the test
suite: one without NLL and one with NLL. In discussion on Discord the
platform coverage of the NLL compare mode may not necessarily be worth
it, so this commit removes the NLL compare mode from tests by default,
and then reenables it on only one builder.
2018-11-30 14:31:04 -08:00
Alex Crichton
25d0418bd7 ci: Download clang/lldb from tarballs
Hopefully will speed up CI slightly!
2018-11-20 15:56:58 -08:00
Michael Woerister
2ec6f340cd Update CI-clang to 7.0.0 for Linux dists. 2018-11-14 17:42:06 +01:00
Alex Crichton
cc7590341a std: Delete the alloc_system crate
This commit deletes the `alloc_system` crate from the standard
distribution. This unstable crate is no longer needed in the modern
stable global allocator world, but rather its functionality is folded
directly into the standard library. The standard library was already the
only stable location to access this crate, and as a result this should
not affect any stable code.
2018-11-11 09:22:28 -08:00
bors
06118eac4c Auto merge of #55626 - nikic:update-emscripten, r=alexcrichton
Update emscripten

This updates emscripten to 1.38.15, which is based on LLVM 6.0.1 and would allow us to drop code for handling LLVM 4.

The main issue I ran into is that exporting statics through `EXPORTED_FUNCTIONS` no longer works. As far as I understand exporting non-functions doesn't really make sense under emscripten anyway, so I've modified the symbol export code to not even try.

Closes #52323.
2018-11-10 01:16:02 +00:00
Nikita Popov
ffdb2bc1c5 Update the disabled wasm32 Dockerfile 2018-11-08 16:32:42 +01:00
bors
15d770400e Auto merge of #53996 - sekineh:thumb-run, r=japaric
[CI] Run a `thumbv7m-none-eabi` binary using `qemu-system-arm` [IRR-2018-embedded]

## What's included?

- Run a `thumbv7m-none-eabi` binary using `qemu-system-arm`
- We are using `cortex-m-rt = "=0.5.4"` which does not use `proc_macro`.
(reason: stage2 build of rustc does not work well with `proc_macro` in `run-make` phase.)
- We are using GNU LD for now.

## Blocker

All resolved.
- ~[Waiting] `#[panic_handler]` is not available in stable.~
  - [Merged] https://github.com/rust-lang/rust/pull/53619
- ~[Waiting] https://github.com/japaric/lm3s6965evb: does not compile on stable.~
  - [OK] dependent crate ~`panic-abort`~ `panic-halt`: already moved to use `#[panic_handler]`.

## Update

`#[panic_handler]` will be stabilized in Rust 1.30.

CC @kennytm @jamesmunns @nerdyvaishali
2018-11-06 18:58:31 +00:00
kennytm
225df14095
Rollup merge of #55644 - glaubitz:powerpcspe-linux, r=alexcrichton
ci: Add Dockerfile for dist-powerpcspe-linux

This adds the Dockerfile for cross-building Rust for the powerpcspe target. It's currently disabled.
2018-11-06 17:08:14 +08:00
bors
8aa926729e Auto merge of #55106 - petrhosek:fuchsia-lld, r=alexcrichton
Use lld directly for Fuchsia target

Fuchsia already uses lld as the default linker, so there's no reason
to always invoke it through Clang, instead we can simply invoke lld
directly and pass the set of flags that matches Clang.
2018-11-06 01:20:58 +00:00
Petr Hosek
3d27aca841 Use lld directly for Fuchsia target
Fuchsia already uses lld as the default linker, so there's no reason
to always invoke it through Clang, instead we can simply invoke lld
directly and pass the set of flags that matches Clang.
2018-11-05 15:46:00 -08:00
Nikita Popov
9eb19273a3 Update llvm-emscripten
This updates emscripten to version 1.38.15, which is based on
LLVM 6.0.1.
2018-11-04 18:50:57 +01:00
John Paul Adrian Glaubitz
e04e5faa3f ci: Add Dockerfile for dist-powerpcspe-linux 2018-11-03 11:41:35 +01:00
Alex Crichton
016eaf88f5 Use jemalloc-sys on Linux and OSX compilers
This commit adds opt-in support to the compiler to link to `jemalloc` in
the compiler. When activated the compiler will depend on `jemalloc-sys`,
instruct jemalloc to unprefix its symbols, and then link to it. The
feature is activated by default on Linux/OSX compilers for x86_64/i686
platforms, and it's not enabled anywhere else for now. We may be able to
opt-in other platforms in the future! Also note that the opt-in only
happens on CI, it's otherwise unconditionally turned off by default.

Closes #36963
2018-11-02 06:52:56 -07:00
Tom Tromey
8bbb62f849 Update enum debuginfo tests
Bug #52452 notes some debuginfo test regressions when moving to gdb
8.1.  This series will also cause versions of gdb before 8.2 to fail
when a recent LLVM is used -- DW_TAG_variant_part support was not
added until 8.2.

This patch updates one of the builders to a later version of Ubuntu,
which comes with gdb 8.2.  It updates the relevant tests to require
both a new-enough LLVM and a new-enough gdb; the subsequent patch
arranges to continue testing the fallback mode.

The "gdbg" results are removed from these tests because the tests now
require a rust-enabled gdb.

If you read closely, you'll see that some of the lldb results in this
patch still look a bit strange.  This will be addressed in a
subsequent patch; I believe the fix is to disable the Python
pretty-printers when lldb is rust-enabled.
2018-10-30 12:09:04 -06:00
Michael Woerister
5dedf0cead CI: Set codegen-units-std=1 for dist builds. 2018-10-26 15:07:03 +02:00
Vadim Petrochenkov
52ede63263 Remove the parse-fail test suite 2018-10-21 14:06:28 +03:00
Alex Crichton
4f661c016f Update Cargo, build curl/OpenSSL statically via features
In addition to to updating Cargo's submodule and Cargo's dependencies,
this also updates Cargo's build to build OpenSSL statically into Cargo
as well as libcurl unconditionally. This removes OpenSSL build logic
from the bootstrap code, and otherwise requests that even on OSX we
build curl statically.
2018-10-20 18:47:01 -07:00
Nikita Popov
b57366a854 Improve verify_llvm_ir config option
* Make it influence the behavior of the compiled rustc, rather than
  just the rustc build system. That is, if verify_llvm_ir=true,
  even manual invocations of the built rustc will verify LLVM IR.
* Enable verification of LLVM IR in CI, for non-deploy and
  deploy-alt builds. This is similar to how LLVM assertions are
  handled.
2018-10-13 20:06:25 +02:00
Christian Poveda
276557504d Fix conditions to allow missing tools in CI 2018-10-01 12:42:20 -05:00
Hideki Sekine
27477755ed [ci] add qemu-system-arm in docker image 2018-09-30 09:43:13 +09:00
Christian Poveda
0724ed68bb Add DIST_REQUIRE_ALL_TOOLS to CI scripts 2018-09-28 08:55:18 -05:00
Christian Poveda
53254a888b Add enable-missing-tools option 2018-09-28 01:53:38 -05:00
Adrian Budau
97723db7cf Update musl to 1.1.20. 2018-09-21 17:03:13 +03:00
Alex Crichton
5595aeb6b7 Add rustc SHA to released DWARF debuginfo
This commit updates the debuginfo that is encoded in all of our released
artifacts by default. Currently it has paths like `/checkout/src/...` but these
are a little inconsistent and have changed over time. This commit instead
attempts to actually define the file paths in our debuginfo to be consistent
between releases.

All debuginfo paths are now intended to be `/rustc/$sha` where `$sha` is the git
sha of the released compiler. Sub-paths are all paths into the git repo at that
`$sha`.
2018-09-10 10:10:38 -07:00
David Craven
8dfd5c39a1
[RISCV] Add riscv32imc-unknown-none-elf target. 2018-08-30 16:03:37 +02:00
bors
ba48850409 Auto merge of #53245 - michaelwoerister:thinlto-rust-llvm, r=alexcrichton
[experimental]: Build LLVM with ThinLTO enabled (2nd attempt)

This is https://github.com/rust-lang/rust/pull/51207 revived. This time, I'd like to run actual performance tests to see if it improves compile times.
2018-08-29 10:55:27 +00:00
Jorge Aparicio
264c47a2aa remove no longer needed Docker images 2018-08-26 11:27:05 +02:00
Jorge Aparicio
e2e72cc3ef fix docker build for the armebv7r-none-eabi target 2018-08-26 11:27:05 +02:00
Jorge Aparicio
c9d8e28b8c add armebv7r-none-eabi target 2018-08-26 11:27:05 +02:00
Jorge Aparicio
84fa5d8037 build rust-std components for the Cortex-R targets 2018-08-26 11:27:05 +02:00
Paolo Teti
7c1723c012 Add target for Little-endian ARM Cortex-R4F/R5F MCUs
Similar to `armebv7r-none-eabihf`, but for Little-endian MCUs.

As example TI RM4x/RM5x are Little-endian Cortex-R4F/R5F MCUs.

CI/Dockerfile is intentionally in the disabled folder.
2018-08-26 11:27:05 +02:00
Michael Woerister
73364c8bef Compile LLVM with ThinLTO for x86_64 Linux dist builds. 2018-08-20 11:37:32 +02:00
Michael Woerister
9574bf5a3e Build LLD in addition to Clang in Linux CI 2018-08-20 11:37:32 +02:00
Matthias Krüger
71120ef1e5 Fix typos found by codespell. 2018-08-19 17:41:28 +02:00
kennytm
b75f1bade0
Revert "Use public DNS server instead of 169.254.169.254 on CI."
This reverts commit 32e8bda4e3.
2018-08-16 20:06:55 +08:00
kennytm
96179cd8fe
Rollup merge of #52940 - kennytm:move-checktool-protection-week, r=alexcrichton
Align 6-week cycle check with beta promotion instead of stable release.

The regression check is to make beta promotion easier, so it makes more
sense to use the Tuesday of the release week (T-2) as the end point of the
regression prevention, instead of Thursday (T-0). But since the beta
promotion PR is sent at Tuesday evening at UTC, the protection should
include the whole Tuesday as well, meaning the 6-week cycle will start from
Wednesdays.

This will also move the start of the regression protection week one day
earlier.
2018-08-04 14:35:49 +08:00
David Craven
7a5e8bdc02
[RISCV] Enable CI. 2018-08-01 15:34:57 +02:00