1008 Commits

Author SHA1 Message Date
bors
ad36f8feba Auto merge of #43534 - alexcrichton:cargo-target-runner, r=Mark-Simulacrum
rustbuild: Use Cargo's "target runner"

This commit leverages a relatively new feature in Cargo to execute
cross-compiled tests, the `target.$target.runner` configuration. We configure it
through environment variables in rustbuild and this avoids the need for us to
locate and run tests after-the-fact, instead relying on Cargo to do all that
execution for us.
2017-07-29 12:30:12 +00:00
Alex Crichton
8e7849e766 rustbuild: Use Cargo's "target runner"
This commit leverages a relatively new feature in Cargo to execute
cross-compiled tests, the `target.$target.runner` configuration. We configure it
through environment variables in rustbuild and this avoids the need for us to
locate and run tests after-the-fact, instead relying on Cargo to do all that
execution for us.
2017-07-28 18:00:31 -07:00
Alex Crichton
069a1b3c8f rustbuild: Tweak how we cross-compile LLVM
In preparation for upgrading to LLVM 5.0 it looks like we need to tweak how we
cross compile LLVM slightly. It's using `CMAKE_SYSTEM_NAME` to infer whether to
build libFuzzer which only works on some platforms, and then once we configure
that it needs to apparently reach into the host build area to try to compile
`llvm-config` as well. Once these are both configured, though, it looks like we
can successfully cross-compile LLVM.
2017-07-28 12:20:47 -07:00
Mark Simulacrum
9ee877bbe6 Correct a few run.host invocations where run.target is intended. 2017-07-27 09:58:03 -06:00
Mark Simulacrum
3c43163da7 Explain why we subtract one from the stage 2017-07-27 05:51:23 -06:00
Mark Simulacrum
cb27faf70f Make sure CFG_RELEASE_CHANNEL is always set.
Previously we'd build libsyntax without it when documenting and that'd
cause us to recompile it when building normally for no reason.
2017-07-27 05:51:23 -06:00
Mark Simulacrum
3b90551610 Allow changing rustdoc which builds the book. 2017-07-27 05:51:23 -06:00
Mark Simulacrum
4e5333cb2b Don't needlessly build rustdoc for compiletest.
For most tests, rustdoc isn't needed, so avoid building it.
2017-07-27 05:51:22 -06:00
Mark Simulacrum
e2e9b40e9a Build rustdoc on-demand.
Rustdoc is no longer compiled in every stage, alongside rustc, instead
it is only compiled when requested, and generally only for the last
stage.
2017-07-27 05:51:22 -06:00
Mark Simulacrum
fe0eca0d3f Change tools to take a compiler instead of a stage. 2017-07-27 05:51:22 -06:00
bors
bad58f2791 Auto merge of #43226 - alexcrichton:aarch64-ci, r=aidanhs
Add a disabled builder for aarch64 emulated tests

This commit adds a disabled builder which will run all tests for the standard
library for aarch64 in a QEMU instance. Once we get enough capacity to run this
on Travis this can be used to boost our platform coverage of AArch64
2017-07-26 03:53:46 +00:00
bors
b5e8a8ef97 Auto merge of #43046 - milmazz:bootstrap-unittest, r=aidanhs
bootstrap: Add doctests and unitests

This commit includes the following changes:

* Include more docstrings in classes, methods, and functions
* Add doctests, which are great for self-documenting our source code
* Add some unit tests with the `unittest` module
* Remove `WindowsError` reference on non-windows systems
* Rename some variables to be more explicit about their meaning
* Move all the attributes defined outside of `__init__`
* Add initial support for Python 3

r? @alexcrichton
2017-07-25 23:46:14 +00:00
bors
c417ee9ae8 Auto merge of #43320 - alexcrichton:new-bootstrap, r=Mark-Simulacrum
Bump master to 1.21.0

This commit bumps the master branch's version to 1.21.0 and also updates the
bootstrap compiler from the freshly minted beta release.
2017-07-25 16:13:16 +00:00
Alex Crichton
9010567dcc Bump master to 1.21.0
This commit bumps the master branch's version to 1.21.0 and also updates the
bootstrap compiler from the freshly minted beta release.
2017-07-25 07:03:19 -07:00
Milton Mazzarri
f516765b94 bootstrap: Major refactoring
This commit includes the following:

* Fix syntax errors in Python 3
* Include more docstrings in classes, methods, and functions
* Include unit tests using `unittest`
* Merge implementation of `{rustc,cargo}_out_of_date`
* Merge implementation of `RustBuild.{cargo,rustc}`
* Remove unnecessary source code
* Move all the attributes defined outside of `__init__`
* Remove remaining `%s` from print function
* Remove `WindowsError` reference on non-windows systems
* Rename some variables to be more explicit avoid their meaning
* Run bootstrap tests in the CI process
* Remove non-pythonic getters
* Remove duplicate code in `download_stage0` method
* Reduce the number of branches in `build_bootstrap` method
* Re-raise exception when we cannot execute uname in non-windows systems
* Avoid long lines
2017-07-25 06:37:10 -05:00
bors
5c126bdee6 Auto merge of #43384 - segevfiner:bootstrap-build-argument-fix, r=aidanhs
rustbuild: Fix the --build argument to bootstrap.py

