103 lines
2.6 KiB
YAML
103 lines
2.6 KiB
YAML
name: windows-builds
|
||
|
||
on:
|
||
push:
|
||
workflow_dispatch:
|
||
|
||
jobs:
|
||
build_windows_msvc:
|
||
name: Build with MSVC and Ninja
|
||
runs-on: windows-2022
|
||
|
||
env:
|
||
QT_VERSION: 6.4.2
|
||
QT_DIR: ${{ github.workspace }}\Qt
|
||
|
||
steps:
|
||
- name: 📦 Checkout source code
|
||
uses: actions/checkout@v4
|
||
with:
|
||
fetch-depth: 0
|
||
|
||
- name: ⚙️ Install Ninja build system
|
||
run: choco install ninja --no-progress
|
||
|
||
- name: 📥 Install Qt for MSVC
|
||
uses: jurplel/install-qt-action@v3
|
||
with:
|
||
version: ${{ env.QT_VERSION }}
|
||
target: desktop
|
||
host: windows
|
||
arch: win64_msvc2019_64
|
||
dir: ${{ env.QT_DIR }}
|
||
setup-python: false
|
||
|
||
- name: 🏗️ Setup MSVC Developer Environment
|
||
uses: TheMrMilchmann/setup-msvc-dev@v3
|
||
with:
|
||
arch: x64
|
||
|
||
- name: 🛠️ Configure CMake with Ninja + MSVC
|
||
run: |
|
||
cmake -S . -B build -G Ninja `
|
||
-DCMAKE_PREFIX_PATH="${{ env.QT_DIR }}\Qt\${{ env.QT_VERSION }}\msvc2019_64" `
|
||
-DCMAKE_INSTALL_PREFIX="${{ github.workspace }}\install" `
|
||
-DCMAKE_BUILD_TYPE=Release
|
||
shell: powershell
|
||
|
||
- name: 🔨 Build with Ninja + MSVC
|
||
run: cmake --build build
|
||
shell: powershell
|
||
|
||
- name: 📦 Install built files
|
||
run: cmake --install build
|
||
shell: powershell
|
||
|
||
build_windows_mingw:
|
||
name: Build with Qt's MinGW and CMake (no Ninja)
|
||
runs-on: windows-2022
|
||
|
||
env:
|
||
QT_VERSION: 6.8.3
|
||
QT_DIR: ${{ github.workspace }}\Qt
|
||
|
||
steps:
|
||
- name: 📦 Checkout source code
|
||
uses: actions/checkout@v4
|
||
with:
|
||
fetch-depth: 0
|
||
|
||
- name: 📥 Install Qt + MinGW
|
||
uses: jurplel/install-qt-action@v4
|
||
with:
|
||
aqtversion: '==3.1.19'
|
||
version: ${{ env.QT_VERSION }}
|
||
target: desktop
|
||
host: windows
|
||
arch: win64_mingw
|
||
dir: ${{ env.QT_DIR }}
|
||
tools: 'tools_mingw1310'
|
||
setup-python: false
|
||
|
||
- name: ➕ Add Qt-bundled MinGW to PATH
|
||
shell: powershell
|
||
run: |
|
||
echo "${{ env.QT_DIR }}\Tools\mingw1310_64\bin" >> $env:GITHUB_PATH
|
||
|
||
- name: 🛠️ Configure CMake (MinGW)
|
||
shell: powershell
|
||
run: |
|
||
cmake -S . -B build-mingw `
|
||
-DCMAKE_PREFIX_PATH="${{ env.QT_DIR }}\Qt\${{ env.QT_VERSION }}\mingw_64" `
|
||
-DCMAKE_INSTALL_PREFIX=${{ github.workspace }}\install `
|
||
-DCMAKE_BUILD_TYPE=Release `
|
||
-G "MinGW Makefiles"
|
||
|
||
- name: 🔨 Build with CMake (MinGW)
|
||
shell: powershell
|
||
run: cmake --build build-mingw -- -j2
|
||
|
||
- name: 📦 Install built files (MinGW)
|
||
shell: powershell
|
||
run: cmake --install build-mingw
|