Skip to content

Updated Imgui to 1.90 #717

Updated Imgui to 1.90

Updated Imgui to 1.90 #717

Workflow file for this run

name: build
on:
push:
branches:
- '**'
tags-ignore:
- 'v*.*.*'
pull_request:
workflow_call:
env:
cache-version: 0
jobs:
Build:
name: ${{ matrix.os-name }} (${{ matrix.compiler }}, ${{ matrix.config }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
config: [Release]
name: [windows-msvc, windows-clang, linux-clang, linux-gcc, macos-clang]
include:
- name: windows-msvc
os: windows-latest
os-name: windows
compiler: msvc
cxx: cl
cc: cl
- name: windows-clang
os: windows-latest
os-name: windows
compiler: clang
cxx: clang-cl
cc: clang-cl
- name: linux-clang
os: ubuntu-latest
os-name: linux
compiler: clang
cxx: clang++
cc: clang
- name: linux-gcc
os: ubuntu-latest
os-name: linux
compiler: gcc
cxx: g++-10
cc: gcc-10
- name: macos-clang
os: macos-latest
os-name: macos
compiler: clang
cxx: clang++
cc: clang
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Init Submodules
uses: snickerbockers/submodules-init@v4
- name: Install dependencies
if: ${{ matrix.os-name == 'linux'}}
run: |
sudo apt-get update
sudo apt-get install -y build-essential xz-utils curl libx11-dev xorg-dev libglu1-mesa-dev
- uses: ilammy/msvc-dev-cmd@v1
if: ${{ matrix.compiler == 'msvc' }}
- name: Cache LLVM
if: ${{ matrix.compiler == 'clang' }}
id: cache-llvm
uses: actions/cache@v2
with:
path: ${{ runner.temp }}/llvm
key: llvm-15.0-${{ matrix.os-name }}
- name: Install LLVM
if: ${{ matrix.compiler == 'clang' }}
uses: KyleMayes/install-llvm-action@v1
with:
version: "15.0"
directory: ${{ runner.temp }}/llvm
cached: ${{ steps.cache-llvm.outputs.cache-hit }}
- name: Get CMake
uses: lukka/get-cmake@latest
- name: Cache Build
uses: actions/cache@v2
with:
path: Build
key: ${{ matrix.os-name }}-${{ matrix.compiler }}-${{ matrix.config }}-build-${{ secrets.VCACHE}}
- name: Configure
run: cmake -S . -B Build -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DCMAKE_C_COMPILER=${{ matrix.cc }} -DCMAKE_CXX_COMPILER=${{ matrix.cxx }} -DRIFT_LLVM_PATH='${{ runner.temp }}/rift/llvm'
- name: Build
run: cmake --build Build --config ${{ matrix.config }}
- name: Upload binaries as artifacts
uses: actions/upload-artifact@v2
if: ${{ matrix.config == 'Release' && matrix.compiler == 'clang' }} # Only clang artifacts are stored
with:
name: rift-${{ matrix.os-name }}
path: Build/Bin
- name: Run Tests
working-directory: ./Build
run: ctest --output-on-failure -j2 -C ${{ matrix.config }}