The branch main has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=9978553d0199e7ec0bdd1c44fc7f6c7b0c11e43b
commit 9978553d0199e7ec0bdd1c44fc7f6c7b0c11e43b Author: Dimitry Andric <[email protected]> AuthorDate: 2025-11-28 18:12:01 +0000 Commit: Dimitry Andric <[email protected]> CommitDate: 2025-11-28 18:14:15 +0000 Remove TableGen objects from libllvm, fixing bad option registrations In 986e05bc2a18 I revamped the build for all the llvm subprojects. Among others I added objects under contrib/llvm-project/llvm/lib/TableGen, but I missed that upstream explicitly removes these when building the shared llvm library: https://github.com/llvm/llvm-project/blob/llvmorg-19.1.7/llvm/tools/llvm-shlib/CMakeLists.txt#L23 In 2e47f35be5dc I converted libllvm to a shared library. From that point onwards, some of the global command line option objects registered in llvm/lib/TableGen/Main.cpp conflict with similar objects in tools like llvm-cov, llvm-as, etc. This results in an error when running these tools: "CommandLine Error: Option 'o' registered more than once!", followed by a fatal exit. Fix this by removing the TableGen objects from libllvm. Note that we no longer install any of the tblgen binaries, these are only used during buildworld, and then in a statically linked form. PR: 291233 MFC after: 3 days --- lib/clang/libllvm/Makefile | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/lib/clang/libllvm/Makefile b/lib/clang/libllvm/Makefile index e634a72b4f90..810eac08d8d5 100644 --- a/lib/clang/libllvm/Makefile +++ b/lib/clang/libllvm/Makefile @@ -1245,16 +1245,6 @@ SRCS_MIN+= Support/regexec.c SRCS_MIN+= Support/regfree.c SRCS_MIN+= Support/regstrlcpy.c SRCS_MIN+= Support/xxhash.cpp -SRCS_MIN+= TableGen/DetailedRecordsBackend.cpp -SRCS_MIN+= TableGen/Error.cpp -SRCS_MIN+= TableGen/JSONBackend.cpp -SRCS_MIN+= TableGen/Main.cpp -SRCS_MIN+= TableGen/Record.cpp -SRCS_MIN+= TableGen/SetTheory.cpp -SRCS_MIN+= TableGen/StringMatcher.cpp -SRCS_MIN+= TableGen/TGLexer.cpp -SRCS_MIN+= TableGen/TGParser.cpp -SRCS_MIN+= TableGen/TableGenBackend.cpp .if ${MK_LLVM_TARGET_AARCH64} != "no" SRCS_MIN+= Target/AArch64/AArch64A53Fix835769.cpp SRCS_MIN+= Target/AArch64/AArch64A57FPLoadBalancing.cpp
