about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2025-07-05 12:42:59 +0000
committerbors <bors@rust-lang.org>2025-07-05 12:42:59 +0000
commit6dec76f1c2809fded082dd44d3752d3f6220d767 (patch)
treef033f0b9d8a6a94425c5d86a532c3503ff8f70fa
parentfd9ca711a3a0e2bd5bd33a345fa4439348111006 (diff)
parent006e97a234baf050e599576a7bce239173ce5556 (diff)
downloadrust-6dec76f1c2809fded082dd44d3752d3f6220d767.tar.gz
rust-6dec76f1c2809fded082dd44d3752d3f6220d767.zip
Auto merge of #143474 - jieyouxu:bootstrap-llvm-snapshot, r=Kobzol
Pretend in bootstrap snapshot tests that we always build in-tree LLVM

Otherwise, depending on whether CI LLVM is inhibited or if an externally-provided LLVM is used, bootstrap host LLVM build step could be missing in step snapshots.

Note that I'm not sure if this is the *right* solution (this might be *a* solution). I imagine we do want to control for the set of configuration that these snapshot tests are run, as much as possible.

r? `@Kobzol`
-rw-r--r--src/bootstrap/src/utils/tests/mod.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/bootstrap/src/utils/tests/mod.rs b/src/bootstrap/src/utils/tests/mod.rs
index b8984d1f3aa..59c169b0f2b 100644
--- a/src/bootstrap/src/utils/tests/mod.rs
+++ b/src/bootstrap/src/utils/tests/mod.rs
@@ -7,6 +7,7 @@ use tempfile::TempDir;
 
 use crate::core::builder::Builder;
 use crate::core::config::DryRun;
+use crate::utils::helpers::get_host_target;
 use crate::{Build, Config, Flags, t};
 
 pub mod git;
@@ -91,6 +92,13 @@ impl ConfigBuilder {
         self.args.push("--set".to_string());
         self.args.push("build.submodules=false".to_string());
 
+        // Override any external LLVM set and inhibit CI LLVM; pretend that we're always building
+        // in-tree LLVM from sources.
+        self.args.push("--set".to_string());
+        self.args.push("llvm.download-ci-llvm=false".to_string());
+        self.args.push("--set".to_string());
+        self.args.push(format!("target.'{}'.llvm-config=false", get_host_target()));
+
         // Do not mess with the local rustc checkout build directory
         self.args.push("--build-dir".to_string());
         self.args.push(self.directory.join("build").display().to_string());