@@ -80,11 +80,23 @@ jobs:
8080 # Check the `calculate_matrix` job to see how is the matrix defined.
8181 include : ${{ fromJSON(needs.calculate_matrix.outputs.jobs) }}
8282 steps :
83+ - if : contains(matrix.os, 'windows') && contains(matrix.os, 'arm64')
84+ name : install Git on Windows Arm64
85+ shell : powershell
86+ run : |
87+ Invoke-WebRequest -Uri https://github.com/git-for-windows/git/releases/download/v2.45.2.windows.1/Git-2.45.2-64-bit.exe -OutFile '${{ runner.temp }}\gitinstaller.exe'
88+ &'${{ runner.temp }}\gitinstaller.exe' /SP- /VERYSILENT /SUPPRESSMSGBOXES /NOCANCEL /NORESTART /CLOSEAPPLICATIONS /RESTARTAPPLICATIONS /o:PathOption=CmdTools /o:BashTerminalOption=ConHost /o:EnableSymlinks=Enabled
89+ $currentPath = [System.Environment]::GetEnvironmentVariable("PATH", "Machine")
90+ $newPath = $currentPath + ';C:\Program Files\Git\bin'
91+ [Environment]::SetEnvironmentVariable("PATH", $newPath, "Machine")
92+
8393 - if : contains(matrix.os, 'windows')
84- uses : msys2/setup-msys2@v2.22 .0
94+ uses : msys2/setup-msys2@v2.21 .0
8595 with :
86- # i686 jobs use mingw32. x86_64 and cross-compile jobs use mingw64.
87- msystem : ${{ contains(matrix.name, 'i686') && 'mingw32' || 'mingw64' }}
96+ # i686 jobs use mingw32.
97+ # aarch64 runners use clangarm64.
98+ # x86_64 and cross-compile jobs use mingw64.
99+ msystem : ${{ contains(matrix.name, 'i686') && 'mingw32' || contains(matrix.os, 'arm64') && 'clangarm64' || 'mingw64' }}
88100 # don't try to download updates for already installed packages
89101 update : false
90102 # don't try to use the msys that comes built-in to the github runner,
@@ -98,6 +110,13 @@ jobs:
98110 dos2unix
99111 diffutils
100112
113+ # - if: contains(matrix.os, 'windows') && contains(matrix.os, 'arm64')
114+ # name: install VS on Windows Arm64
115+ # shell: powershell
116+ # run: |
117+ # Invoke-WebRequest -Uri https://aka.ms/vs/17/release/vs_buildtools.exe -OutFile '${{ runner.temp }}\vs_buildtools.exe'
118+ # cmd /c "${{ runner.temp }}\vs_buildtools.exe --quiet --norestart --wait --nocache --add Microsoft.VisualStudio.Component.VC.Tools.ARM64 --add Microsoft.VisualStudio.Component.Windows11SDK.22621"
119+
101120 - name : disable git crlf conversion
102121 run : git config --global core.autocrlf false
103122
0 commit comments