Skip to content

Add explicit Windows tool selection for native voice builds - #43125

Merged
copyberry[bot] merged 1 commit into
mainfrom
copyberry/codex-internal-to-codex-oss/c80a6d9eb29556157ba1316d62c9b5083f4038b9
Sep 5, 2026
Merged

copyberry[bot] merged 1 commit into
mainfrom
copyberry/codex-internal-to-codex-oss/c80a6d9eb29556157ba1316d62c9b5083f4038b9

Conversation

@copyberry

@copyberry copyberry Bot commented Sep 5, 2026 •

Copy link
Copy Markdown

Add explicit Windows tool selection for native voice builds

Why

Windows libffi builds invoke tools by name, and Cygwin provides a different link.exe from MSVC. Inherited search paths can select unintended tools or SDK inputs.

What changed

Add optional --windows-build-inputs <json> to third_party/voice/build_native.py to select installed tools and SDK directories for Windows MSVC targets. Validate the target, tool paths, architecture-specific assembler, SDK directories, and agreement with CLI tool arguments.

Build the search path from the selection with MSVC ahead of Cygwin, reject shadowed tools, replace inherited INCLUDE and LIB, and remove LIBPATH. Retain the selection in build receipts. Builds without the option continue using the normal Visual Studio environment.

Testing

Add tests for linker precedence and subprocess selection, invalid or mismatched inputs, shadowed SDK tools, environment replacement, and receipt recording.

## Why

Windows libffi builds invoke tools by name, and Cygwin provides a different `link.exe` from MSVC. Inherited search paths can select unintended tools or SDK inputs.

## What changed

Add optional `--windows-build-inputs <json>` to `third_party/voice/build_native.py` to select installed tools and SDK directories for Windows MSVC targets. Validate the target, tool paths, architecture-specific assembler, SDK directories, and agreement with CLI tool arguments.

Build the search path from the selection with MSVC ahead of Cygwin, reject shadowed tools, replace inherited `INCLUDE` and `LIB`, and remove `LIBPATH`. Retain the selection in build receipts. Builds without the option continue using the normal Visual Studio environment.

## Testing

Add tests for linker precedence and subprocess selection, invalid or mismatched inputs, shadowed SDK tools, environment replacement, and receipt recording.

GitOrigin-RevId: c80a6d9eb29556157ba1316d62c9b5083f4038b9
@github-actions

github-actions Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor


Thank you for your submission, we really appreciate it. Like many open-source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution. You can sign the CLA by just posting a Pull Request Comment same as the below format.


I have read the CLA Document and I hereby sign the CLA


You can retrigger this bot by commenting recheck in this Pull Request. Posted by the CLA Assistant Lite bot.

@copyberry
copyberry Bot force-pushed the copyberry/codex-internal-to-codex-oss/c80a6d9eb29556157ba1316d62c9b5083f4038b9 branch from 29dabd8 to aa4a870 Compare September 5, 2026 23:50
@copyberry
copyberry Bot merged commit aa4a870 into main Sep 5, 2026
25 of 32 checks passed
@copyberry
copyberry Bot deleted the copyberry/codex-internal-to-codex-oss/c80a6d9eb29556157ba1316d62c9b5083f4038b9 branch September 5, 2026 23:51
@github-actions github-actions Bot locked and limited conversation to collaborators Sep 5, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant