Skip to content

Updated windows-cmake.yml #4

Updated windows-cmake.yml

Updated windows-cmake.yml #4

Workflow file for this run

name: windows-builds
# Trigger on push to any branch and manual runs
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 # Fetch full history for tags if needed
- name: βš™οΈ Install Ninja build system
run: choco install ninja --no-progress
shell: powershell
- 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: πŸ› οΈ Configure CMake (Ninja + MSVC)
shell: pwsh
run: |
# Initialize MSVC environment variables for 64-bit architecture
& "${env:ProgramFiles(x86)}\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" amd64
# Run cmake with Ninja generator and MSVC toolchain
cmake -S . -B build -G Ninja -A x64 `
-DCMAKE_PREFIX_PATH="${{ env.QT_DIR }}\Qt\${{ env.QT_VERSION }}\msvc2019_64" `
-DCMAKE_INSTALL_PREFIX="${{ github.workspace }}\install" `
-DCMAKE_BUILD_TYPE=Release
- name: πŸ”¨ Build with Ninja + MSVC
shell: pwsh
run: |
# Initialize MSVC environment again for build step
& "${env:ProgramFiles(x86)}\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" amd64
cmake --build build
- name: πŸ“¦ Install built files
shell: pwsh
run: |
# Initialize MSVC environment again for install step
& "${env:ProgramFiles(x86)}\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" amd64
cmake --install build
build_windows_mingw:
name: Build with MinGW and CMake
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 and MinGW toolchain
run: |
choco install ninja --no-progress
choco install mingw --no-progress
shell: powershell
- name: βž• Add MinGW to system PATH
run: echo "C:\ProgramData\chocolatey\lib\mingw\tools\install\mingw64\bin" >> $env:GITHUB_PATH
shell: powershell
- name: πŸ“₯ Install Qt for MinGW
uses: jurplel/install-qt-action@v3
with:
version: ${{ env.QT_VERSION }}
target: desktop
host: windows
arch: mingw_64
dir: ${{ env.QT_DIR }}
setup-python: false
- 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 Ninja
- name: πŸ”¨ Build with CMake (MinGW)
shell: powershell
run: cmake --build build-mingw
- name: πŸ“¦ Install built files (MinGW)
shell: powershell
run: cmake --install build-mingw