diff --git a/ci_build_images/msan.fragment.Dockerfile b/ci_build_images/msan.fragment.Dockerfile index 43c60c0b..aa36a4dd 100644 --- a/ci_build_images/msan.fragment.Dockerfile +++ b/ci_build_images/msan.fragment.Dockerfile @@ -2,14 +2,14 @@ # msan.fragment.Dockerfile # this is to create images with MSAN for BB workers -ARG CLANG_VERSION=20 +ARG CLANG_VERSION=22 # earliest tested version known to work - 19 # This CLANG_DEV_VERSION is a marker to make it possible to build a msan builder # from the nightly clang versions as they are in a differently name repositories. # This maps to the https://apt.llvm.org/ under "development" branch version. -ENV CLANG_DEV_VERSION=22 +ENV CLANG_DEV_VERSION=23 WORKDIR /msan-build @@ -21,10 +21,6 @@ ENV MSAN_SYMBOLIZER_PATH=/usr/bin/llvm-symbolizer-${CLANG_VERSION} ENV CFLAGS="-fno-omit-frame-pointer -O2 -g" ENV CXXFLAGS="$CFLAGS" -# https://github.com/llvm/llvm-project/issues/179147 -RUN mkdir -p /etc/crypto-policies/back-ends \ - && printf '[hash_algorithms]\nsha1 = "always"' >> /etc/crypto-policies/back-ends/sequoia.config - # hadolint ignore=SC2046,DL3003 RUN . /etc/os-release \ && export LLVM_ENABLE_RUNTIMES="libcxx;libcxxabi;libunwind" \ @@ -66,10 +62,12 @@ RUN . /etc/os-release \ && cd .. \ && rm -rf -- * -RUN if [ "${CLANG_VERSION}" -le 20 ]; then \ - for f in "$MSAN_LIBDIR"/libunwind*; do mv "$f" "$f"-disable; done \ +RUN for f in "$MSAN_LIBDIR"/libunwind*; do mv "$f" "$f"-disable; done; \ + if [ "${CLANG_VERSION}" -ge 22 ]; then \ + apt-get -y install --no-install-recommends libunwind-19; \ fi -# libunwrap move/disable because of https://github.com/llvm/llvm-project/issues/128621 +# libunwind move/disable because of https://github.com/llvm/llvm-project/issues/128621 +# libunwind-19 meets ABI compatibility as its now linked to built executables. COPY msan.instrumentedlibs.sh /msan-build RUN ./msan.instrumentedlibs.sh