This repository was archived by the owner on May 28, 2025. It is now read-only.
File tree Expand file tree Collapse file tree 1 file changed +14
-0
lines changed
src/bootstrap/src/core/config Expand file tree Collapse file tree 1 file changed +14
-0
lines changed Original file line number Diff line number Diff line change @@ -2399,6 +2399,20 @@ impl Config {
23992399 Some ( commit) => {
24002400 self . download_ci_rustc ( commit) ;
24012401
2402+ // CI-rustc can't be used without CI-LLVM. If `self.llvm_from_ci` is false, it means the "if-unchanged"
2403+ // logic has detected some changes in the LLVM submodule (download-ci-llvm=false can't happen here as
2404+ // we don't allow it while parsing the configuration).
2405+ if !self . llvm_from_ci {
2406+ // This happens when LLVM submodule is updated in CI, we should disable ci-rustc without an error
2407+ // to not break CI. For non-CI environments, we should return an error.
2408+ if CiEnv :: is_ci ( ) {
2409+ println ! ( "WARNING: LLVM submodule has changes, `download-rustc` will be disabled." ) ;
2410+ return None ;
2411+ } else {
2412+ panic ! ( "ERROR: LLVM submodule has changes, `download-rustc` can't be used." ) ;
2413+ }
2414+ }
2415+
24022416 if let Some ( config_path) = & self . config {
24032417 let ci_config_toml = match self . get_builder_toml ( "ci-rustc" ) {
24042418 Ok ( ci_config_toml) => ci_config_toml,
You can’t perform that action at this time.
0 commit comments