Commit Graph

2388 Commits

Author SHA1 Message Date
bors 548afdbe1a Auto merge of #70726 - Centril:rollup-zrdkkpt, r=Centril
Rollup of 5 pull requests

Successful merges:

 - #68334 (AArch64 bare-metal targets: Build rust-std)
 - #70224 (Clean up rustdoc js testers)
 - #70532 (Miri engine: stronger type-based sanity check for assignments)
 - #70698 (bootstrap: add `--json-output` for rust-analyzer)
 - #70715 (Fix typo in operands section)

Failed merges:

r? @ghost
2020-04-03 04:18:32 +00:00
Niko Matsakis e992565857 bootstrap: add --json-output for rust-analyzer 2020-04-02 10:36:25 -04:00
Eduard-Mihai Burtescu f5892c00ac Translate the virtual /rustc/$hash prefix back to a real directory. 2020-04-02 11:39:41 +03:00
Josh Stone 6067315d58 Ensure LLVM is in the link path for "fulldeps" tests
This is a follow-up to #70123, which added `llvm-config --libdir` to the
`LIBRARY_PATH` for rustc tools. We need the same for "run-make-fulldeps"
and "ui-fulldeps" tests which depend on compiler libraries, implicitly
needing to link to `-lLLVM` as well.
2020-03-30 15:40:56 -07:00
Dylan DPC a0d6eedfad Rollup merge of #70235 - dillona:70182-check-before-using-git, r=Mark-Simulacrum
Validate git setup before accessing functionality

Closes #70182
2020-03-29 01:32:19 +01:00
Mateusz Mikuła f5e702df0e Upgrade rustc and bootstrap dependencies 2020-03-26 14:11:23 +01:00
bors 2dcf54f564 Auto merge of #70190 - pietroalbini:gha, r=Mark-Simulacrum
Add GitHub Actions configuration

This PR adds the GitHub Actions configuration to the rust-lang/rust repository. The configuration will be run in parallel with Azure Pipelines until the evaluation finishes: the infrastructure team will then decide whether to switch.

Since GitHub Actions doesn't currently have any way to include pieces of configuration, this also adds the `src/tools/expand-yaml-anchors` tool, which serves as a sort of templating system. Otherwise the configuration is a mostly straight port from the Azure Pipelines configuration (thanks to all the PRs opened in the past).

There are still a few small things I need to fix before we can land this, but it's mostly complete and ready for an initial review.

r? @Mark-Simulacrum
2020-03-24 15:49:27 +00:00
Pietro Albini f0bd035e2a bootstrap: remove default and only_host from expand-yaml-anchors 2020-03-24 15:36:16 +01:00
Pietro Albini 9beb8f5477 ci: add github actions configuration 2020-03-24 15:36:07 +01:00
bors 374ab25585 Auto merge of #70163 - nikic:llvm-10-preparation, r=cuviper
Prepare for LLVM 10 upgrade

This is #67759 minus the submodule update.

 * Fix two compatibility issues in the rustllvm wrapper.
 * Update data layout strings in tests.
 * Fix LLVM version comparison (this become a problem because the major version has two digits now).

r? @cuviper
2020-03-24 12:42:54 +00:00
Mazdak Farrokhzad e37e81cad5 Rollup merge of #69494 - GuillaumeGomez:stabilize-crate-version, r=ehuss,aleksator,ollie27
Stabilize --crate-version option in rustdoc

I don't see any reason to not stabilize it anymore, so let's go!

cc @kinnison @ehuss

r? @ollie27
2020-03-23 19:04:45 +01:00
Mazdak Farrokhzad 9423c4f0dd Rollup merge of #70123 - cuviper:library-path, r=Mark-Simulacrum
Ensure LLVM is in the link path for rustc tools

The build script for `rustc_llvm` outputs LLVM information in `cargo:rustc-link-lib` and `cargo:rustc-link-search` so the compiler can be linked correctly. However, while the lib is carried along in metadata, the search paths are not. So when cargo is invoked again later for rustc _tools_, they'll also try to link with LLVM, but the necessary paths may be left out.

Rustbuild can use the environment to set the LLVM link path for tools -- `LIB` for MSVC toolchains and `LIBRARY_PATH` for everyone else.

