diff --git a/src/bootstrap/src/core/build_steps/llvm.rs b/src/bootstrap/src/core/build_steps/llvm.rs index 4ac0f6ea85679..8885a7bd89afb 100644 --- a/src/bootstrap/src/core/build_steps/llvm.rs +++ b/src/bootstrap/src/core/build_steps/llvm.rs @@ -557,11 +557,14 @@ impl CommandLineStep for Llvm { // which saves both memory during parallel links and overall disk space // for the tools. We don't do this on every platform as it doesn't work // equally well everywhere. - if link_shared { - cfg.define("LLVM_LINK_LLVM_DYLIB", "ON"); - // Keep the pre-LLVM23 behavior for now. - cfg.define("LLVM_VERSIONED_DYLIB_NAME_ON_DARWIN", "OFF"); - } + // + // Under normal circumstances, the dylib LINK and BUILD vars below should + // be set to the same value. See #160597 + let llvm_dylib = if link_shared { "ON" } else { "OFF" }; + cfg.define("LLVM_LINK_LLVM_DYLIB", llvm_dylib); + cfg.define("LLVM_BUILD_LLVM_DYLIB", llvm_dylib); + // Keep the pre-LLVM23 behavior for now. + cfg.define("LLVM_VERSIONED_DYLIB_NAME_ON_DARWIN", "OFF"); if (target.starts_with("csky") || target.starts_with("riscv")