summary refs log tree commit diff
path: root/src/tools
AgeCommit message (Collapse)AuthorLines
2017-01-19mk: Fix compile with makefilesAlex Crichton-4/+10
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.
2017-01-19let BSD to use gmake for GNU-makeSébastien Marie-1/+4
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-12-19Rollup merge of #38422 - zackmdavis:enjoy_tidy_path_error_macro_nicety, r=blussSeo Sanghyeon-1/+1
tidy features: use 2-parameter form of internal try macro for open err This tiny patch merely applies @bluss's suggestion for how to get a more informative error message when the feature check can't open a file, a matter that had briefly annoyed the present author, leading to the filing of #38417. Resolves #38417.
2016-12-18Auto merge of #38051 - sanxiyn:unused-type-alias-3, r=eddybbors-1/+1
Warn unused type aliases, reimplemented Reimplementation of #37631. Fix #37455.
2016-12-18Update commit hash in cargotestSeo Sanghyeon-1/+1
2016-12-16tidy features: use 2-parameter form of internal try macro for open errZack M. Davis-1/+1
This tiny patch merely applies @bluss's suggestion for how to get a more informative error message when the feature check can't open a file, a matter that had briefly annoyed the present author, leading to the filing of #38417.
2016-12-14libtest: add --list option to list tests and benchmarksJeremy Fitzhardinge-0/+1
This option lists all the tests and benchmarks a binary provides. By default the listing is sent to stdout, but if --logfile is also specified, it is written there. If filters are specified, they're applied before the output is emitted.
2016-12-14Auto merge of #38181 - jsgf:test-filter-exact, r=alexcrichtonbors-0/+7
libtest: add --exact to make filter matching exact Filter matching is by substring by default. This makes it impossible to run a single test if its name is a substring of some other test. For example, its not possible to run just `mymod::test` with these tests: ``` mymod::test mymod::test1 mymod::test_module::moretests ``` You could declare by convention that no test has a name that's a substring of another test, but that's not really practical. This PR adds the `--exact` flag, to make filter matching exactly match the complete name.
2016-12-10Check the license of vendored depsBrian Anderson-0/+75
2016-12-05libtest: add --exact to make filter matching exactJeremy Fitzhardinge-0/+7
Filter matching is by substring by default. This makes it impossible to run a single test if its name is a substring of some other test. For example, its not possible to run just "mymod::test" with these tests: mymod::test mymod::test1 mymod::test_module::moretests You could declare by convention that no test has a name that's a substring of another test, but that's not really practical. This PR adds the "--exact" flag, to make filter matching exactly match the complete name.
2016-11-30Update the bootstrap compilerAlex Crichton-8/+0
Now that we've got a beta build, let's use it!
2016-11-17Improved error reporting when target sysroot is missing.Robert Vally-2/+12
2016-11-10compiletest: detect nodejs binary, allow overrideMark-Simulacrum-2/+5
Allow passing a custom nodejs directory in configure.
2016-11-08rustbuild: Tweak for vendored dependenciesAlex Crichton-85/+33
A few changes are included here: * The `winapi` and `url` dependencies were dropped. The source code for these projects is pretty weighty, and we're about to vendor them, so let's not commit to that intake just yet. If necessary we can vendor them later but for now it shouldn't be necessary. * The `--frozen` flag is now always passed to Cargo, obviating the need for tidy's `cargo_lock` check. * Tidy was updated to not check the vendor directory Closes #34687
2016-11-05Merge branch 'gdb-next-gen' of https://github.com/TimNN/rust into rollupAlex Crichton-92/+199
2016-11-05ignore gdb check for androidTim Neumann-5/+6
2016-11-01std: Flatten the num directory to reflect the module layoutBrian Anderson-2/+2
This makes it dissimilar to how core is structured on disk, but more predictable on its own.
2016-11-01std: Move sys_common to libstd/sys_commonBrian Anderson-5/+4
Make the directory structure reflect the module structure. I've always found the existing structure confusing.
2016-11-01std: Move platform-specific out of sys_common::utilBrian Anderson-1/+0
2016-11-01std: Move platform-specific code out of libstd/lib.rsBrian Anderson-3/+3
2016-11-01std: Move a plattform-specific constant to sys::stdioBrian Anderson-1/+0
2016-11-01std: Move elf TLS to sys::fast_thread_localBrian Anderson-1/+0
2016-10-31Changed most vec! invocations to use square bracesiirelu-42/+42
Most of the Rust community agrees that the vec! macro is clearer when called using square brackets [] instead of regular brackets (). Most of these ocurrences are from before macros allowed using different types of brackets. There is one left unchanged in a pretty-print test, as the pretty printer still wants it to have regular brackets.
2016-10-31detect gdb version & rust support in compiletestTim Neumann-76/+162
2016-10-31add gdb_native_rust config to compiletestTim Neumann-16/+36
2016-10-29Auto merge of #37378 - petrochenkov:nopat, r=eddybbors-1/+1
Prohibit patterns in trait methods without bodies They are not properly type checked ```rust trait Tr { fn f(&a: u8); // <- This compiles } ``` , mostly rejected by the parser already and generally don't make much sense. This PR is kind of a missing part of https://github.com/rust-lang/rust/pull/35015. Given the [statistics from crater](https://github.com/rust-lang/rust/pull/37378#issuecomment-256154994), the effect of this PR is mostly equivalent to improving `unused_mut` lint. cc https://github.com/rust-lang/rust/issues/35078#issuecomment-255707355 https://github.com/rust-lang/rust/pull/35015 https://github.com/rust-lang/rfcs/pull/1685 https://github.com/rust-lang/rust/issues/35203 r? @eddyb
2016-10-29Update cargo sha for cargotestVadim Petrochenkov-1/+1
2016-10-27tidy/features: fix checking of lang featuresTamir Duberstein-49/+64
Removes the `STATUSES` static which duplicates truth from the pattern match in `collect_lang_features`. Fixes existing duplicates by renaming: - never_type{,_impls} on `impl`s on `!` - concat_idents{,_macro} on `macro_rules! concat_idents` Fixes #37013.
2016-10-27tidy/bins: fix false positive on non checked-in binaryTamir Duberstein-13/+12
`git ls-files` now exits zero when called with a missing file; check that the file is included in the output before reporting a checked-in binary. Observed with git 2.10.1 and tripped by a symlink created by tests: src/test/run-make/issue-26006/out/time/deps/liblibc.rlib -> out/libc/liblibc.rlib
2016-10-19Rollup merge of #37182 - alexcrichton:appveyor, r=brsonEduard-Mihai Burtescu-0/+19
Add AppVeyor configuration to the repo We hope to move to AppVeyor in the near future off of Buildbot + EC2. This adds an `appveyor.yml` configuration file which is ready to run builds on the auto branch. This is also accompanied with a few minor fixes to the build system and such to accomodate AppVeyor. The intention is that we're not switching over to AppVeyor entirely just yet, but rather we'll watch the builds for a week or so. If everything checks out then we'll start gating on AppVeyor instead of Buildbot!
2016-10-17Rollup merge of #37177 - michaelwoerister:fix-check-stage1, r=petrochenkovGuillaume Gomez-0/+2
Fix make check-stage1 by conditionally activating question_mark feature for compiletest tool. r? @alexcrichton
2016-10-15rustdoc: Improve playground run buttonsOliver Middleton-7/+5
The main change is to stop using javascript to generate the URLs and use rustdoc instead. This also adds run buttons to the error index examples.
2016-10-14Add AppVeyor configuration to the repoAlex Crichton-0/+19
We hope to move to AppVeyor in the near future off of Buildbot + EC2. This adds an `appveyor.yml` configuration file which is ready to run builds on the auto branch. This is also accompanied with a few minor fixes to the build system and such to accomodate AppVeyor. The intention is that we're not switching over to AppVeyor entirely just yet, but rather we'll watch the builds for a week or so. If everything checks out then we'll start gating on AppVeyor instead of Buildbot!
2016-10-14Fix make check-stage1 by conditionally activating question_mark feature for ↵Michael Woerister-0/+2
compiletest tool.
2016-10-12Stabilise `?`Nick Cameron-5/+0
cc [`?` tracking issue](https://github.com/rust-lang/rust/issues/31436)
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-10-08Rollup merge of #37016 - alexcrichton:workspaces, r=japaricManish Goregaokar-158/+0
Leverage Cargo workspaces in rustbuild This is a continuation of https://github.com/rust-lang/rust/pull/36032 which implements the change to use `cargo metadata` to learn about the crate graph.
2016-10-07Use workspaces and switch to a single Cargo.lock.Ahmed Charles-158/+0
This involves hacking the code used to run cargo test on various packages, because it reads Cargo.lock to determine which packages should be tested. This change implements a blacklist, since that will catch new crates when they are added in the future.
2016-10-07Auto merge of #36981 - alexcrichton:catch-unwind-for-tests, r=sfacklerbors-1/+1
std: Minor cleanup to libtest * Don't spawn two threads for all tests, just one now that `catch_unwind` is stable. * Remove usage of the unstable `box` keyword * Remove usage of the unstable `FnBox` trait
2016-10-06rustc: Rename rustc_macro to proc_macroAlex Crichton-4/+6
This commit blanket renames the `rustc_macro` infrastructure to `proc_macro`, which reflects the general consensus of #35900. A follow up PR to Cargo will be required to purge the `rustc-macro` name as well.
2016-10-06std: Minor cleanup to libtestAlex Crichton-1/+1
* Don't spawn two threads for all tests, just one now that `catch_unwind` is stable. * Remove usage of the unstable `box` keyword * Remove usage of the unstable `FnBox` trait
2016-10-03Auto merge of #36815 - alexcrichton:stabilize-1.13, r=aturonbors-1/+1
std: Stabilize and deprecate APIs for 1.13 This commit is intended to be backported to the 1.13 branch, and works with the following APIs: Stabilized * `i32::checked_abs` * `i32::wrapping_abs` * `i32::overflowing_abs` * `RefCell::try_borrow` * `RefCell::try_borrow_mut` Deprecated * `BinaryHeap::push_pop` * `BinaryHeap::replace` * `SipHash13` * `SipHash24` * `SipHasher` - use `DefaultHasher` instead in the `std::collections::hash_map` module Closes #28147 Closes #34767 Closes #35057 Closes #35070
2016-10-03std: Stabilize and deprecate APIs for 1.13Alex Crichton-1/+1
This commit is intended to be backported to the 1.13 branch, and works with the following APIs: Stabilized * `i32::checked_abs` * `i32::wrapping_abs` * `i32::overflowing_abs` * `RefCell::try_borrow` * `RefCell::try_borrow_mut` * `DefaultHasher` * `DefaultHasher::new` * `DefaultHasher::default` Deprecated * `BinaryHeap::push_pop` * `BinaryHeap::replace` * `SipHash13` * `SipHash24` * `SipHasher` - use `DefaultHasher` instead in the `std::collections::hash_map` module Closes #28147 Closes #34767 Closes #35057 Closes #35070
2016-10-02Move platform-specific arg handling to sys::argsBrian Anderson-1/+0
2016-10-02Add a platform-abstraction tidy scriptBrian Anderson-0/+233
This is intended to maintain existing standards of code organization in hopes that the standard library will continue to be refactored to isolate platform-specific bits, making porting easier; where "standard library" roughly means "all the dependencies of the std and test crates". This generally means placing restrictions on where `cfg(unix)`, `cfg(windows)`, `cfg(target_os)` and `cfg(target_env)` may appear, the basic objective being to isolate platform-specific code to the platform-specific `std::sys` modules, and to the allocation, unwinding, and libc crates. Following are the basic rules, though there are currently exceptions: - core may not have platform-specific code - liballoc_system may have platform-specific code - liballoc_jemalloc may have platform-specific code - libpanic_abort may have platform-specific code - libpanic_unwind may have platform-specific code - other crates in the std facade may not - std may have platform-specific code in the following places - sys/unix/ - sys/windows/ - os/ There are plenty of exceptions today though, noted in the whitelist.
2016-09-30Update bootstrap and compiletest to use the detected nodejsBrian Anderson-1/+5
2016-09-30Ignore all debuginfo tests on emscriptenBrian Anderson-1/+8
2016-09-30Preliminary wasm32 supportBrian Anderson-5/+5
2016-09-28Auto merge of #36604 - japaric:libtest-skip, r=alexcrichtonbors-0/+1
libtest: add a --skip flag to the test runner This flag takes a FILTER argument and instructs the test runner to skip the tests whose names contain the word FILTER. --skip can be used several times. --- My motivation for submitting this is that while using [smoke] to run `std` unit tests for cross targets I found that a few of the tests always fail due to limitations in QEMU (it can't handle too many threads) and I'd like to skip these problematic tests from the command line to be able to run the rest of the unit tests. [smoke]: https://github.com/japaric/smoke I know there is another mechanism to skip tests: `#[ignore]` but this doesn't work in my use case because I can't (easily) modify the source of the standard libraries to `#[ignore]` some tests. And even if I could, the change would involve conditionally ignoring some tests for some targets but that's not a perfect solution because those tests should pass if executed on real hardware so they should not be `#[ignored]` in that scenario. r? @alexcrichton cc @brson
2016-09-27fix compiletestJorge Aparicio-0/+1