|
|
|
name: mingw/cygwin
|
|
|
|
|
|
|
|
on: [push, pull_request]
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
MSys:
|
|
|
|
runs-on: windows-latest
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
sys: [mingw32, mingw64, ucrt64, clang64]
|
|
|
|
name: MSys - ${{ matrix.sys }}
|
|
|
|
defaults:
|
|
|
|
run:
|
|
|
|
shell: msys2 {0}
|
|
|
|
steps:
|
|
|
|
- name: Checkout
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
fetch-depth: 0
|
|
|
|
- name: Setup MSYS2
|
|
|
|
uses: msys2/setup-msys2@v2
|
|
|
|
with:
|
|
|
|
msystem: ${{ matrix.sys }}
|
|
|
|
update: true
|
|
|
|
install: >-
|
|
|
|
make
|
|
|
|
pacboy: >-
|
|
|
|
toolchain:p
|
|
|
|
cmake:p
|
|
|
|
- name: Configure
|
|
|
|
run: |
|
|
|
|
cmake -G"Unix Makefiles" \
|
|
|
|
-S . \
|
|
|
|
-B build \
|
|
|
|
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
|
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
|
|
-DMINIZIP_ENABLE_BZIP2=ON
|
|
|
|
- name: Build
|
|
|
|
run: cmake --build build --config Release
|
|
|
|
- name: Run tests
|
|
|
|
run: ctest --output-on-failure --test-dir build -C Release
|
|
|
|
|
|
|
|
cygwin:
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
runs-on: windows-latest
|
|
|
|
defaults:
|
|
|
|
run:
|
|
|
|
shell: C:\cygwin\bin\bash.exe --login -o igncr '{0}'
|
|
|
|
name: Cygwin
|
|
|
|
steps:
|
|
|
|
- name: Checkout
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
fetch-depth: 0
|
|
|
|
- name: Setup cygwin
|
|
|
|
uses: cygwin/cygwin-install-action@master
|
|
|
|
with:
|
|
|
|
packages: >-
|
|
|
|
cmake
|
|
|
|
cygwin-devel
|
|
|
|
gcc-core
|
|
|
|
gcc-g++
|
|
|
|
ninja
|
|
|
|
- name: Configure
|
|
|
|
run: |
|
|
|
|
cmake /cygdrive/d/a/zlib/zlib \
|
|
|
|
-B build \
|
|
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
|
|
-DZLIB_BUILD_MINIZIP=ON \
|
|
|
|
-DMINIZIP_ENABLE_BZIP2=OFF
|
|
|
|
-G Ninja
|
|
|
|
- name: Build
|
|
|
|
run: cmake --build build --config Release -v -j1
|
|
|
|
- name: Run tests
|
|
|
|
run: ctest --output-on-failure --test-dir build -C Release
|