@@ -20,23 +20,33 @@ jobs:
2020 build :
2121 strategy :
2222 matrix :
23- plat : ['x64', 'x86']
24- INTERFACE64 : ['1', '0']
25- os : [ windows-latest]
26- exclude :
27- - plat : x86
28- INTERFACE64 : ' 1'
23+ include :
24+ - { os: windows-latest, PLAT: x86, INTERFACE64: '0'}
25+ - { os: windows-latest, PLAT: x64, INTERFACE64: '0'}
26+ - { os: windows-latest, PLAT: x64, INTERFACE64: '1'}
27+ - { os: windows-11-arm, PLAT: arm64, INTERFACE64: '0'}
28+ - { os: windows-11-arm, PLAT: arm64, INTERFACE64: '1'}
2929 fail-fast : false
3030 runs-on : ${{ matrix.os }}
3131
3232 timeout-minutes : 90
3333 steps :
3434 - uses : actions/checkout@v4.1.1
35+
3536 - name : install-rtools
37+ if : matrix.os == 'windows-latest'
3638 run : |
3739 # rtools 42+ does not support 32 bits builds.
3840 choco install -y rtools --no-progress --force --version=4.0.0.20220206
3941
42+ - name : Download and install LLVM installer
43+ if : matrix.os == 'windows-11-arm'
44+ run : |
45+ Invoke-WebRequest https://github.com/llvm/llvm-project/releases/download/llvmorg-20.1.8/LLVM-20.1.8-woa64.exe -UseBasicParsing -OutFile LLVM-woa64.exe
46+ Start-Process -FilePath ".\LLVM-woa64.exe" -ArgumentList "/S" -Wait
47+ echo "C:\Program Files\LLVM\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
48+
49+
4050 - name : Set env variables
4151 run : |
4252 echo "START_DIR=$PWD" >> $env:GITHUB_ENV
5666 echo "LDFLAGS=-lucrt -static -static-libgcc -Wl,--defsym,quadmath_snprintf=snprintf" >> $env:GITHUB_ENV
5767 echo "BUILD_BITS=64" >> $env:GITHUB_ENV
5868 }
69+ if ( "${{ matrix.plat }}" -eq "arm64") {
70+ echo "PLAT=arm64" >> $env:GITHUB_ENV
71+ }
5972 if ( ${{ matrix.INTERFACE64 }} -eq "1" ) {
6073 echo "INTERFACE64=1" >> $env:GITHUB_ENV
6174 }
6982
7083 - name : Build
7184 run : |
85+ if ( "${{ matrix.plat }}" -eq "arm64") {
86+ echo Setting up ARM64 Developer Command Prompt
87+ CALL "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsarm64.bat"
88+ PATH=C:\Program Files\LLVM\bin;%PATH%
89+ }
7290 git submodule update --init --recursive
7391 & $env:BASH_PATH -lc tools/build_steps_windows.sh
7492
0 commit comments