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@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 - name: Setup Ccache uses: hendrikmuhs/ccache-action@6d1841ec156c39a52b1b23a810da917ab98da1f4 # v1.2.10 with: variant: sccache key: ${{ github.job }}-${{ matrix.os }}-${{ matrix.ARCH }} - name: Setup Python uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.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