Skip to content

[tools][builder][loader] Add pragma once for SCsLoader #75

[tools][builder][loader] Add pragma once for SCsLoader

[tools][builder][loader] Add pragma once for SCsLoader #75

Workflow file for this run

name: Tests (native)
on:
pull_request:
branches: [main]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
run_tests:
name: ${{ matrix.os }}, ${{ matrix.build_type }}, ${{ matrix.config.cxx }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-15, ubuntu-22.04, ubuntu-24.04]
build_type:
- { name: "Release", configure_preset: "release-with-tests", build_preset: "release" }
- { name: "Debug", configure_preset: "debug", build_preset: "debug" }
config:
- { cc: "gcc", cxx: "g++" }
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: apt cache
uses: actions/cache@v4
with:
path: |
/var/cache/apt/
/var/lib/apt/
key: apt-${{ runner.os }}-dev-${{ hashFiles('**/install_deps_ubuntu.sh') }}
- name: Install dependencies
run: |
scripts/install_dependencies.sh --dev
- name: Restore build caches
uses: actions/cache@v4
with:
path: ~/.ccache
key: ${{ github.job }}-${{ matrix.os }}-${{ matrix.config.cxx }}-${{ matrix.build_type.name }}
- name: Build
id: run_cmake
env:
CC: ${{ matrix.config.cc }}
CXX: ${{ matrix.config.cxx }}
run: cmake --preset ${{ matrix.build_type.configure_preset }} && cmake --build --preset ${{ matrix.build_type.build_preset }}
- name: Run tests
id: run_tests
run: cd build/${{ matrix.build_type.name }} && ctest -C ${{ matrix.build_type.name }} -V
- name: Run sc-machine
id: run_sc_machine
run: |
mkdir kb
build/${{ matrix.build_type.name }}/bin/sc-builder -i kb -o kb.bin --clear
build/${{ matrix.build_type.name }}/bin/sc-machine -c sc-machine.ini -e build/${{ matrix.build_type.name }}/lib/extensions -s kb.bin -t