Skip to content

Commit

Permalink
CI: add Clang 15 and 16
Browse files Browse the repository at this point in the history
  • Loading branch information
Minoru committed Jun 24, 2023
1 parent 536cfb6 commit 02eb632
Showing 1 changed file with 33 additions and 17 deletions.
50 changes: 33 additions & 17 deletions .cirrus.yml
Original file line number Diff line number Diff line change
Expand Up @@ -147,14 +147,14 @@ task:
cxx: g++-13
env: &extra_warnings_and_checks_env
CXXFLAGS: "-D_GLIBCXX_ASSERTIONS -Wformat -Wformat-security -fstack-protector-all -Wstack-protector -D_FORTIFY_SOURCE=2 -Wnull-dereference -Wdouble-promotion -O3"
- name: Clang 14, more warnings and checks (Ubuntu 22.04)
- name: Clang 16, more warnings and checks (Ubuntu 23.04)
container:
greedy: true
dockerfile: docker/ubuntu_22.04-build-tools.dockerfile
dockerfile: docker/ubuntu_23.04-build-tools.dockerfile
docker_arguments:
cxx_package: clang-14
cc: clang-14
cxx: clang++-14
cxx_package: clang-16
cc: clang-16
cxx: clang++-16
env: *extra_warnings_and_checks_env

- name: Rust stable, GCC 5 (Ubuntu 18.04)
Expand Down Expand Up @@ -317,6 +317,22 @@ task:
cxx_package: clang-14
cc: clang-14
cxx: clang++-14
- name: Rust stable, Clang 15 (Ubuntu 23.04)
container:
greedy: true
dockerfile: docker/ubuntu_23.04-build-tools.dockerfile
docker_arguments:
cxx_package: clang-15
cc: clang-15
cxx: clang++-15
- name: Rust stable, Clang 16 (Ubuntu 23.04)
container:
greedy: true
dockerfile: docker/ubuntu_23.04-build-tools.dockerfile
docker_arguments:
cxx_package: clang-16
cc: clang-16
cxx: clang++-16

cargo_cache: *cargo_cache

Expand All @@ -328,18 +344,18 @@ task:
before_cache_script: *before_cache_script

task:
name: AddressSanitizer (Clang 14, Ubuntu 22.04)
name: AddressSanitizer (Clang 16, Ubuntu 23.04)
skip: "changesIncludeOnly('contrib/*', 'contrib/**/*', 'doc/*', 'doc/**/*', 'po/*', 'po/**/*', 'snap/*', 'snap/**/*')"

container:
greedy: true
dockerfile: docker/ubuntu_22.04-build-tools.dockerfile
dockerfile: docker/ubuntu_23.04-build-tools.dockerfile
docker_arguments:
# We need llvm-symbolizer from llvm-14-tools to demangle symbols in
# We need llvm-symbolizer from llvm-16-tools to demangle symbols in
# sanitizer's reports
cxx_package: "clang-14 llvm-14"
cc: clang-14
cxx: clang++-14
cxx_package: "clang-16 llvm-16"
cc: clang-16
cxx: clang++-16

env:
CXXFLAGS: "-fsanitize=address -fsanitize-address-use-after-scope -fno-omit-frame-pointer -fno-optimize-sibling-calls -g"
Expand All @@ -357,18 +373,18 @@ task:
before_cache_script: *before_cache_script

task:
name: UB Sanitizer (Clang 14, Ubuntu 22.04)
name: UB Sanitizer (Clang 16, Ubuntu 23.04)
skip: "changesIncludeOnly('contrib/*', 'contrib/**/*', 'doc/*', 'doc/**/*', 'po/*', 'po/**/*', 'snap/*', 'snap/**/*')"

container:
greedy: true
dockerfile: docker/ubuntu_22.04-build-tools.dockerfile
dockerfile: docker/ubuntu_23.04-build-tools.dockerfile
docker_arguments:
# We need llvm-symbolizer from llvm-14-tools to demangle symbols in
# We need llvm-symbolizer from llvm-16-tools to demangle symbols in
# sanitizer's reports
cxx_package: "clang-14 llvm-14"
cc: clang-14
cxx: clang++-14
cxx_package: "clang-16 llvm-16"
cc: clang-16
cxx: clang++-16

env:
CXXFLAGS: "-fsanitize=undefined -g -fno-omit-frame-pointer"
Expand Down

0 comments on commit 02eb632

Please sign in to comment.