f #222
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CMake | |
on: [push, pull_request] | |
jobs: | |
build: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup MSVC | |
uses: ilammy/msvc-dev-cmd@v1.13.0 | |
with: | |
arch: x86 | |
# Install CMake and Ninja | |
- name: Get CMake and Ninja | |
uses: lukka/get-cmake@v3.19.2 | |
# Setup sccache directly | |
- name: Setup sccache | |
uses: mozilla-actions/sccache-action@v0.0.9 | |
# Create CMakePresets.json for run-cmake | |
- name: Create CMake preset | |
run: | | |
@' | |
{ | |
"version": 3, | |
"configurePresets": [ | |
{ | |
"name": "default", | |
"displayName": "Default", | |
"description": "Default build with sccache", | |
"generator": "Ninja", | |
"binaryDir": "${sourceDir}/bin", | |
"cacheVariables": { | |
"CMAKE_BUILD_TYPE": "Release", | |
"CMAKE_C_COMPILER_LAUNCHER": "sccache", | |
"CMAKE_CXX_COMPILER_LAUNCHER": "sccache" | |
} | |
} | |
], | |
"buildPresets": [ | |
{ | |
"name": "default", | |
"configurePreset": "default" | |
} | |
] | |
} | |
'@ | Out-File -FilePath CMakePresets.json -Encoding utf8 | |
# Run CMake with caching, disable vcpkg | |
- name: Configure and Build | |
uses: lukka/run-cmake@v10 | |
with: | |
configurePreset: 'default' | |
buildPreset: 'default' | |
env: | |
VCPKG_ROOT: '' | |
- name: Prepare artifacts | |
run: | | |
cd bin | |
if (!(Test-Path "output_III")) { mkdir output_III } | |
if (!(Test-Path "output_VC")) { mkdir output_VC } | |
if (!(Test-Path "output_SA")) { mkdir output_SA } | |
cp TrilogyChaosMod.III.asi output_III/TrilogyChaosMod.III.asi | |
cp TrilogyChaosMod.VC.asi output_VC/TrilogyChaosMod.VC.asi | |
cp TrilogyChaosMod.SA.asi output_SA/TrilogyChaosMod.SA.asi | |
- name: Upload III | |
uses: actions/upload-artifact@v4 | |
with: | |
name: "TrilogyChaosMod.III" | |
path: bin/output_III | |
- name: Upload VC | |
uses: actions/upload-artifact@v4 | |
with: | |
name: "TrilogyChaosMod.VC" | |
path: bin/output_VC | |
- name: Upload SA | |
uses: actions/upload-artifact@v4 | |
with: | |
name: "TrilogyChaosMod.SA" | |
path: bin/output_SA |