Skip to content

imgui renderer example #2

imgui renderer example

imgui renderer example #2

name: ci
on:
pull_request:
push:
branches:
- master
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
jobs:
Build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: windows-latest
generator: Ninja
compiler: msvc
- os: ubuntu-latest
generator: Ninja
compiler: g++
# - os: ubuntu-latest
# generator: Ninja
# compiler: em++
steps:
- uses: actions/[email protected]
- uses: ilammy/[email protected]
- name: Setup Linux
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update -y
sudo apt-get install ninja-build libgl1-mesa-dev libegl1-mesa-dev xorg-dev libglu1-mesa-dev
- name: Setup emsdk
if: matrix.compiler == 'em++'
uses: mymindstorm/setup-emsdk@v14
with:
# Make sure to set a version number!
version: 3.1.51
# This is the name of the cache folder.
# The cache folder will be placed in the build directory,
# so make sure it doesn't conflict with anything!
actions-cache-folder: 'emsdk-cache'
- name: Verify emsdk
if: matrix.compiler == 'em++'
run: emcc -v
- name: Set up cache
uses: actions/[email protected]
with:
path: |
~/cpm-cache
key: ${{ runner.os }}-cpm-${{ hashFiles('**/') }}
restore-keys: |
${{ runner.os }}-cpm-
- name: Configure CMake
if: matrix.compiler != 'em++'
run: |
cmake -DCPM_SOURCE_CACHE=~/cpm-cache -S . -B ./build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -G "Ninja"
- name: Configure Emscripten CMake
if: matrix.compiler == 'em++'
run: |
emcmake cmake -DCPM_SOURCE_CACHE=~/cpm-cache -S . -B ./build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -G "Ninja"
- name: Build CMake
# Execute the build. You can specify a specific target with "--target <NAME>"
run: |
cmake --build ./build -j 14
#- name: Test
# working-directory: ${{github.workspace}}/build
# # Execute tests defined by the CMake configuration.
# # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
# run: ctest -C ${{env.BUILD_TYPE}}