etl/.github/workflows/clang.yml
2023-03-30 12:17:30 +01:00

153 lines
4.0 KiB
YAML

name: clang
on:
push:
branches: [ master, development]
pull_request:
branches: [ master ]
jobs:
build-clang-linux-stl:
name: Clang Linux - STL
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-22.04]
steps:
- uses: actions/checkout@v3
- name: Build
run: |
sudo apt-get update
sudo apt-get install -y "clang" "lldb" "lld" "clang-format"
export CC=clang
export CXX=clang++
export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0
git fetch --tags
cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./
clang --version
make
- name: Run tests
run: ./test/etl_tests
build-clang-linux-no-stl:
name: Clang Linux - No STL
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-22.04]
steps:
- uses: actions/checkout@v3
- name: Build
run: |
sudo apt-get update
sudo apt-get install -y "clang" "lldb" "lld" "clang-format"
export CC=clang
export CXX=clang++
export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0
git fetch --tags
cmake -DBUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./
clang --version
make
- name: Run tests
run: ./test/etl_tests
build-clang-linux-stl-force-cpp03:
name: Clang Linux - STL - Force C++03
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-22.04]
steps:
- uses: actions/checkout@v3
- name: Build
run: |
sudo apt-get update
sudo apt-get install -y "clang" "lldb" "lld" "clang-format"
export CC=clang
export CXX=clang++
export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0
git fetch --tags
cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=20 ./
clang --version
make
- name: Run tests
run: ./test/etl_tests
build-clang-10-osx-stl:
name: Clang-10 OSX - STL
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-11]
steps:
- uses: actions/checkout@v3
- name: Build
run: |
export CC=clang
export CXX=clang++
export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0
git fetch --tags
cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./
clang --version
make
- name: Run tests
run: ./test/etl_tests
build-clang-10-osx-no-stl:
name: Clang-10 OSX - No STL
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-11]
steps:
- uses: actions/checkout@v3
- name: Build
run: |
export CC=clang
export CXX=clang++
export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0
git fetch --tags
cmake -D BUILD_TESTS=ON -DNO_STL=ON -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=OFF -DETL_CXX_STANDARD=20 ./
clang --version
make
- name: Run tests
run: ./test/etl_tests
build-clang-10-osx-stl-force-cpp03:
name: Clang-10 OSX - STL - Force C++03
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-11]
steps:
- uses: actions/checkout@v3
- name: Build
run: |
export CC=clang
export CXX=clang++
export ASAN_OPTIONS=alloc_dealloc_mismatch=0,detect_leaks=0
git fetch --tags
cmake -D BUILD_TESTS=ON -DNO_STL=OFF -DETL_USE_TYPE_TRAITS_BUILTINS=OFF -DETL_USER_DEFINED_TYPE_TRAITS=OFF -DETL_FORCE_TEST_CPP03=ON -DETL_CXX_STANDARD=20 ./
clang --version
make
- name: Run tests
run: ./test/etl_tests