From: Valentin Korenblit Date: Wed, 30 May 2018 11:46:51 +0000 (+0200) Subject: package/clang: fix host-clang binaries X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=71b3df1cbbfeb69d9f9a39af9a1ae5722215a9a3;p=buildroot.git package/clang: fix host-clang binaries This patch fixes the following error when trying to execute clang compiler (host-variant): CommandLine Error: Option 'x86-use-base-pointer' registered more than once! LLVM ERROR: inconsistency in registered CommandLine options The same happens for the other binaries, such as clang-format: ./clang-format : CommandLine Error: Option 'help-list' registered more than once! LLVM ERROR: inconsistency in registered CommandLine options Clang binaries are tools, and given that DLLVM_LINK_LLVM_DYLIB is set, they are linked against libLLVM.so. The problem is that binaries are also linking against some LLVM static libraries, resulting in the error shown above. However, it is not the same case for libclang, which is also a tool but links only against libLLVM.so. To fix this problem, add LLVM_DYLIB_COMPONENTS=all. Signed-off-by: Valentin Korenblit Tested-by: Joseph Kogut Signed-off-by: Peter Korsgaard --- diff --git a/package/clang/clang.mk b/package/clang/clang.mk index ae0140c783..dc086c6eed 100644 --- a/package/clang/clang.mk +++ b/package/clang/clang.mk @@ -89,5 +89,9 @@ HOST_CLANG_POST_INSTALL_HOOKS = HOST_CLANG_INSTALL_CLANG_TBLGEN HOST_CLANG_CONF_OPTS += -DLLVM_LINK_LLVM_DYLIB=ON CLANG_CONF_OPTS += -DLLVM_LINK_LLVM_DYLIB=ON +# Prevent clang binaries from linking against LLVM static libs +HOST_CLANG_CONF_OPTS += -DLLVM_DYLIB_COMPONENTS=all +CLANG_CONF_OPTS += -DLLVM_DYLIB_COMPONENTS=all + $(eval $(cmake-package)) $(eval $(host-cmake-package))