ci: run make check on ubuntu / windows (MSYS2 UCRT64) / macos (#140)
The repo's own dependency-free gate, on the three claimed platforms, for every PR and push to main/dev. The windows job is the one that would have caught #68/#137 pre-merge. No CUDA, no Metal, no model downloads in v1. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
# CI: run the repo's own dependency-free gate (`make check` = clean + portable
|
||||
# CPU build + C unit suites + Python stdlib tests) on the three claimed
|
||||
# platforms. No model downloads, no CUDA, no external deps — by design (#140).
|
||||
name: check
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main, dev]
|
||||
pull_request:
|
||||
branches: [main, dev]
|
||||
|
||||
jobs:
|
||||
linux:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: make check
|
||||
run: make -C c check
|
||||
|
||||
windows:
|
||||
# The job that would have caught #68/#137 pre-merge: native MinGW-w64
|
||||
# (MSYS2/UCRT64), the exact toolchain the README's Windows port targets.
|
||||
runs-on: windows-latest
|
||||
defaults:
|
||||
run:
|
||||
shell: msys2 {0}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: msys2/setup-msys2@v2
|
||||
with:
|
||||
msystem: UCRT64
|
||||
update: false
|
||||
install: >-
|
||||
make
|
||||
mingw-w64-ucrt-x86_64-gcc
|
||||
mingw-w64-ucrt-x86_64-python
|
||||
- name: make check
|
||||
run: make -C c check
|
||||
|
||||
macos:
|
||||
# clang; libomp for the threaded path (Makefile falls back to
|
||||
# single-threaded automatically if it's ever missing).
|
||||
runs-on: macos-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: install libomp
|
||||
run: brew install libomp
|
||||
- name: make check
|
||||
run: make -C c check
|
||||
Reference in New Issue
Block a user