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@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Setup Ccache uses: hendrikmuhs/ccache-action@ed74d11c0b343532753ecead8a951bb09bb34bc9 # v1.2.14 with: variant: sccache key: ${{ github.job }}-${{ matrix.os }}-${{ matrix.ARCH }} - name: Setup Python uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3.0 with: python-version: '3.x' - 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 - name: Build run: meson compile -Cbuild - name: Test run: meson test --print-errorlogs --suite=harfbuzz -Cbuild