From cc628d090f9fb88dc98373c6f4b8e81db68d0258 Mon Sep 17 00:00:00 2001 From: Adam Perry Date: Tue, 9 Jun 2026 18:24:55 +0000 Subject: [PATCH] bazel: restore native Windows C++ toolchain resolution --- BUILD.bazel | 7 +++++-- windows_platform_test.sh | 5 ++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/BUILD.bazel b/BUILD.bazel index e71ce4fa68..4a9b3ddfe3 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -27,10 +27,13 @@ platform( platform( name = "local_windows_msvc", constraint_values = [ - "@llvm//constraints/windows_abi:msvc", + # Rust exec tools use the MSVC ABI, while C/C++ actions still use the + # hermetic llvm-mingw toolchain. + "@llvm//constraints/windows_abi:gnullvm", + "@platforms//cpu:x86_64", + "@platforms//os:windows", "@rules_rs//rs/experimental/platforms/constraints:windows_msvc", ], - parents = ["@platforms//host"], ) # The hermetic LLVM Windows toolchain is llvm-mingw and therefore gnullvm. diff --git a/windows_platform_test.sh b/windows_platform_test.sh index 37918507cb..24999127ef 100755 --- a/windows_platform_test.sh +++ b/windows_platform_test.sh @@ -41,7 +41,10 @@ require_count() { } require_platform_constraint local_windows "@llvm//constraints/windows_abi:gnullvm" -require_platform_constraint local_windows_msvc "@llvm//constraints/windows_abi:msvc" +require_platform_constraint local_windows_msvc "@llvm//constraints/windows_abi:gnullvm" +require_platform_constraint local_windows_msvc "@platforms//cpu:x86_64" +require_platform_constraint local_windows_msvc "@platforms//os:windows" +require_platform_constraint local_windows_msvc "@rules_rs//rs/experimental/platforms/constraints:windows_msvc" require_platform_constraint windows_x86_64_gnullvm "@llvm//constraints/windows_abi:gnullvm" require_platform_constraint windows_x86_64_msvc "@llvm//constraints/windows_abi:msvc" require_platform_constraint release_windows_arm64 "@llvm//constraints/windows_abi:gnullvm"