diff --git a/.github/workflows/windows-alt.yml b/.github/workflows/windows-alt.yml index 7d4081c3304..ad49094a2ec 100644 --- a/.github/workflows/windows-alt.yml +++ b/.github/workflows/windows-alt.yml @@ -71,15 +71,25 @@ jobs: run: cmake --build ./build --target run_tests clang-cl: if: github.repository_owner == 'aws' + strategy: + fail-fast: false + matrix: + target: + - x64 + - x64_arm64 runs-on: windows-latest steps: - - name: Install NASM + - if: ${{ matrix.target == 'x64' }} + name: Install NASM uses: ilammy/setup-nasm@v1.5.1 - name: Checkout uses: actions/checkout@v4 - uses: TheMrMilchmann/setup-msvc-dev@v3 with: - arch: x64 + arch: ${{ matrix.target }} + - name: Remove wrong clang-cl.exe + run: | + rm "C:/Program Files/LLVM/bin/clang-cl.exe" - name: Setup CMake uses: threeal/cmake-action@v1.3.0 with: @@ -87,11 +97,14 @@ jobs: c-compiler: clang-cl cxx-compiler: clang-cl options: | + CMAKE_CROSSCOMPILING=${{ ((matrix.target == 'x64') && '0') || '1' }} \ CMAKE_SYSTEM_NAME=Windows \ - CMAKE_SYSTEM_PROCESSOR=x86_64 \ + CMAKE_SYSTEM_PROCESSOR=${{ ((matrix.target == 'x64') && 'x86_64') || 'ARM64' }} \ CMAKE_MAKE_PROGRAM=ninja.exe \ CMAKE_BUILD_TYPE=Release \ + CMAKE_GENERATOR_PLATFORM=${{ ((matrix.target == 'x64') && 'x86_64') || 'ARM64' }} - name: Build Project run: cmake --build ./build --target all - - name: Run tests + - if: ${{ matrix.target == 'x64' }} + name: Run tests run: cmake --build ./build --target run_tests \ No newline at end of file