From 2778411b6cc31ff804655753c2dee3efe78ad413 Mon Sep 17 00:00:00 2001 From: Ogulcan Celik Date: Fri, 11 Sep 2026 15:35:35 +0300 Subject: chore: add one-time windows cross-check setup --- AGENTS.md | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'AGENTS.md') diff --git a/AGENTS.md b/AGENTS.md index acec3c03..92b29da9 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -141,10 +141,16 @@ just check # formatting check + cargo nextest + maintenance script Run `just check` before committing unless Can explicitly accepts narrower validation. Do not bypass failing checks; fix the failure or explain exactly why a narrower check is enough. Windows MSVC cross-compilation from Unix requires SDK/CRT headers and libraries. -Set `LIBGHOSTTY_VT_WINDOWS_LIBC` to a Zig libc configuration file whose directories -point to that SDK (the format is shown by `zig libc` on Windows). `just windows-lint` -and the Windows stage of `just check` use this configuration. Native Windows builds -auto-detect their installed SDK and do not require the override. +Install `xwin` with `cargo install xwin --locked`, then run +`just setup-windows-cross` once and accept Microsoft's SDK license when prompted. +This downloads the SDK directly from Microsoft; no Windows machine is required. +The SDK and Zig libc configuration live at `~/.local/share/herdr/windows-cross/`, +shared by worktrees. `just windows-lint` and the Windows stage of `just check` +use this configuration automatically. To use another SDK, set +`LIBGHOSTTY_VT_WINDOWS_LIBC` to its Zig libc configuration file. +Setup accepts `--accept-license` for explicit noninteractive license acceptance; +normal checks never download the SDK. Native Windows builds auto-detect their +installed SDK. Native Linux/macOS builds do not need the Windows SDK. Unit tests live next to the code (`#[cfg(test)] mod tests`). New `AppState` or `Workspace` behavior should be testable with `AppState::test_new()` and `Workspace::test_new()` without PTYs. -- cgit v1.2.3