Skip to content

Bump external/fmt from c95722a to 2cb3b7c #1801

Bump external/fmt from c95722a to 2cb3b7c

Bump external/fmt from c95722a to 2cb3b7c #1801

Workflow file for this run

name: Linux
on:
push:
paths:
# Workflow file itself
- '.github/workflows/Linux.yml'
# C++ files
- '**.cpp'
- '**.hpp'
# CMake files
- '**.cmake'
- '**.txt'
# Script files
- '**.sh'
branches-ignore:
- 'dependabot/**'
pull_request:
branches:
- main
- develop
release:
types: [published]
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
CMAKE_C_COMPILER_LAUNCHER: "ccache"
CMAKE_CXX_COMPILER_LAUNCHER: "ccache"
jobs:
Build:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
compiler:
- "gcc-14"
- "clang-18"
build_type:
- "Debug"
- "Release"
dynamic_test:
- "none"
- "asan"
- "lsan"
- "tsan"
- "ubsan"
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup ccache
uses: hendrikmuhs/ccache-action@v1
with:
key: ${{ runner.os }}-${{ matrix.compiler }}
- name: Setup Environment
run: |
external/Phi/scripts/ci/SetupEnvironment.sh
# Remove detect invalid pointer pair
echo "ASAN_OPTIONS=quarantine_size_mb=1024:redzone=256:strict_string_checks=1:detect_odr_violation=2:detect_stack_use_after_return=1:check_initialization_order=1:strict_init_order=1:detect_leaks=1:print_stats=1:use_odr_indicator=1:strict_memcmp=1:print_scariness=1:handle_abort=1:symbolize=1:handle_segv=1:handle_sigill=1:allocator_release_to_os_interval_ms=500:handle_sigfpe=1:handle_sigbus=1:alloc_dealloc_mismatch=1:check_malloc_usable_size=1:abort_on_error=1" >> "$GITHUB_ENV"
- name: Install compiler
run: external/Phi/scripts/ci/InstallTools.sh ${{ matrix.compiler }} ninja
- name: Install dependencies
run: sudo scripts/ci/InstallDependencies.sh
- name: Configure build directory
run: |
mkdir build -p
cd build
cmake -DCMAKE_AR=$AR_EXECUTABLE -DCMAKE_BUILD_TYPE:STRING=${{ matrix.build_type }} -DCMAKE_CXX_FLAGS:STRING="-DDLXEMU_VERIFY_UNDO_REDO -DDLXEMU_VERIFY_COLUMN" -DDLXEMU_ENABLE_ASAN:BOOL=${{ matrix.dynamic_test == 'asan' }} -DDLXEMU_ENABLE_LSAN:BOOL=${{ matrix.dynamic_test == 'lsan' }} -DDLXEMU_ENABLE_TSAN:BOOL=${{ matrix.dynamic_test == 'tsan' }} -DDLXEMU_ENABLE_UBSAN:BOOL=${{ matrix.dynamic_test == 'ubsan' }} ..
- name: Build
working-directory: ./build
run: cmake --build . --config ${{ matrix.build_type }}
- name: Run tests
working-directory: ./build
run: ctest . -C ${{ matrix.build_type }}