Skip to content

Commit 9b22c11

Browse files
committed
Add Windows to test matrix, drop libsqlite3-dev dependency
- test-windows job runs scripts/test.sh under MSYS2 (same as build) - Remove libsqlite3-dev from all CI steps (sqlite3 is vendored now) - Both dry-run.yml and release.yml updated
1 parent ae0d175 commit 9b22c11

2 files changed

Lines changed: 52 additions & 14 deletions

File tree

.github/workflows/dry-run.yml

Lines changed: 26 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
- uses: actions/checkout@v4
1515

1616
- name: Install build deps
17-
run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev zlib1g-dev cmake
17+
run: sudo apt-get update && sudo apt-get install -y zlib1g-dev cmake
1818

1919
- name: Install LLVM 20
2020
run: |
@@ -46,7 +46,8 @@ jobs:
4646
# ── Step 2: Unit tests (ASan + UBSan) ───────────────────────
4747
# macOS: use cc (Apple Clang) — GCC on macOS doesn't ship ASan runtime
4848
# Linux: use system gcc — full ASan/UBSan support
49-
test:
49+
# Windows: MSYS2 MinGW GCC
50+
test-unix:
5051
needs: [lint]
5152
strategy:
5253
fail-fast: false
@@ -74,14 +75,33 @@ jobs:
7475

7576
- name: Install deps (Ubuntu)
7677
if: startsWith(matrix.os, 'ubuntu')
77-
run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev zlib1g-dev
78+
run: sudo apt-get update && sudo apt-get install -y zlib1g-dev
7879

7980
- name: Test
8081
run: scripts/test.sh CC=${{ matrix.cc }} CXX=${{ matrix.cxx }}
8182

83+
test-windows:
84+
needs: [lint]
85+
runs-on: windows-latest
86+
steps:
87+
- uses: actions/checkout@v4
88+
89+
- uses: msys2/setup-msys2@v2
90+
with:
91+
msystem: UCRT64
92+
path-type: inherit
93+
install: >-
94+
mingw-w64-ucrt-x86_64-gcc
95+
mingw-w64-ucrt-x86_64-zlib
96+
make
97+
98+
- name: Test
99+
shell: msys2 {0}
100+
run: scripts/test.sh
101+
82102
# ── Step 3: Build binaries (standard + UI, all OS) ──────────
83103
build-unix:
84-
needs: [test]
104+
needs: [test-unix, test-windows]
85105
strategy:
86106
matrix:
87107
include:
@@ -111,7 +131,7 @@ jobs:
111131

112132
- name: Install deps (Ubuntu)
113133
if: startsWith(matrix.os, 'ubuntu')
114-
run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev zlib1g-dev
134+
run: sudo apt-get update && sudo apt-get install -y zlib1g-dev
115135

116136
- uses: actions/setup-node@v4
117137
with:
@@ -139,7 +159,7 @@ jobs:
139159
path: "*.tar.gz"
140160

141161
build-windows:
142-
needs: [test]
162+
needs: [test-unix, test-windows]
143163
runs-on: windows-latest
144164
steps:
145165
- uses: actions/checkout@v4
@@ -150,7 +170,6 @@ jobs:
150170
path-type: inherit
151171
install: >-
152172
mingw-w64-ucrt-x86_64-gcc
153-
mingw-w64-ucrt-x86_64-sqlite3
154173
mingw-w64-ucrt-x86_64-zlib
155174
make
156175

.github/workflows/release.yml

Lines changed: 26 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ jobs:
2828
- uses: actions/checkout@v4
2929

3030
- name: Install build deps
31-
run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev zlib1g-dev cmake
31+
run: sudo apt-get update && sudo apt-get install -y zlib1g-dev cmake
3232

3333
- name: Install LLVM 20
3434
run: |
@@ -60,7 +60,8 @@ jobs:
6060
# ── Step 2: Unit tests (ASan + UBSan) ───────────────────────
6161
# macOS: use cc (Apple Clang) — GCC on macOS doesn't ship ASan runtime
6262
# Linux: use system gcc — full ASan/UBSan support
63-
test:
63+
# Windows: MSYS2 MinGW GCC
64+
test-unix:
6465
needs: [lint]
6566
strategy:
6667
fail-fast: false
@@ -88,14 +89,33 @@ jobs:
8889

8990
- name: Install deps (Ubuntu)
9091
if: startsWith(matrix.os, 'ubuntu')
91-
run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev zlib1g-dev
92+
run: sudo apt-get update && sudo apt-get install -y zlib1g-dev
9293

9394
- name: Test
9495
run: scripts/test.sh CC=${{ matrix.cc }} CXX=${{ matrix.cxx }}
9596

97+
test-windows:
98+
needs: [lint]
99+
runs-on: windows-latest
100+
steps:
101+
- uses: actions/checkout@v4
102+
103+
- uses: msys2/setup-msys2@v2
104+
with:
105+
msystem: UCRT64
106+
path-type: inherit
107+
install: >-
108+
mingw-w64-ucrt-x86_64-gcc
109+
mingw-w64-ucrt-x86_64-zlib
110+
make
111+
112+
- name: Test
113+
shell: msys2 {0}
114+
run: scripts/test.sh
115+
96116
# ── Step 3: Build binaries (standard + UI, all OS) ──────────
97117
build-unix:
98-
needs: [test]
118+
needs: [test-unix, test-windows]
99119
strategy:
100120
matrix:
101121
include:
@@ -125,7 +145,7 @@ jobs:
125145

126146
- name: Install deps (Ubuntu)
127147
if: startsWith(matrix.os, 'ubuntu')
128-
run: sudo apt-get update && sudo apt-get install -y libsqlite3-dev zlib1g-dev
148+
run: sudo apt-get update && sudo apt-get install -y zlib1g-dev
129149

130150
- uses: actions/setup-node@v4
131151
with:
@@ -153,7 +173,7 @@ jobs:
153173
path: "*.tar.gz"
154174

155175
build-windows:
156-
needs: [test]
176+
needs: [test-unix, test-windows]
157177
runs-on: windows-latest
158178
steps:
159179
- uses: actions/checkout@v4
@@ -164,7 +184,6 @@ jobs:
164184
path-type: inherit
165185
install: >-
166186
mingw-w64-ucrt-x86_64-gcc
167-
mingw-w64-ucrt-x86_64-sqlite3
168187
mingw-w64-ucrt-x86_64-zlib
169188
make
170189

0 commit comments

Comments
 (0)