|
|
|
name: msvc
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches: [ main ]
|
|
|
|
pull_request:
|
|
|
|
branches: [ main ]
|
|
|
|
|
|
|
|
permissions:
|
|
|
|
contents: read
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
msvc:
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
|
|
|
|
strategy:
|
|
|
|
fail-fast: false
|
|
|
|
matrix:
|
|
|
|
os: [windows-2019, windows-latest]
|
|
|
|
include:
|
|
|
|
- name: msvc-2019-x86
|
|
|
|
os: windows-2019
|
|
|
|
ARCH: x86
|
|
|
|
- name: msvc-2019-amd64
|
|
|
|
os: windows-latest
|
|
|
|
ARCH: amd64
|
|
|
|
name: ${{ matrix.name }}
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- name: Checkout
|
|
|
|
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
|
|
|
|
- name: Setup Ccache
|
|
|
|
uses: hendrikmuhs/ccache-action@ca3acd2731eef11f1572ccb126356c2f9298d35e # v1.2.9
|
|
|
|
with:
|
|
|
|
variant: sccache
|
|
|
|
key: ${{ github.job }}-${{ matrix.os }}-${{ matrix.ARCH }}
|
|
|
|
- name: Setup Python
|
|
|
|
uses: actions/setup-python@61a6322f88396a6271a6ee3565807d608ecaddd1 # v4.7.0
|
|
|
|
with:
|
|
|
|
python-version: '3.x'
|
|
|
|
- name: Setup MSVC
|
|
|
|
uses: ilammy/msvc-dev-cmd@cec98b9d092141f74527d0afa6feb2af698cfe89 # v1.12.1
|
|
|
|
with:
|
|
|
|
arch : ${{ matrix.ARCH }}
|
|
|
|
- name: Install Python Dependencies
|
|
|
|
run: |
|
|
|
|
pip3 install -r .ci/requirements.txt --require-hashes
|
|
|
|
- name: Setup Meson
|
|
|
|
run: |
|
|
|
|
sccache --version
|
|
|
|
meson setup build `
|
|
|
|
--wrap-mode=forcefallback `
|
|
|
|
--buildtype=release `
|
|
|
|
-Dglib=enabled `
|
|
|
|
-Dfreetype=enabled `
|
|
|
|
-Dgdi=enabled `
|
|
|
|
-Ddirectwrite=enabled
|
|
|
|
- name: Build
|
|
|
|
run: meson compile -Cbuild
|
|
|
|
- name: Test
|
|
|
|
run: meson test --print-errorlogs --suite=harfbuzz -Cbuild
|