This makes the --build argument also apply for the downloading of the stage0 toolchain and building rustbuild.

Fixes #42116
2017-07-25 08:04:15 +00:00
Alex Crichton
8ef3f69ffb Add a disabled builder for aarch64 emulated tests
This commit adds a disabled builder which will run all tests for the standard
library for aarch64 in a QEMU instance. Once we get enough capacity to run this
on Travis this can be used to boost our platform coverage of AArch64
2017-07-24 16:24:52 -07:00
bors
b80e946101 Auto merge of #43430 - Mark-Simulacrum:rustbuild-fixes, r=alexcrichton
Rustbuild regression fixes

I believe this will fix https://github.com/rust-lang/rust/issues/43427.

This PR also avoids running pretty tests by-default.

r? @alexcrichton
2017-07-24 17:21:04 +00:00
Mark Simulacrum
fef9b48252 Make dist equivalent to old build system. 2017-07-24 09:05:27 -06:00
bors
513906c43d Auto merge of #43327 - nrc:rls-config, r=eddyb
Use a config struct for save-analysis

Replaces some existing customisation options, including removing the -Zsave-analysis-api flag

r? @eddyb
2017-07-24 07:29:25 +00:00
Nick Cameron
5134a5f02c Remove save-analysis-api references from tests and rustbuild 2017-07-24 17:25:16 +12:00
Mark Simulacrum
a88a09c716 Do not run pretty tests by default. 2017-07-23 09:54:42 -06:00
Mark Simulacrum
1c118231ad Make distcheck work again. 2017-07-22 10:48:29 -06:00
Mark Simulacrum
8f2e576cb3 Add make_run to distcheck. 2017-07-22 07:35:42 -06:00
Mark Simulacrum
d302c18937 Fix StartupObject build 2017-07-22 05:50:55 -06:00
Segev Finer
c41ac2e11a rustbuild: Fix the --build argument to bootstrap.py
This makes the --build argument also apply for the downloading of the
stage0 toolchain and building rustbuild.

Fixes #42116
2017-07-21 14:18:35 +03:00
Mark Simulacrum
6a67a050c6 Change make_run signature to taking a RunConfig struct for refactorability. 2017-07-20 17:51:07 -06:00
Mark Simulacrum
b05af49086 Add an optional condition to constrain defaults.
Utilized primarily to not be a default rule unless some configuration is
given (e.g., compiler docs are enabled).
2017-07-20 17:24:11 -06:00
Mark Simulacrum
d8aecc19d8 Remove step.rs 2017-07-20 16:41:46 -06:00
Mark Simulacrum
e9c2242050 Remove step.rs comments 2017-07-20 16:41:26 -06:00
Mark Simulacrum
8563280bec Check RLS tests 2017-07-20 16:33:49 -06:00
Mark Simulacrum
bcd73c9657 Change default documentation rules to correspond with previous state. 2017-07-20 16:33:49 -06:00
Mark Simulacrum
951616cac6 Don't include lldb/gdb in default tests 2017-07-20 16:33:49 -06:00
Mark Simulacrum
f1d04a3434 Don't run host-only tests when targeting another platform 2017-07-20 11:24:37 -06:00
Mark Simulacrum
4a21c72fb0 Fix a few issues found by comparing past/present 2017-07-20 11:24:37 -06:00
Mark Simulacrum
5bdec80fe3 Allow iterating over step descriptions.
This simplifies code and allows working mostly with normal Rust instead
of macros.
2017-07-20 11:24:37 -06:00
Mark Simulacrum
56128fb3ac Implement available paths list. 2017-07-20 11:24:37 -06:00
Mark Simulacrum
bca1e2ffd1 Use a single line for serde annotations. 2017-07-20 11:24:37 -06:00
Mark Simulacrum
981afa52f6 Krate -> Crate 2017-07-20 11:24:37 -06:00
Mark Simulacrum
ba1fc82fe4 Remove outdated code.
Relevant sys crates handle this properly.
2017-07-20 11:24:37 -06:00
Mark Simulacrum
7414868853 Remove TypeId from stack in Builder 2017-07-20 11:24:37 -06:00
Aidan Hobson Sayers
28defe0fce Remove deserialize 2017-07-20 11:24:36 -06:00
Mark Simulacrum
dec44b0656 Resolve rebase errors 2017-07-20 11:24:36 -06:00
Guillaume Gomez
828b661ae0 fail in case nothing to run was found 2017-07-20 11:24:36 -06:00
Mark Simulacrum
f19728f4c7 Fix tidy 2017-07-20 11:24:36 -06:00
Mark Simulacrum
17f4b8f0e1 Remove outdated FIXME from cache 2017-07-20 11:24:36 -06:00
Mark Simulacrum
fc3d06ac86 Implement keep-stage support 2017-07-20 11:24:36 -06:00
Mark Simulacrum
681b12316c Require should_run to be implemented. 2017-07-20 11:24:36 -06:00
Mark Simulacrum
270d1d69ed Make the book default. 2017-07-20 11:24:36 -06:00
Mark Simulacrum
528646e127 Utilize interning to allow Copy/Clone steps 2017-07-20 11:24:32 -06:00