CI: Update to clang 19 on ubuntu 24.04, add clang-tidy package

This commit is contained in:
Tim Wojtulewicz 2025-04-30 16:45:51 -07:00
parent f4cd92e24a
commit dbd787a81f
2 changed files with 16 additions and 11 deletions

View file

@ -300,8 +300,8 @@ ubuntu24_clang_libcpp_task:
<< : *CI_TEMPLATE << : *CI_TEMPLATE
<< : *SKIP_TASK_ON_PR << : *SKIP_TASK_ON_PR
env: env:
CC: clang-18 CC: clang-19
CXX: clang++-18 CXX: clang++-19
CXXFLAGS: -stdlib=libc++ CXXFLAGS: -stdlib=libc++
ubuntu22_task: ubuntu22_task:
@ -445,8 +445,8 @@ ubsan_sanitizer_task:
<< : *SKIP_TASK_ON_PR << : *SKIP_TASK_ON_PR
test_fuzzers_script: ./ci/test-fuzzers.sh test_fuzzers_script: ./ci/test-fuzzers.sh
env: env:
CC: clang-18 CC: clang-19
CXX: clang++-18 CXX: clang++-19
CXXFLAGS: -DZEEK_DICT_DEBUG CXXFLAGS: -DZEEK_DICT_DEBUG
ZEEK_CI_CONFIGURE_FLAGS: *UBSAN_SANITIZER_CONFIG ZEEK_CI_CONFIGURE_FLAGS: *UBSAN_SANITIZER_CONFIG
ZEEK_TAILORED_UB_CHECKS: 1 ZEEK_TAILORED_UB_CHECKS: 1
@ -459,8 +459,8 @@ ubsan_sanitizer_zam_task:
<< : *CI_TEMPLATE << : *CI_TEMPLATE
env: env:
CC: clang-18 CC: clang-19
CXX: clang++-18 CXX: clang++-19
ZEEK_CI_CONFIGURE_FLAGS: *UBSAN_SANITIZER_CONFIG ZEEK_CI_CONFIGURE_FLAGS: *UBSAN_SANITIZER_CONFIG
ZEEK_TAILORED_UB_CHECKS: 1 ZEEK_TAILORED_UB_CHECKS: 1
UBSAN_OPTIONS: print_stacktrace=1 UBSAN_OPTIONS: print_stacktrace=1
@ -480,8 +480,8 @@ tsan_sanitizer_task:
<< : *CI_TEMPLATE << : *CI_TEMPLATE
<< : *SKIP_TASK_ON_PR << : *SKIP_TASK_ON_PR
env: env:
CC: clang-18 CC: clang-19
CXX: clang++-18 CXX: clang++-19
ZEEK_CI_CONFIGURE_FLAGS: *TSAN_SANITIZER_CONFIG ZEEK_CI_CONFIGURE_FLAGS: *TSAN_SANITIZER_CONFIG
ZEEK_CI_DISABLE_SCRIPT_PROFILING: 1 ZEEK_CI_DISABLE_SCRIPT_PROFILING: 1
# If this is defined directly in the environment, configure fails to find # If this is defined directly in the environment, configure fails to find

View file

@ -4,15 +4,16 @@ ENV DEBIAN_FRONTEND="noninteractive" TZ="America/Los_Angeles"
# A version field to invalidate Cirrus's build cache when needed, as suggested in # A version field to invalidate Cirrus's build cache when needed, as suggested in
# https://github.com/cirruslabs/cirrus-ci-docs/issues/544#issuecomment-566066822 # https://github.com/cirruslabs/cirrus-ci-docs/issues/544#issuecomment-566066822
ENV DOCKERFILE_VERSION 20241024 ENV DOCKERFILE_VERSION 20250522
RUN apt-get update && apt-get -y install \ RUN apt-get update && apt-get -y install \
bc \ bc \
bison \ bison \
bsdmainutils \ bsdmainutils \
ccache \ ccache \
clang-18 \ clang-19 \
clang++-18 \ clang++-19 \
clang-tidy-19 \
cmake \ cmake \
cppzmq-dev \ cppzmq-dev \
curl \ curl \
@ -47,6 +48,10 @@ RUN apt-get update && apt-get -y install \
RUN pip3 install --break-system-packages websockets junit2html RUN pip3 install --break-system-packages websockets junit2html
RUN gem install coveralls-lcov RUN gem install coveralls-lcov
# Ubuntu installs clang versions with the binaries having the version number
# appended. Create a symlink for clang-tidy so cmake finds it correctly.
RUN update-alternatives --install /usr/bin/clang-tidy clang-tidy /usr/bin/clang-tidy-19 1000
# Download a newer pre-built ccache version that recognizes -fprofile-update=atomic # Download a newer pre-built ccache version that recognizes -fprofile-update=atomic
# which is used when building with --coverage. # which is used when building with --coverage.
# #