Skip to content

[ufunction] allow bind to copies of src funcs #298

[ufunction] allow bind to copies of src funcs

[ufunction] allow bind to copies of src funcs #298

Workflow file for this run

name: Build
on: [push]
jobs:
build-and-test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
preset: [debug, release]
steps:
- name: Clone
uses: actions/checkout@v4
- name: Install Ninja
uses: seanmiddleditch/gha-setup-ninja@v5
- name: VC Vars
# Setup vcvars on Windows
# MSVC's address sanitizer attaches dependencies to several DLLs which are not in PATH
# vcvars will add them to PATH and allow msvc asan executables to run
if: matrix.os == 'windows-latest'
uses: ilammy/msvc-dev-cmd@v1
- name: Configure ASAN
run: cmake --preset=${{ matrix.preset }}-asan -B asan
- name: Build ASAN
run: cmake --build asan
- name: Test ASAN
run: ctest --test-dir asan --output-on-failure
env:
UBSAN_OPTIONS: halt_on_error=1
- name: Configure TSAN
run: cmake --preset=${{ matrix.preset }}-tsan -B tsan
- name: Build TSAN
run: cmake --build tsan
- name: Test TSAN
run: ctest --test-dir tsan -L tsan --output-on-failure