Skip to content

Commit b585da0

Browse files
authored
Fix CI: upgrade to nim-lang/csources_v3, llvm-mingw v21, macos-14-arm, add linux-arm64 (#50)
* CI: Use nim-lang/csources_v3 * llvm-mingw v21 * macos-14 * ubuntu-arm
1 parent ecf6e4a commit b585da0

File tree

1 file changed

+18
-11
lines changed

1 file changed

+18
-11
lines changed

.github/workflows/ci.yml

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ jobs:
1414
cpu: amd64
1515
- os: linux
1616
cpu: i386
17+
- os: linux
18+
cpu: arm64
1719
- os: macos
1820
cpu: amd64
1921
- os: windows
@@ -24,9 +26,13 @@ jobs:
2426
- target:
2527
os: linux
2628
builder: ubuntu-22.04
29+
- target:
30+
os: linux
31+
cpu: arm64
32+
builder: ubuntu-22.04-arm
2733
- target:
2834
os: macos
29-
builder: macos-13
35+
builder: macos-14
3036
- target:
3137
os: windows
3238
builder: windows-latest
@@ -60,7 +66,7 @@ jobs:
6066
chmod 755 external/bin/gcc external/bin/g++
6167
echo '${{ github.workspace }}/external/bin' >> $GITHUB_PATH
6268
63-
- name: Restore MinGW-W64 (Windows) from cache
69+
- name: Restore llvm-mingw (Windows) from cache
6470
if: runner.os == 'Windows'
6571
id: windows-mingw-cache
6672
uses: actions/cache@v4
@@ -76,24 +82,25 @@ jobs:
7682
path: external/dlls-${{ matrix.target.cpu }}
7783
key: 'dlls-${{ matrix.target.cpu }}'
7884

79-
- name: Install MinGW64 dependency (Windows)
85+
- name: Install llvm-mingw dependency (Windows)
8086
if: >
8187
steps.windows-mingw-cache.outputs.cache-hit != 'true' &&
8288
runner.os == 'Windows'
8389
shell: bash
8490
run: |
8591
mkdir -p external
86-
MINGW_BASE="https://github.com/brechtsanders/winlibs_mingw/releases/download/11.2.0-12.0.1-9.0.0-r1"
92+
LLVM_VERSION="20250730"
93+
MINGW_BASE="https://github.com/mstorsjo/llvm-mingw/releases/download/$LLVM_VERSION"
8794
if [[ '${{ matrix.target.cpu }}' == 'amd64' ]]; then
88-
MINGW_URL="$MINGW_BASE/winlibs-x86_64-posix-seh-gcc-11.2.0-mingw-w64-9.0.0-r1.7z"
95+
MINGW_URL="$MINGW_BASE/llvm-mingw-$LLVM_VERSION-ucrt-x86_64.zip"
8996
ARCH=64
9097
else
91-
MINGW_URL="$MINGW_BASE/winlibs-i686-posix-dwarf-gcc-11.2.0-mingw-w64-9.0.0-r1.7z"
98+
MINGW_URL="$MINGW_BASE/llvm-mingw-$LLVM_VERSION-ucrt-i686.zip"
9299
ARCH=32
93100
fi
94-
curl -L "$MINGW_URL" -o "external/mingw-${{ matrix.target.cpu }}.7z"
95-
7z x -y "external/mingw-${{ matrix.target.cpu }}.7z" -oexternal/
96-
mv external/mingw$ARCH external/mingw-${{ matrix.target.cpu }}
101+
curl -L "$MINGW_URL" -o "external/mingw-${{ matrix.target.cpu }}.zip"
102+
7z x -y "external/mingw-${{ matrix.target.cpu }}.zip" -oexternal/mingw-${{ matrix.target.cpu }}/
103+
mv external/mingw-${{ matrix.target.cpu }}/**/* ./external/mingw-${{ matrix.target.cpu }}
97104
98105
- name: Install DLLs dependencies (Windows)
99106
if: >
@@ -125,7 +132,7 @@ jobs:
125132
git ls-remote "https://github.com/$1" "${2:-HEAD}" | cut -f 1
126133
}
127134
nimHash=$(getHash nim-lang/Nim '${{ matrix.branch }}')
128-
csourcesHash=$(getHash nim-lang/csources_v2)
135+
csourcesHash=$(getHash nim-lang/csources_v3)
129136
echo "nimHash=$nimHash" >> $GITHUB_OUTPUT
130137
echo "csourcesHash=$csourcesHash" >> $GITHUB_OUTPUT
131138
@@ -150,7 +157,7 @@ jobs:
150157
steps.nim-cache.outputs.cache-hit != 'true'
151158
uses: actions/checkout@v4
152159
with:
153-
repository: nim-lang/csources_v2
160+
repository: nim-lang/csources_v3
154161
path: csources
155162
ref: ${{ steps.versions.outputs.csources }}
156163

0 commit comments

Comments
 (0)