| name: msvc | |
| on: | |
| push: | |
| branches: [ main ] | |
| pull_request: | |
| branches: [ main ] | |
| permissions: | |
| contents: read | |
| jobs: | |
| msvc: | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - name: msvc-2025-x86 | |
| os: windows-2025 | |
| ARCH: x86 | |
| - name: msvc-2025-amd64 | |
| os: windows-2025 | |
| ARCH: amd64 | |
| name: ${{ matrix.name }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Setup Ccache | |
| uses: hendrikmuhs/ccache-action@f09c25b45002a07be2955cbe52e8cee55643f89d # v1.2.24 | |
| with: | |
| variant: sccache | |
| key: ${{ github.job }}-${{ matrix.os }}-${{ matrix.ARCH }} | |
| - name: Setup Python | |
| uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 | |
| with: | |
| python-version: '3.12' | |
| - name: Setup MSVC | |
| uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0 | |
| 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 ` | |
| -Dgpu_demo=disabled | |
| - name: Build | |
| run: meson compile -Cbuild | |
| - name: Test | |
| run: meson test --print-errorlogs --suite=harfbuzz -Cbuild |