ci/win: test mingw64|msys2 and manual|pkgbuild

This commit is contained in:
umarcor 2020-12-01 05:12:06 +01:00
parent ed27dbf608
commit 0fdffe624d
1 changed files with 21 additions and 15 deletions

View File

@ -42,35 +42,41 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
include: [ shell: [
mingw64,
msys2
]
build: [
manual,
pkgbuild
]
task: [
{ {
label: '🧊 Windows', label: '🧊',
msystem: MINGW64, msystem: MINGW64,
arch: x86_64, arch: x86_64,
release: false, release: false,
shell: mingw64,
}, },
{ {
label: '🟪 MSYS2', label: '🟪',
msystem: MINGW64, msystem: MINGW64,
arch: x86_64, arch: x86_64,
release: true, release: true,
shell: msys2,
}, },
{ {
label: '🟪 MSYS2', label: '🟪',
msystem: MINGW32, msystem: MINGW32,
arch: i686, arch: i686,
release: true, release: true,
shell: msys2,
} }
] ]
name: ${{ matrix.label }} · ${{ matrix.msystem}} name: ${{ matrix.task.label }} ${{ matrix.task.msystem}} · ${{ matrix.shell }} · ${{ matrix.build }}
defaults: defaults:
run: run:
shell: ${{ matrix.shell }} {0} shell: ${{ matrix.shell }} {0}
env: env:
MINGW_INSTALLS: ${{ matrix.msystem }} MINGW_INSTALLS: ${{ matrix.task.msystem }}
MSYSTEM: ${{ matrix.task.msystem }}
steps: steps:
- name: Setup - name: Setup
@ -83,16 +89,16 @@ jobs:
- uses: msys2/setup-msys2@v2 - uses: msys2/setup-msys2@v2
with: with:
release: ${{ matrix.release }} release: ${{ matrix.task.release }}
msystem: ${{ matrix.msystem }} msystem: ${{ matrix.task.msystem }}
install: > install: >
git git
base-devel base-devel
mingw-w64-${{ matrix.arch }}-toolchain mingw-w64-${{ matrix.task.arch }}-toolchain
update: true update: true
- name: 🧊 Build, install and check - name: 🧊 Build, install and check
if: matrix.shell == 'mingw64' if: matrix.build == 'manual'
run: | run: |
wrap() { echo "::group::$@"; "$@"; echo '::endgroup::'; } wrap() { echo "::group::$@"; "$@"; echo '::endgroup::'; }
wrap ./autoconf.sh wrap ./autoconf.sh
@ -102,13 +108,13 @@ jobs:
wrap make check wrap make check
- name: 🟪 Build and check - name: 🟪 Build and check
if: matrix.shell == 'msys2' if: matrix.build == 'pkgbuild'
run: | run: |
cd msys2 cd msys2
makepkg-mingw --noconfirm --noprogressbar -sCLf makepkg-mingw --noconfirm --noprogressbar -sCLf
- name: 🟪 Install - name: 🟪 Install
if: matrix.shell == 'msys2' if: matrix.build == 'pkgbuild'
run: pacman -U --noconfirm msys2/*.zst run: pacman -U --noconfirm msys2/*.zst
- name: Test - name: Test