summary refs log tree commit diff
path: root/src/tools/compiletest/Cargo.toml
AgeCommit message (Collapse)AuthorLines
2017-07-13Reduce the usage of features in compiletest and libtestOliver Schneider-0/+1
2017-06-20Switch to the crates.io `getopts` crateAlex Crichton-3/+4
This commit deletes the in-tree `getopts` crate in favor of the crates.io-based `getopts` crate. The main difference here is with a new builder-style API, but otherwise everything else remains relatively standard.
2017-04-27use diff crate for compile-fail test diagnostics #41474Cengiz Can-0/+1
2017-03-23Remove internal liblogAlex Crichton-1/+1
This commit deletes the internal liblog in favor of the implementation that lives on crates.io. Similarly it's also setting a convention for adding crates to the compiler. The main restriction right now is that we want compiler implementation details to be unreachable from normal Rust code (e.g. requires a feature), and by default everything in the sysroot is reachable via `extern crate`. The proposal here is to require that crates pulled in have these lines in their `src/lib.rs`: #![cfg_attr(rustbuild, feature(staged_api, rustc_private))] #![cfg_attr(rustbuild, unstable(feature = "rustc_private", issue = "27812"))] This'll mean that by default they're not using these attributes but when compiled as part of the compiler they do a few things: * Mark themselves as entirely unstable via the `staged_api` feature and the `#![unstable]` attribute. * Allow usage of other unstable crates via `feature(rustc_private)` which is required if the crate relies on any other crates to compile (other than std).
2017-02-06compiletest: Add caching of test resultsAlex Crichton-0/+1
Don't re-run tests in compiletest if all the inputs haven't changed, manage stamp files in the output directory.
2017-02-06std: Remove cfg(cargobuild) annotationsAlex Crichton-1/+0
These are all now no longer needed that we've only got rustbuild in tree.
2016-12-30rustbuild: Compile all support tools in stage0Alex Crichton-1/+1
This commit changes all tools and such to get compiled in stage0, not in later stages. The purpose of this commit is to cut down dependencies on later stages for future modifications to the build system. Notably we're going to be adding builders that produce a full suite of cross-compiled artifacts for a particular host, and that shouldn't compile the `x86_64-unknown-linux-gnu` compiler more than once. Currently dependencies on, for example, the error index end up compiling the `x86_64-unknown-linux-gnu` compiler more than necessary. As a result here we move many dependencies on these tools to being produced by a stage0 compiler, not a stage1+ compiler. None of these tools actually need to be staged at all, so they'll exhibit consistent behavior across the stages.
2016-12-20mk: Fix compile with makefilesAlex Crichton-1/+0
A tweak was made to dependencies in #38451 but the makefiles weren't updated to accompany this. Instead of trying to integerate the `build_helper` crate into the makefiles (which currently isn't present) this commit takes the approach of just duplicating the required logic, which should be small enough for now.
2016-12-17let BSD to use gmake for GNU-makeSébastien Marie-0/+1
the diff extends build_helper to provide an function to return the expected name of GNU-make on the host: "make" or "gmake". Fixes #38429
2016-11-30Update the bootstrap compilerAlex Crichton-6/+0
Now that we've got a beta build, let's use it!
2016-10-08rustbuild: Optimize build times slightlyAlex Crichton-2/+2
As the entry point for building the Rust compiler, a good user experience hinges on this compiling quickly to get to the meat of the problem. To that end use `#[cfg]`-specific dependencies to avoid building Windows crates on Unix and drop the `regex` crate for now which was easily replacable with some string searching.
2016-04-21add serialize as a dep for compiletestNiko Matsakis-0/+1
2016-04-18rustbuild: Add support for compiletest test suitesAlex Crichton-0/+15
This commit adds support in rustbuild for running all of the compiletest test suites as part of `make check`. The `compiletest` program was moved to `src/tools` (like `rustbook` and others) and is now just compiled like any other old tool. Each test suite has a pretty standard set of dependencies and just tweaks various parameters to the final compiletest executable. Note that full support is lacking in terms of: * Once a test suite has passed, that's not remembered. When a test suite is requested to be run, it's always run. * The arguments to compiletest probably don't work for every possible combination of platforms and testing environments just yet. There will likely need to be future updates to tweak various pieces here and there. * Cross compiled test suites probably don't work just yet, support for that will come in a follow-up patch.