From 562ea41a64aad4517817c1e09efc5167066c22bf Mon Sep 17 00:00:00 2001 From: Ayaz Salikhov Date: Tue, 8 Jul 2025 11:49:11 +0100 Subject: [PATCH] feat: Update to Clang 19 (#2293) --- .github/workflows/update_docker_ci.yml | 2 +- docker/ci/README.md | 2 +- docker/ci/conan/clang.profile | 5 +++-- docker/compilers/clang/Dockerfile | 2 ++ 4 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.github/workflows/update_docker_ci.yml b/.github/workflows/update_docker_ci.yml index 6127dd2f..d19303cd 100644 --- a/.github/workflows/update_docker_ci.yml +++ b/.github/workflows/update_docker_ci.yml @@ -29,7 +29,7 @@ concurrency: cancel-in-progress: false env: - CLANG_MAJOR_VERSION: 16 + CLANG_MAJOR_VERSION: 19 GCC_MAJOR_VERSION: 12 GCC_VERSION: 12.3.0 diff --git a/docker/ci/README.md b/docker/ci/README.md index 0532dad0..d72dd6ea 100644 --- a/docker/ci/README.md +++ b/docker/ci/README.md @@ -6,7 +6,7 @@ It is used in [Clio Github Actions](https://github.com/XRPLF/clio/actions) but c The image is based on Ubuntu 20.04 and contains: - ccache 4.11.3 -- clang 16.0.6 +- clang 19 - ClangBuildAnalyzer 1.6.0 - conan 2.17.0 - doxygen 1.12 diff --git a/docker/ci/conan/clang.profile b/docker/ci/conan/clang.profile index 26c4b9bd..d142469c 100644 --- a/docker/ci/conan/clang.profile +++ b/docker/ci/conan/clang.profile @@ -4,8 +4,9 @@ build_type=Release compiler=clang compiler.cppstd=20 compiler.libcxx=libc++ -compiler.version=16 +compiler.version=19 os=Linux [conf] -tools.build:compiler_executables={"c": "/usr/bin/clang-16", "cpp": "/usr/bin/clang++-16"} +tools.build:compiler_executables={"c": "/usr/bin/clang-19", "cpp": "/usr/bin/clang++-19"} +grpc/1.50.1:tools.build:cxxflags+=["-Wno-missing-template-arg-list-after-template-kw"] diff --git a/docker/compilers/clang/Dockerfile b/docker/compilers/clang/Dockerfile index 35d88797..284b07ba 100644 --- a/docker/compilers/clang/Dockerfile +++ b/docker/compilers/clang/Dockerfile @@ -17,6 +17,8 @@ RUN apt-get update \ && rm -rf /var/lib/apt/lists/* ARG CLANG_MAJOR_VERSION=invalid +# Bump this version to force rebuild of the image +ARG BUILD_VERSION=0 RUN wget --progress=dot:giga https://apt.llvm.org/llvm.sh \ && chmod +x llvm.sh \