Skip to content

Fix Windows ARM build and add cross-platform PR checks#49

Merged
joske merged 6 commits into
masterfrom
fix-windows-arm-build
Apr 7, 2026
Merged

Fix Windows ARM build and add cross-platform PR checks#49
joske merged 6 commits into
masterfrom
fix-windows-arm-build

Conversation

@joske

@joske joske commented Apr 7, 2026

Copy link
Copy Markdown
Owner

Summary

  • Fix Windows ARM build: MSYS2 on ARM Windows reports x86_64 via uname, causing rustup-init to default to x86_64-pc-windows-gnu host (needs gcc, unavailable in CLANGARM64). After install, override to aarch64-pc-windows-gnullvm.
  • Add build-macos.yml — builds on macOS aarch64 + x86_64 on every PR
  • Add build-windows.yml — builds on Windows x86_64 + ARM on every PR
  • Remove test-windows.yml (superseded by build-windows.yml)

These catch platform-specific build failures before merge instead of at release time.

Test plan

  • Windows ARM build verified on fix-windows-arm-build branch
  • PR checks: macOS and Windows builds pass

🤖 Generated with Claude Code

joske and others added 6 commits April 7, 2026 16:03
Reproduces the publish workflow's Windows ARM steps with debug output
to understand why rustup picks up a stale settings.toml.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
MSYS2 on ARM Windows reports x86_64 via uname, causing rustup to
default to x86_64-pc-windows-gnu host which needs gcc (not available
in CLANGARM64 env). Explicitly set the host triple.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
New rustup-init creates settings.toml before reading CLI args,
causing --default-host conflict. Remove the dir first.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
rustup-init bakes in x86_64-pc-windows-gnu on MSYS2 ARM.
Install first, then switch default host and toolchain to
aarch64-pc-windows-gnullvm.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
MSYS2 on ARM Windows reports x86_64 via uname, causing rustup-init
to default to x86_64-pc-windows-gnu host which needs gcc (unavailable
in CLANGARM64). After install, switch to aarch64-pc-windows-gnullvm.

Also removes test-windows and test-windows-arm workflows (no longer needed).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Catches platform-specific build failures before merge instead of
at release time. Includes the ARM host triple fix for CLANGARM64.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@joske joske merged commit ece278b into master Apr 7, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant