about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authoronur-ozkan <work@onurozkan.dev>2024-04-08 21:49:47 +0300
committeronur-ozkan <work@onurozkan.dev>2024-04-09 00:09:55 +0300
commita7aa7fdd1261995591fa739611a8af87adaf099e (patch)
tree66138db832dd60974e48d001b247c6dfe0c218e1 /src
parent3f10032eb04a58d6d54caef0318f705042ca0ba1 (diff)
downloadrust-a7aa7fdd1261995591fa739611a8af87adaf099e.tar.gz
rust-a7aa7fdd1261995591fa739611a8af87adaf099e.zip
do not allow using local llvm while using rustc from ci
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Diffstat (limited to 'src')
-rw-r--r--src/bootstrap/src/core/config/config.rs15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/bootstrap/src/core/config/config.rs b/src/bootstrap/src/core/config/config.rs
index 96dec975250..c84eb8a684f 100644
--- a/src/bootstrap/src/core/config/config.rs
+++ b/src/bootstrap/src/core/config/config.rs
@@ -2483,9 +2483,20 @@ impl Config {
                 llvm::is_ci_llvm_available(self, asserts)
             }
         };
+
         match download_ci_llvm {
-            None => self.channel == "dev" && if_unchanged(),
-            Some(StringOrBool::Bool(b)) => b,
+            None => {
+                (self.channel == "dev" || self.download_rustc_commit.is_some()) && if_unchanged()
+            }
+            Some(StringOrBool::Bool(b)) => {
+                if !b && self.download_rustc_commit.is_some() {
+                    panic!(
+                        "`llvm.download-ci-llvm` cannot be set to `false` if `rust.download-rustc` is set to `true` or `if-unchanged`."
+                    );
+                }
+
+                b
+            }
             // FIXME: "if-available" is deprecated. Remove this block later (around mid 2024)
             // to not break builds between the recent-to-old checkouts.
             Some(StringOrBool::String(s)) if s == "if-available" => {