Skip to content

Commit

Permalink
clang: Bump clang version to 17
Browse files Browse the repository at this point in the history
Upstream distribution no longer lists clang 15 for ubuntu 22.04 [^1].
Additionally, cilium/cilium repo also moves to clang/llvm 17 [^2].

[^1]: https://apt.llvm.org/
[^2]: cilium/cilium#31418

Signed-off-by: Tam Mach <tam.mach@cilium.io>
  • Loading branch information
sayboras authored and jrajahalme committed Apr 17, 2024
1 parent 890f927 commit 0744b83
Show file tree
Hide file tree
Showing 5 changed files with 38 additions and 38 deletions.
4 changes: 2 additions & 2 deletions Dockerfile.builder
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,10 @@ RUN apt-get update && \
# Cilium-envoy build dependencies
software-properties-common && \
wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | tee /etc/apt/trusted.gpg.d/apt.llvm.org.asc && \
apt-add-repository -y "deb http://apt.llvm.org/focal/ llvm-toolchain-focal-15 main" && \
apt-add-repository -y "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-17 main" && \
apt-get update && \
apt-get install -y --no-install-recommends \
clang-15 clang-tools-15 lldb-15 lld-15 clang-format-15 libc++-15-dev libc++abi-15-dev && \
clang-17 clang-tools-17 llvm-17-dev lldb-17 lld-17 clang-format-17 libc++-17-dev libc++abi-17-dev && \
apt-get purge --auto-remove && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
Expand Down
4 changes: 2 additions & 2 deletions Dockerfile.builder.tests
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,10 @@ RUN apt-get update && \
# Cilium-envoy build dependencies
software-properties-common && \
wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | tee /etc/apt/trusted.gpg.d/apt.llvm.org.asc && \
apt-add-repository -y "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-15 main" && \
apt-add-repository -y "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-17 main" && \
apt-get update && \
apt-get install -y --no-install-recommends \
clang-15 clang-tools-15 lldb-15 lld-15 clang-format-15 libc++-15-dev libc++abi-15-dev && \
clang-17 clang-tools-17 llvm-17-dev lldb-17 lld-17 clang-format-17 libc++-17-dev libc++abi-17-dev && \
apt-get purge --auto-remove && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
Expand Down
12 changes: 6 additions & 6 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -94,17 +94,17 @@ define add_clang_apt_source
if [ ! -f /etc/apt/trusted.gpg.d/apt.llvm.org.asc ]; then \
$(SUDO) wget -q -O /etc/apt/trusted.gpg.d/apt.llvm.org.asc https://apt.llvm.org/llvm-snapshot.gpg.key; \
fi
apt_source="deb http://apt.llvm.org/$(1)/ llvm-toolchain-$(1)-15 main" && \
apt_source="deb http://apt.llvm.org/$(1)/ llvm-toolchain-$(1)-17 main" && \
$(SUDO) apt-add-repository -y "$${apt_source}" && \
$(SUDO) apt update
endef

/usr/lib/llvm-15:
$(SUDO) apt info clang-15 || $(call add_clang_apt_source,$(shell lsb_release -cs))
$(SUDO) apt install -y clang-15 llvm-15-dev lld-15 clang-format-15
/usr/lib/llvm-17:
$(SUDO) apt info clang-17 || $(call add_clang_apt_source,$(shell lsb_release -cs))
$(SUDO) apt install -y clang-17 llvm-17-dev lld-17 clang-format-17

clang.bazelrc: bazel/setup_clang.sh /usr/lib/llvm-15
bazel/setup_clang.sh /usr/lib/llvm-15
clang.bazelrc: bazel/setup_clang.sh /usr/lib/llvm-17
bazel/setup_clang.sh /usr/lib/llvm-17
echo "build --config=clang" >> $@

