Skip to content

CI: use lukka/get-cmake@latest #99

CI: use lukka/get-cmake@latest

CI: use lukka/get-cmake@latest #99

Workflow file for this run

name: Build
on: [push, pull_request]
jobs:
mac:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Setup
run: brew install lua box2d sdl2 sdl2_image sdl2_mixer sdl2_net sqlite zlib yajl upx
- name: Build
run: |
mkdir build
cd build
cmake .. -GXcode -DTOOLS=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$(pwd) -DCAVEPACKER=OFF -DUNITTESTS=OFF
xcodebuild build -target install -project caveproductions.xcodeproj CODE_SIGNING_REQUIRED=NO -configuration Release
../contrib/scripts/create_dmg.sh caveexpress dev $(pwd)/.. $(pwd)
- name: Upload the caveexpress artifacts
uses: actions/upload-artifact@v4
with:
name: caveexpress
path: "build/caveexpress dev.dmg"
linux:
runs-on: ubuntu-22.04
container: debian:experimental
steps:
- uses: actions/checkout@v4
- name: Setup
run: |
apt-get update
apt-get install -y cmake build-essential libsdl2-dev libsdl2-mixer-dev libsdl2-net-dev \
libyajl-dev libglm-dev libsdl2-image-dev libsqlite3-dev liblua5.4-dev zlib1g-dev \
pkg-config ninja-build libbox2d-dev=2.4*
- name: Linux
run: |
cmake -GNinja -H. -Bbuild -DCMAKE_BUILD_TYPE=Release
cmake --build build
cmake --install build --component caveexpress --prefix install-caveexpress
cmake --install build --component cavepacker --prefix install-cavepacker
- name: Test
run: |
cd build
ctest
continue-on-error: true
windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: lukka/get-cmake@latest
- name: Setup
uses: lukka/run-vcpkg@v11
id: runvcpkg
with:
vcpkgGitCommitId: 5b1214315250939257ef5d62ecdcbca18cf4fb1c
vcpkgTriplet: 'x64-windows-static'
vcpkgArguments: 'sdl2 sdl2-net sdl2-mixer sdl2-image lua sqlite3 box2d'
- name: Build
run: |
mkdir build
cd build
cmake --version
cmake .. -DCMAKE_BUILD_TYPE=Release -DTOOLS=OFF -DUNITTESTS=OFF
cmake --build .
cmake --install . --component caveexpress --prefix install-caveexpress
cmake --install . --component cavepacker --prefix install-cavepacker
- name: Upload the cavepacker artifacts
uses: actions/upload-artifact@v4
with:
name: cavepacker
path: build/cavepacker-install
- name: Upload the caveexpress artifacts
uses: actions/upload-artifact@v4
with:
name: caveexpress
path: build/caveexpress-install