diff options
| author | Yuki Okushi <huyuumi.dev@gmail.com> | 2020-01-11 04:50:49 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-01-11 04:50:49 +0900 |
| commit | a74c790758404f654db98a19065f0cbdbf16e7b8 (patch) | |
| tree | a9109b4d6fcaeb9905f0e6e2cabb1f6baf69a173 /src/bootstrap | |
| parent | a491100aa3e6d3dbc1f4633e446617ab31b18688 (diff) | |
| parent | 686d5f83efcd552465ce4ab236f2ffb66c055d90 (diff) | |
| download | rust-a74c790758404f654db98a19065f0cbdbf16e7b8.tar.gz rust-a74c790758404f654db98a19065f0cbdbf16e7b8.zip | |
Rollup merge of #68019 - cuviper:in-tree-compiletest, r=Mark-Simulacrum
Build compiletest with in-tree libtest This updates compiletest to build in `Mode::ToolStd`, using the locally-built crates for `std` and especially `test`. This way we're immune to unstable differences in the bootstrap compiler crates, whether that's a prior-release stage0 or a current release local rebuild. Fixes #59264. As a minor cleanup, this also removes the unused `llvm_tools` flag.
Diffstat (limited to 'src/bootstrap')
| -rw-r--r-- | src/bootstrap/tool.rs | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/src/bootstrap/tool.rs b/src/bootstrap/tool.rs index 9fd20386e36..7f24768a4f1 100644 --- a/src/bootstrap/tool.rs +++ b/src/bootstrap/tool.rs @@ -289,8 +289,8 @@ fn rustbook_features() -> Vec<String> { macro_rules! bootstrap_tool { ($( $name:ident, $path:expr, $tool_name:expr - $(,llvm_tools = $llvm:expr)* $(,is_external_tool = $external:expr)* + $(,is_unstable_tool = $unstable:expr)* $(,features = $features:expr)* ; )+) => { @@ -301,15 +301,6 @@ macro_rules! bootstrap_tool { )+ } - impl Tool { - /// Whether this tool requires LLVM to run - pub fn uses_llvm_tools(&self) -> bool { - match self { - $(Tool::$name => false $(|| $llvm)*,)+ - } - } - } - impl<'a> Builder<'a> { pub fn tool_exe(&self, tool: Tool) -> PathBuf { match tool { @@ -350,7 +341,12 @@ macro_rules! bootstrap_tool { compiler: self.compiler, target: self.target, tool: $tool_name, - mode: Mode::ToolBootstrap, + mode: if false $(|| $unstable)* { + // use in-tree libraries for unstable features + Mode::ToolStd + } else { + Mode::ToolBootstrap + }, path: $path, is_optional_tool: false, source_type: if false $(|| $external)* { @@ -377,7 +373,7 @@ bootstrap_tool!( Tidy, "src/tools/tidy", "tidy"; Linkchecker, "src/tools/linkchecker", "linkchecker"; CargoTest, "src/tools/cargotest", "cargotest"; - Compiletest, "src/tools/compiletest", "compiletest", llvm_tools = true; + Compiletest, "src/tools/compiletest", "compiletest", is_unstable_tool = true; BuildManifest, "src/tools/build-manifest", "build-manifest"; RemoteTestClient, "src/tools/remote-test-client", "remote-test-client"; RustInstaller, "src/tools/rust-installer", "fabricate", is_external_tool = true; |