.PHONY: bazel-bin/cilium-envoy
Expand Down
4 changes: 2 additions & 2 deletions Vagrantfile
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,10 @@ apt-get update && \
python3 python-is-python3 unzip virtualenv wget zip \
software-properties-common && \
wget -qO- https://apt.llvm.org/llvm-snapshot.gpg.key | tee /etc/apt/trusted.gpg.d/apt.llvm.org.asc && \
apt-add-repository -y "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-15 main" && \
apt-add-repository -y "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-17 main" && \
apt-get update && \
apt-get install -y --no-install-recommends \
clang-15 clang-tools-15 lldb-15 lld-15 clang-format-15 libc++-15-dev libc++abi-15-dev && \
clang-17 clang-tools-17 lldb-17 lld-17 clang-format-17 libc++-17-dev libc++abi-17-dev && \
apt-get purge --auto-remove && \
apt-get clean
SCRIPT
Expand Down
52 changes: 26 additions & 26 deletions bazel/toolchains/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ cc_toolchain_config(
coverage_link_flags = ["--coverage"],
cpu = "aarch64",
cxx_builtin_include_directories = [
"/usr/lib/llvm-15",
"/usr/lib/llvm-17",
"/usr/aarch64-linux-gnu/include",
"/usr/include",
],
Expand Down Expand Up @@ -76,18 +76,18 @@ cc_toolchain_config(
target_libc = "glibc",
target_system_name = "aarch64-linux-gnu",
tool_paths = {
"ar": "/usr/bin/llvm-ar-15",
"compat-ld": "/usr/bin/lld-15",
"ld": "/usr/bin/lld-15",
"gold": "/usr/bin/lld-15",
"cpp": "/usr/bin/clang-cpp-15",
"gcc": "/usr/bin/clang-15",
"dwp": "/usr/bin/llvm-dwp-15",
"gcov": "/usr/bin/llvmcov-15",
"nm": "/usr/bin/llvm-nm-15",
"objcopy": "/usr/bin/llvm-objcopy-15",
"objdump": "/usr/bin/llvm-objdump-15",
"strip": "/usr/bin/llvm-strip-15",
"ar": "/usr/bin/llvm-ar-17",
"compat-ld": "/usr/bin/lld-17",
"ld": "/usr/bin/lld-17",
"gold": "/usr/bin/lld-17",
"cpp": "/usr/bin/clang-cpp-17",
"gcc": "/usr/bin/clang-17",
"dwp": "/usr/bin/llvm-dwp-17",
"gcov": "/usr/bin/llvmcov-17",
"nm": "/usr/bin/llvm-nm-17",
"objcopy": "/usr/bin/llvm-objcopy-17",
"objdump": "/usr/bin/llvm-objdump-17",
"strip": "/usr/bin/llvm-strip-17",
},
toolchain_identifier = "linux_aarch64",
unfiltered_compile_flags = [
Expand Down Expand Up @@ -146,7 +146,7 @@ cc_toolchain_config(
coverage_link_flags = ["--coverage"],
cpu = "k8",
cxx_builtin_include_directories = [
"/usr/lib/llvm-15",
"/usr/lib/llvm-17",
"/usr/x86_64-linux-gnu/include",
"/usr/include",
],
Expand Down Expand Up @@ -174,18 +174,18 @@ cc_toolchain_config(
target_libc = "unknown",
target_system_name = "unknown",
tool_paths = {
"ar": "/usr/bin/llvm-ar-15",
"compat-ld": "/usr/bin/lld-15",
"ld": "/usr/bin/lld-15",
"gold": "/usr/bin/lld-15",
"cpp": "/usr/bin/clang-cpp-15",
"gcc": "/usr/bin/clang-15",
"dwp": "/usr/bin/llvm-dwp-15",
"gcov": "/usr/bin/llvmcov-15",
"nm": "/usr/bin/llvm-nm-15",
"objcopy": "/usr/bin/llvm-objcopy-15",
"objdump": "/usr/bin/llvm-objdump-15",
"strip": "/usr/bin/llvm-strip-15",
"ar": "/usr/bin/llvm-ar-17",
"compat-ld": "/usr/bin/lld-17",
"ld": "/usr/bin/lld-17",
"gold": "/usr/bin/lld-17",
"cpp": "/usr/bin/clang-cpp-17",
"gcc": "/usr/bin/clang-17",
"dwp": "/usr/bin/llvm-dwp-17",
"gcov": "/usr/bin/llvmcov-17",
"nm": "/usr/bin/llvm-nm-17",
"objcopy": "/usr/bin/llvm-objcopy-17",
"objdump": "/usr/bin/llvm-objdump-17",
"strip": "/usr/bin/llvm-strip-17",
},
toolchain_identifier = "linux_x86_64",
unfiltered_compile_flags = [
Expand Down

0 comments on commit 0744b83

Please sign in to comment.