[Buildroot] [PATCH] package/llvm: set the path to llvm-config
Matthew Weber
matthew.weber at rockwellcollins.com
Wed Jan 16 23:54:55 UTC 2019
Romain,
On Wed, Jan 16, 2019 at 3:39 PM Romain Naour <romain.naour at smile.fr> wrote:
>
> While building llvm for the target (x86_64), the build failded due to
> path poisoning (-I/usr/include/libxml2) while building NATIVE tools
> (i.e for the host). The llvm package try to build a tool for the host
> with the cross-compiler which doesn't work when the paranoid toolchain
> wrapper (BR2_COMPILER_PARANOID_UNSAFE_PATH) is enabled.
>
> We know that llvm (target) needs llvm-tablegen and llvm-config build by
> host-llvm, but only LLVM_TABLEGEN is provided by llvm.mk. Adding
> LLVM_CONFIG_PATH=$(HOST_DIR)/bin/llvm-config for llvm (target)
> fixes the path poisoining issue since llvm doesn't build the NATIVE
> variant.
>
> Signed-off-by: Romain Naour <romain.naour at smile.fr>
> Cc: Valentin Korenblit <valentinkorenblit at gmail.com>
> Cc: Matthew Weber <matthew.weber at rockwellcollins.com>
Tested-by: Matthew Weber <matthew.weber at rockwellcollins.com>
> ---
> Valentin, I'm not sure why we don't set LLVM_CONFIG_PATH in llvm.mk for
> the target variant? We provide it for clang and libclc, why not for
> llvm ?
I'm not sure.
> ---
> package/llvm/llvm.mk | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/package/llvm/llvm.mk b/package/llvm/llvm.mk
> index f33ec11fbf..952f678eee 100644
> --- a/package/llvm/llvm.mk
> +++ b/package/llvm/llvm.mk
> @@ -57,6 +57,9 @@ endif
> # Use native llvm-tblgen from host-llvm (needed for cross-compilation)
> LLVM_CONF_OPTS += -DLLVM_TABLEGEN=$(HOST_DIR)/bin/llvm-tblgen
>
> +# Use native llvm-config from host-llvm (needed for cross-compilation)
The goal is not to use this as a compiler for applications but for
building of the compiler-rt tools which have advanced fuzzing and
address sanitizing debug/analysis features.
> +LLVM_CONF_OPTS += -DLLVM_CONFIG_PATH=$(HOST_DIR)/bin/llvm-config
> +
> # BUILD_SHARED_LIBS has a misleading name. It is in fact an option for
> # LLVM developers to build all LLVM libraries as separate shared libraries.
> # For normal use of LLVM, it is recommended to build a single
> --
> 2.20.1
>
More information about the buildroot
mailing list