forked from boostorg/regex
update ci to include ubsan and asan
This commit is contained in:
54
.github/workflows/ci.yml
vendored
54
.github/workflows/ci.yml
vendored
@ -13,6 +13,10 @@ on:
|
|||||||
pull_request:
|
pull_request:
|
||||||
release:
|
release:
|
||||||
types: [published, created, edited]
|
types: [published, created, edited]
|
||||||
|
|
||||||
|
env:
|
||||||
|
UBSAN_OPTIONS: print_stacktrace=1
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
ubuntu-jammy:
|
ubuntu-jammy:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
@ -60,7 +64,7 @@ jobs:
|
|||||||
run: ../../../b2 print_config_info toolset=$TOOLSET
|
run: ../../../b2 print_config_info toolset=$TOOLSET
|
||||||
working-directory: ../boost-root/libs/config/test
|
working-directory: ../boost-root/libs/config/test
|
||||||
- name: Test
|
- name: Test
|
||||||
run: ../../../b2 toolset=$TOOLSET
|
run: ../../../b2 toolset=$TOOLSET variant=debug,release ${{ startsWith(matrix.compiler, 'g++-13') && 'address-sanitizer=norecover undefined-sanitizer=norecover' || '' }}
|
||||||
working-directory: ../boost-root/libs/regex/test
|
working-directory: ../boost-root/libs/regex/test
|
||||||
ubuntu-jammy-standalone:
|
ubuntu-jammy-standalone:
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
@ -170,6 +174,54 @@ jobs:
|
|||||||
- name: Test
|
- name: Test
|
||||||
run: CXX=clang++-18 LIBRARIES="-licuuc -licudata -licui18n" ./test_clang.sh
|
run: CXX=clang++-18 LIBRARIES="-licuuc -licudata -licui18n" ./test_clang.sh
|
||||||
working-directory: ../boost-root/libs/regex/test/module
|
working-directory: ../boost-root/libs/regex/test/module
|
||||||
|
ubuntu-noble-clang:
|
||||||
|
runs-on: ubuntu-24.04
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
compiler: [ clang++-16, clang++-17, clang++-18 ]
|
||||||
|
standard: [ c++11, c++14, c++17, c++20 ]
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
with:
|
||||||
|
fetch-depth: '0'
|
||||||
|
- uses: mstachniuk/ci-skip@v1
|
||||||
|
with:
|
||||||
|
commit-filter: '[skip ci];[ci skip];[CI SKIP];[SKIP CI];***CI SKIP***;***SKIP CI***;[windows];[Windows];[WINDOWS];[apple];[Apple];[APPLE]'
|
||||||
|
commit-filter-separator: ';'
|
||||||
|
fail-fast: true
|
||||||
|
- name: Set TOOLSET
|
||||||
|
run: echo ${{ matrix.compiler }} | awk '/^g/ { print "TOOLSET=gcc" } /^clang/ { print "TOOLSET=clang" }' >> $GITHUB_ENV
|
||||||
|
- name: Add repository
|
||||||
|
run: sudo apt-add-repository -y "ppa:ubuntu-toolchain-r/test"
|
||||||
|
- name: Install packages
|
||||||
|
run: sudo apt install clang-16 clang-17 clang-18
|
||||||
|
- name: Checkout main boost
|
||||||
|
run: git clone -b develop --depth 1 https://github.com/boostorg/boost.git ../boost-root
|
||||||
|
- name: Update tools/boostdep
|
||||||
|
run: git submodule update --init tools/boostdep
|
||||||
|
working-directory: ../boost-root
|
||||||
|
- name: Copy files
|
||||||
|
run: cp -r $GITHUB_WORKSPACE/* libs/regex
|
||||||
|
working-directory: ../boost-root
|
||||||
|
- name: Install deps
|
||||||
|
run: python tools/boostdep/depinst/depinst.py -I example -g "--jobs 3" regex
|
||||||
|
working-directory: ../boost-root
|
||||||
|
- name: Bootstrap
|
||||||
|
run: ./bootstrap.sh
|
||||||
|
working-directory: ../boost-root
|
||||||
|
- name: Generate headers
|
||||||
|
run: ./b2 headers
|
||||||
|
working-directory: ../boost-root
|
||||||
|
- name: Generate user config
|
||||||
|
run: 'echo "using $TOOLSET : : ${{ matrix.compiler }} : <cxxflags>-std=${{ matrix.standard }} ;" > ~/user-config.jam'
|
||||||
|
working-directory: ../boost-root
|
||||||
|
- name: Config info
|
||||||
|
run: ../../../b2 print_config_info toolset=$TOOLSET
|
||||||
|
working-directory: ../boost-root/libs/config/test
|
||||||
|
- name: Test
|
||||||
|
run: ../../../b2 toolset=$TOOLSET define=CI_SUPPRESS_KNOWN_ISSUES define=SLOW_COMPILER variant=debug,release ${{ startsWith(matrix.compiler, 'clang++-18') && 'address-sanitizer=norecover undefined-sanitizer=norecover' || '' }}
|
||||||
|
working-directory: ../boost-root/libs/regex/test
|
||||||
macos:
|
macos:
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
strategy:
|
strategy:
|
||||||
|
Reference in New Issue
Block a user