Skip to content

v0.9.0

v0.9.0 #81

Workflow file for this run

name: Release
on:
push:
branches:
- dev
release:
types: [published]
jobs:
build:
name: ${{ matrix.preset }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-24.04
preset: linux-release
artifact: strata-linux.tar.gz
- os: windows-2022
preset: windows-release
artifact: Strata-*-win64.exe
- os: macos-14
preset: macos-release
artifact: Strata-*-Darwin.dmg
steps:
- uses: actions/checkout@v5
with:
submodules: true
- name: Install Dependencies (Linux)
if: runner.os == 'Linux'
run: |
sudo apt-get update
sudo apt-get install -y \
ninja-build \
libgl1-mesa-dev \
libxkbcommon-dev \
libxcb-cursor0 \
"^libxcb.*-dev" \
libx11-xcb-dev \
libglu1-mesa-dev \
libxrender-dev \
libxi-dev \
libxkbcommon-x11-dev \
libegl1-mesa-dev \
libsm-dev \
autoconf \
autoconf-archive \
automake \
libtool \
libltdl-dev \
pkg-config
- name: Install Dependencies (macOS)
if: runner.os == 'macOS'
run: brew install ninja autoconf autoconf-archive automake libtool pkg-config
- name: Install Dependencies (Windows)
if: runner.os == 'Windows'
run: choco install ninja
- name: Setup MSVC (Windows)
if: runner.os == 'Windows'
uses: ilammy/msvc-dev-cmd@v1
- name: Setup vcpkg
uses: lukka/run-vcpkg@v11
with:
vcpkgJsonGlob: 'vcpkg.json'
- name: Configure CMake
run: cmake --preset ${{ matrix.preset }}
- name: Build
run: cmake --build --preset ${{ matrix.preset }}
- name: Package
run: cmake --build --preset ${{ matrix.preset }} --target package
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.preset }}
path: |
build/${{ matrix.preset }}/Strata-*.*
build/${{ matrix.preset }}/*.tar.gz
- name: Upload to Release
if: github.event_name == 'release'
uses: softprops/action-gh-release@v2
with:
files: |
build/${{ matrix.preset }}/Strata-*.*
build/${{ matrix.preset }}/*.tar.gz