From 3853a40f39de133e5a1df46e5b8c7a4e9fee4a04 Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Sun, 5 Jul 2026 05:56:20 +0900 Subject: [PATCH] README: mention binutils requirement, bump LLVM requirement for ELF note macros The new SD_ELF_NOTE_DLOPEN_ANCHORED() macro utilizes the 'o' assembler flag (SHF_LINK_ORDER), which requires binutils >= 2.35 or LLVM >= 18. If an LLVM version older than 18 is encountered, the macro automatically falls back to the non-anchored variant. This non-anchored fallback relies on the 'R' (SHF_GNU_RETAIN) flag, which requires binutils >= 2.36 or LLVM >= 13. Since the codebase now unconditionally adopts SD_ELF_NOTE_DLOPEN_ANCHORED() tree-wide, the effective minimum toolchain requirements become: - binutils >= 2.35 (to support the 'o' flag) - LLVM/Clang >= 13 (to support the 'R' flag fallback for versions < 18) Update the minimal toolchain versions in the README to reflect these requirements for building systemd. --- README | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/README b/README index da71c73be7..d0206aa170 100644 --- a/README +++ b/README @@ -256,9 +256,10 @@ REQUIREMENTS: ninja gcc >= 8.4 >= 13.1.0 is required to build BPF program by using GCC + binutils >= 2.35 awk, sed, grep, and similar tools - clang >= 10.0, llvm >= 10.0 (optional, required to build BPF programs - from source code in C) + clang,llvm >= 10 (optional, required to build BPF programs) + >= 13 (optional, required to build the entire project) During runtime, you need the following additional dependencies: