Skip to content

Revise README and add new docs #10

Revise README and add new docs

Revise README and add new docs #10

Workflow file for this run

name: pr-ci
on:
pull_request:
push:
branches:
- main
workflow_dispatch:
permissions:
contents: read
concurrency:
group: pr-ci-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
build-test:
name: build-test-${{ matrix.os }}
runs-on: ${{ matrix.os }}
timeout-minutes: 45
strategy:
fail-fast: false
matrix:
os: [windows-latest, macos-latest, ubuntu-latest]
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Python
uses: actions/setup-python@v6
with:
python-version: "3.x"
- name: Install Meson + Ninja
shell: bash
run: python -m pip install --upgrade pip meson ninja
- name: Setup MSVC
if: matrix.os == 'windows-latest'
uses: TheMrMilchmann/setup-msvc-dev@v4
with:
arch: x64
- name: Install Qt
uses: jurplel/install-qt-action@v4
with:
version: "6.10.1"
arch: ${{ matrix.os == 'windows-latest' && 'win64_msvc2022_64' || matrix.os == 'macos-latest' && 'clang_64' || 'linux_gcc_64' }}
modules: qtmultimedia qtimageformats
- name: Configure macOS Runtime Paths
if: matrix.os == 'macos-latest'
shell: bash
run: |
echo "DYLD_FRAMEWORK_PATH=${QT_ROOT_DIR}/lib" >> "$GITHUB_ENV"
echo "DYLD_LIBRARY_PATH=${QT_ROOT_DIR}/lib" >> "$GITHUB_ENV"
echo "DYLD_FALLBACK_FRAMEWORK_PATH=${QT_ROOT_DIR}/lib" >> "$GITHUB_ENV"
- name: Configure (Windows)
if: matrix.os == 'windows-latest'
shell: pwsh
env:
CC: cl
CXX: cl
run: >
meson setup builddir
--backend ninja
--buildtype=debugoptimized
-Dvulkan_preview=disabled
-Dgithub_repo=${{ github.repository }}
-Dupdate_channel=dev
- name: Configure (Unix)
if: matrix.os != 'windows-latest'
shell: bash
run: >
meson setup builddir
--backend ninja
--buildtype=debugoptimized
-Dvulkan_preview=disabled
-Dgithub_repo=${{ github.repository }}
-Dupdate_channel=dev
- name: Build (Windows)
if: matrix.os == 'windows-latest'
shell: pwsh
run: meson compile -C builddir
- name: Build (Unix)
if: matrix.os != 'windows-latest'
shell: bash
run: meson compile -C builddir
- name: Run Support Matrix Fixtures (Windows)
if: matrix.os == 'windows-latest'
shell: pwsh
run: meson test -C builddir support-matrix-fixtures --print-errorlogs
- name: Run Support Matrix Fixtures (Unix)
if: matrix.os != 'windows-latest'
shell: bash
run: meson test -C builddir support-matrix-fixtures --print-errorlogs
- name: Run Meson Tests (Windows)
if: matrix.os == 'windows-latest'
shell: pwsh
run: meson test -C builddir --print-errorlogs
- name: Run Meson Tests (Unix)
if: matrix.os != 'windows-latest'
shell: bash
run: meson test -C builddir --print-errorlogs
- name: Validate CLI Binary (Windows)
if: matrix.os == 'windows-latest'
shell: pwsh
run: |
python scripts/validate_build.py `
--binary "builddir/src/pakfu.exe" `
--expected-version "$((Get-Content VERSION -Raw).Trim())"
- name: Validate CLI Binary (Unix)
if: matrix.os != 'windows-latest'
shell: bash
run: |
python scripts/validate_build.py \
--binary "builddir/src/pakfu" \
--expected-version "$(cat VERSION)"