Fixes #68714.
2020-03-23 10:29:13 +01:00
Alex Tokarev da5d03d09e Add missing -Z unstable-options flag 2020-03-21 19:19:54 +01:00
Dillon Amburgey 37c63edfc4 Validate git setup before accessing functionality 2020-03-21 13:17:01 -04:00
lzutao a39e96407a Remove CARGO_BUILD_TARGET from bootstrap.py 2020-03-21 21:54:01 +07:00
Nikita Popov 841558d3bd Remove trailing newline from llvm-config output 2020-03-19 20:09:57 +01:00
Josh Stone 3a2a4429a2 Avoid llvm-config in more situations, like bootstrap test runs 2020-03-19 10:28:47 -07:00
Mazdak Farrokhzad 61fe2e4036 Rollup merge of #69443 - ehuss:tidy-license, r=skade,Mark-Simulacrum
tidy: Better license checks.

This implements some improvements to the license checks in tidy:

* Use `cargo_metadata` instead of parsing vendored crates. This allows license checks to run without vendoring enabled, and allows the checks to run on PR builds.
* Check for stale entries.
* Check that the licenses for exceptions are what we think they are.
* Verify exceptions do not leak into the runtime.

Closes #62618
Closes #62619
Closes #63238 (I think)

There are some substantive changes here. The follow licenses have changed from the original comments:

* openssl BSD+advertising clause to Apache-2.0
* pest MPL2 to MIT/Apache-2.0
* smallvec MPL2 to MIT/Apache-2.0
* clippy lints MPL2 to MIT OR Apache-2.0
2020-03-19 06:57:30 +01:00
Josh Stone e1a6a306ad Revert "Fix missing libLLVM.so in stage0 sysroot."
This reverts commit 8b9c5396ca.
2020-03-18 16:09:06 -07:00
Josh Stone 0536b8dcaa Ensure LLVM is in the link path for rustc tools 2020-03-18 16:09:06 -07:00
Josh Stone 71f5aed385 Rename add_lib_path to add_dylib_path 2020-03-18 13:49:53 -07:00
Eric Huss 287c4eb094 Tidy: fix running rustfmt twice 2020-03-18 08:15:29 -07:00
Mazdak Farrokhzad c4a900f57c Rollup merge of #69735 - tmiasko:bootstrap-sanitizers-hash, r=Mark-Simulacrum
bootstrap: Use hash to determine if sanitizers needs to be rebuilt

* Rebuild sanitizers runtimes when LLVM submodule commit changes.
* When rebuilding LLVM / sanitizers, remove the stamp file before
  starting the build process to invalidate previous build output.
2020-03-17 12:16:14 +01:00
Mazdak Farrokhzad f907598ba4 Rollup merge of #70029 - jonas-schievink:bootstrap, r=Centril
Bump the bootstrap compiler
2020-03-17 03:05:17 +01:00
Dylan DPC fdb5df049c Rollup merge of #69964 - ollie27:ci_nodejs, r=Mark-Simulacrum,GuillaumeGomez
Add Node.js to PR CI image

This should allow the `rustdoc-js` and `rustdoc-js-std` test suites to run automatically on PRs.
2020-03-16 01:30:33 +01:00
Jonas Schievink f53f9a88f1 Bump the bootstrap compiler 2020-03-15 19:43:25 +01:00
Oliver Middleton 3f58ab6e24 Allow rustdoc-js and rustdoc-js-std to use none default build dir location 2020-03-13 23:24:12 +00:00
Eric Huss 349fcb9ef6 tidy: Use cargo_metadata for license checks. 2020-03-12 19:19:18 -07:00
Mazdak Farrokhzad 3d23de7baf Rollup merge of #69705 - ehuss:toolstate-remove-redundant-beta, r=Mark-Simulacrum
Toolstate: remove redundant beta-week check.

I made a bit of a mistake in #69624.  The "beta regression" doesn't need to be checked twice.

I also rolled up #69693 to avoid merge conflicts.
2020-03-12 16:32:15 +01:00
Mazdak Farrokhzad dde2484fce Rollup merge of #69603 - chrissimpkins:tidy-docs-update, r=petrochenkov
tidy: replace `make check` with `./x.py test` in documentation

This PR includes a minor documentation update for tidy.  It replaces the `make check` approach with `./x.py test` and describes how to execute the tidy checks (only) with ~~`./x.py test src/tools/tidy`~~ `./x.py test tidy`.
2020-03-11 14:03:44 +01:00
Chris Simpkins 4922b683de remove trailing whitespace (tidy) 2020-03-09 22:15:41 -04:00
Chris Simpkins 9f734c978c Add documentation of tool testing with x.py script 2020-03-09 22:04:59 -04:00
Chris Simpkins 259b06e33f add documentation of x.py tool testing 2020-03-09 21:55:56 -04:00
Mazdak Farrokhzad b3c405cf46 Rollup merge of #69631 - RalfJung:rust-src, r=Mark-Simulacrum
remove non-sysroot sources from rust-src component

