mirror of
https://github.com/openai/codex.git
synced 2026-05-01 11:52:10 +03:00
Enable Windows Bazel Rust test coverage
This commit is contained in:
@@ -1,23 +1,21 @@
|
||||
--- a/rust/private/rustc.bzl
|
||||
+++ b/rust/private/rustc.bzl
|
||||
@@ -472,7 +472,19 @@
|
||||
@@ -472,7 +472,17 @@
|
||||
)
|
||||
ld_is_direct_driver = False
|
||||
|
||||
- if not ld or toolchain.linker_preference == "rust":
|
||||
+ # The bootstrap process wrapper is built without the normal rules_rust
|
||||
+ # process wrapper. On Windows nightly toolchains that expose rust-lld, the
|
||||
+ # C++ toolchain path currently resolves to clang++ while still emitting
|
||||
+ # MSVC-style arguments, so prefer rust-lld for this one bootstrap binary
|
||||
+ # instead of switching all Rust actions over.
|
||||
+ use_bootstrap_rust_linker = (
|
||||
+ # Windows MSVC Rust targets can inherit a GNU-flavored C++ linker path
|
||||
+ # (`clang++`) alongside MSVC-style arguments. Prefer the toolchain linker
|
||||
+ # there so both exec helpers and ordinary MSVC Rust targets link through
|
||||
+ # the Windows direct linker instead.
|
||||
+ use_windows_rust_linker = (
|
||||
+ toolchain.target_os.startswith("windows") and
|
||||
+ toolchain.linker != None and
|
||||
+ hasattr(ctx.executable, "_bootstrap_process_wrapper") and
|
||||
+ not ctx.executable._process_wrapper
|
||||
+ toolchain.target_abi == "msvc" and
|
||||
+ toolchain.linker != None
|
||||
+ )
|
||||
+
|
||||
+ if not ld or toolchain.linker_preference == "rust" or use_bootstrap_rust_linker:
|
||||
+ if not ld or toolchain.linker_preference == "rust" or use_windows_rust_linker:
|
||||
ld = toolchain.linker.path
|
||||
ld_is_direct_driver = toolchain.linker_type == "direct"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user