Skip to content

Update the CI

Update the CI #73

Workflow file for this run

# © SPIRV-Interpreter @ https://github.com/mmoult/SPIRV-Interpreter
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at https://mozilla.org/MPL/2.0/.
name: CMake on multiple platforms
on:
push:
# "actions" is the testing branch
branches: [ "master", "actions" ]
pull_request:
branches: [ "master" ]
jobs:
build-and-test:
runs-on: ${{ matrix.os }}
strategy:
# Set fail-fast to false to ensure that feedback is delivered for all matrix combinations.
fail-fast: true
matrix:
compiler:
- llvm
os:
- ubuntu-latest
- windows-latest
#- macos-latest
build_type: [ Debug ]
include:
- compiler: "gcc-14"
os: "ubuntu-latest"
build_type: Debug
- compiler: "msvc"
os: "windows-latest"
build_type: Debug
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: 'true'
- name: Setup Cpp (C++ / C)
uses: aminya/[email protected]
with:
compiler: ${{ matrix.compiler }}
cmake: true
ninja: true
- name: Set reusable strings
# Turn repeated input strings (such as the build output directory) into step outputs. These step outputs can be
# used throughout the workflow file.
id: strings
shell: bash
run: |
echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT"
- name: Configure
# Configure CMake in a 'build' subdirectory.
run: >
cmake
-B ${{ steps.strings.outputs.build-output-dir }}
-S ${{ github.workspace }}
-G Ninja
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }}
-DBUILD_TESTING=ON
- name: Build
# Build your program with the given configuration.
run: cmake --build ${{ steps.strings.outputs.build-output-dir }}
- name: Tests Unit
working-directory: ${{ steps.strings.outputs.build-output-dir }}/test
run: ./tests
- name: Tests Integration
working-directory: ${{ github.workspace }}/test
run: ./example-runner.py