From 202ea98552ad36908c12109e728a7d0d7c603535 Mon Sep 17 00:00:00 2001 From: Harish RS Date: Tue, 16 Dec 2025 13:05:41 +0530 Subject: Add ARM64 to Windows workflows. --- .github/workflows/c-std.yml | 35 +++++++++++++++++++++++++++++++++++ .github/workflows/cmake.yml | 7 +++++++ .github/workflows/msys-cygwin.yml | 7 +++++-- 3 files changed, 47 insertions(+), 2 deletions(-) (limited to '.github') diff --git a/.github/workflows/c-std.yml b/.github/workflows/c-std.yml index b6e116bb..3256fc85 100644 --- a/.github/workflows/c-std.yml +++ b/.github/workflows/c-std.yml @@ -27,6 +27,10 @@ jobs: value: windows-latest cmake-opt: -G Ninja + - name: Windows ARM64 + value: windows-11-arm + cmake-opt: -G Ninja + compiler: - gcc - clang @@ -93,10 +97,22 @@ jobs: - { os: { name: Windows }, builder: configure } + # Don't run configure on Windows ARM64 + - { os: { name: Windows ARM64 }, + builder: configure } + # Don't run gcc 32-bit on Windows - { os: { name: Windows }, arch: { tag: i386 } } + # Don't run 32 bit on Windows ARM64 + - { os: { name: Windows ARM64 }, + arch: { tag: i386 } } + + # Don't run gcc on Windows ARM64 + - { os: { name: Windows ARM64 }, + compiler: gcc } + steps: - name: Checkout repository @@ -172,6 +188,9 @@ jobs: - name: Windows value: windows-latest + - name: Windows ARM64 + value: windows-11-arm + compiler: - cl @@ -182,6 +201,9 @@ jobs: - name: 64-bit value: -A x64 + - name: ARM64 + value: -A ARM64 + builder: - cmake @@ -202,6 +224,19 @@ jobs: - name: latest value: /std:clatest + exclude: + # Don't run 32-bit on Windows ARM64 + - { os: { name: Windows ARM64 }, + arch: { name: 32-bit } } + + # Don't run x64 on Windows ARM64 + - { os: { name: Windows ARM64 }, + arch: { name: 64-bit } } + + # Don't run ARM64 on regular Windows + - { os: { name: Windows }, + arch: { name: ARM64 } } + steps: - name: Checkout repository diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 60fdf595..bdea59f4 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -51,6 +51,13 @@ jobs: cmake-args: -A x64 -DMINIZIP_ENABLE_BZIP2=OFF pkgtgt: PACKAGE + - name: Windows MSVC ARM64 + os: windows-11-arm + compiler: cl + cflags: /W3 + cmake-args: -A ARM64 -DMINIZIP_ENABLE_BZIP2=OFF + pkgtgt: PACKAGE + - name: Windows GCC os: windows-latest compiler: gcc diff --git a/.github/workflows/msys-cygwin.yml b/.github/workflows/msys-cygwin.yml index b8da2bb6..45d4a261 100644 --- a/.github/workflows/msys-cygwin.yml +++ b/.github/workflows/msys-cygwin.yml @@ -4,11 +4,14 @@ on: [push, pull_request] jobs: MSys: - runs-on: windows-latest + runs-on: ${{ matrix.os || 'windows-latest' }} strategy: fail-fast: false matrix: - sys: [mingw32, mingw64, ucrt64, clang64] + sys: [mingw32, mingw64, ucrt64, clang64, clangarm64] + include: + - sys: clangarm64 + os: windows-11-arm name: MSys - ${{ matrix.sys }} defaults: run: -- cgit v1.2.3-55-g6feb