See https://github.com/rust-lang/rust/pull/69592#discussion_r386238725: these were likely added in https://github.com/rust-lang/rust/pull/58269 for the sake of compiler plugins, but those are being entirely phased out, so there is no good reason to ship these sources.

OTOH, @eddyb [wrote](https://github.com/rust-lang/rust/pull/58269#issuecomment-463408918)

> Yeah, my question is why librustc_plugin specifically? Everything else makes sense.

So maybe there is some good reason to keep these? Then we should have a comment explaining that reason.

Cc @eddyb @taeguk @Mark-Simulacrum
2020-03-08 16:53:35 +01:00
Matthias Krüger 136ad015b6 fix various typos 2020-03-06 15:19:31 +01:00
Tomasz Miąsko 726d5185e0 bootstrap: Use hash to determine if sanitizers needs to be rebuilt
* Rebuild sanitizers runtimes when LLVM submodule commit changes.
* When rebuilding LLVM / sanitizers, remove the stamp file before
  starting the build process to invalidate previous build output.
2020-03-05 15:52:49 +01:00
Eric Huss a41f1f128e Further clarifications and comments on toolstate operation. 2020-03-04 09:49:55 -08:00
Ralf Jung a6d8c9c5eb more toolstate comments 2020-03-04 08:30:26 -08:00
Eric Huss 0e1cd5935f Toolstate: remove redundant beta-week check. 2020-03-04 08:23:26 -08:00
bors 2b0cfa5b4c Auto merge of #69636 - RalfJung:miri, r=nikomatsakis
update miri

Let's make that toolstate green again. :D

This bumps serde in the lockfile, so r? @oli-obk

Fixes https://github.com/rust-lang/rust/issues/69462
2020-03-04 10:44:55 +00:00
Ralf Jung 0a6f45e2e5 point cargo-miri to the right xargo binary 2020-03-04 10:31:00 +01:00
Eric Huss fdc14cb0b0 Toolstate: don't duplicate nightly tool list. 2020-03-02 08:42:35 -08:00
Dylan DPC f8fb3efe6f Rollup merge of #69624 - ehuss:toolstate-beta-regress, r=Mark-Simulacrum
Toolstate: Don't block beta week on already broken tools.

This changes it so that tools are allowed to be broken entering the beta week if they are already broken.  This restores the original behavior before the changes in #69332.

Closes #68458
2020-03-02 13:42:43 +01:00
Ralf Jung cbf52b1675 remove non-sysroot sources from rust-src component 2020-03-02 10:13:11 +01:00
Eric Huss 22d840e501 Toolstate: Don't block beta week on already broken tools. 2020-03-01 15:46:38 -08:00
Yuki Okushi 559e5ab7ad Rollup merge of #69549 - mati865:mingw, r=kennytm
Improve MinGW detection when cross compiling

Official mingw-w64 builds, MSYS2 and LLVM MinGW provide both `gcc.exe` and `$ARCH-w64-mingw32-gcc.exe` so they should not regress but I included CI changes to verify it though `@bors try` (I don't have permission).

This change will come handy when cross compiling from Linux or Cygwin since they use `gcc` as native compiler and `$ARCH-w64-mingw32-gcc.exe` for MinGW. This means users will no longer have to override the linker.
2020-03-01 19:28:07 +09:00
Yuki Okushi 1e258784e1 Rollup merge of #69397 - tmiasko:llvm-version-suffix, r=nagisa
bootstrap: Remove commit hash from LLVM version suffix to avoid rebuilds

The custom LLVM version suffix was introduced to avoid unintentional
library names conflicts. By default it included the LLVM submodule
commit hash. Changing the version suffix requires the complete LLVM
rebuild, and since then every change to the submodules required it as
well.

Remove the commit hash from version suffix to avoid complete rebuilds,
while leaving the `rust` string, the release number and release channel
to disambiguate the library name.

Context: version suffix was introduced by #59173 as solution to #59034.

Resolves #68715.
2020-03-01 19:28:05 +09:00
Vadim Petrochenkov 6054a30370 Make it build again 2020-02-29 20:47:10 +03:00
Mateusz Mikuła cdb6955659 Update src/bootstrap/dist.rs
Co-Authored-By: kennytm <kennytm@gmail.com>
2020-02-29 18:42:42 +01:00
Andre Richter 7cf2bfb657 Fix no_std detection for target triples
The current check for wether a target is no_std or not is matching for the
string "-none-" in a target triple. This doesn't work for triples that end in
"-none", like "aarch64-unknown-none".

Fix this by matching for "-none" instead.

I checked for all the current target triples containing "none", and this should
not generate any false positives.

This fixes an issue encountered in https://github.com/rust-lang/rust/pull/68334
2020-02-28 21:51:16 +01:00