56 lines
1.9 KiB
YAML
56 lines
1.9 KiB
YAML
name: Visual Studio Build
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
build:
|
|
strategy:
|
|
matrix:
|
|
msvc_arch: ['x64', 'amd64_x86', 'amd64_arm64']
|
|
# TODO: Re-add "Visual Studio 17 2022" once it's working.
|
|
cmake_generator: ['Ninja']
|
|
build_type: [release, debug]
|
|
build_options: [default, link_off, translations_only]
|
|
include:
|
|
- cmake_build: '-DCMAKE_BUILD_TYPE=Release'
|
|
build_type: release
|
|
- cmake_build: '-DCMAKE_BUILD_TYPE=Debug'
|
|
build_type: debug
|
|
- cmake_options: '-DENABLE_LINK=OFF'
|
|
build_options: link_off
|
|
- cmake_options: '-DTRANSLATIONS_ONLY=ON'
|
|
build_options: translations_only
|
|
- cmake_vcpkg_triplet: 'x64-windows-static'
|
|
msvc_arch: x64
|
|
- cmake_vcpkg_triplet: 'x86-windows-static'
|
|
msvc_arch: amd64_x86
|
|
- cmake_vcpkg_triplet: 'arm64-windows-static'
|
|
msvc_arch: amd64_arm64
|
|
exclude:
|
|
# Exclude debug/translations_only build
|
|
- build_type: debug
|
|
build_options: translations_only
|
|
- build_type: release
|
|
build_options: translations_only
|
|
msvc_arch: amd64_x86
|
|
- build_type: release
|
|
build_options: translations_only
|
|
msvc_arch: amd64_arm64
|
|
runs-on: windows-latest
|
|
steps:
|
|
- name: Checkout the code
|
|
uses: actions/checkout@v4
|
|
with:
|
|
submodules: recursive
|
|
|
|
- name: Prepare Visual Studio environment
|
|
uses: ilammy/msvc-dev-cmd@v1.13.0
|
|
with:
|
|
arch: ${{ matrix.msvc_arch }}
|
|
|
|
- name: Configure
|
|
run: >-
|
|
cmake -B build -G ${{ matrix.cmake_generator }} -DVCPKG_TARGET_TRIPLET=${{ matrix.cmake_vcpkg_triplet }} ${{ matrix.cmake_build }} ${{ matrix.cmake_options }}
|
|
|
|
- name: Build
|
|
run: cmake --build build
|