From 5ad663b7652e06e430209c2b3f5ab835181082e7 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Mon, 1 Nov 2021 15:36:36 +0100 Subject: [PATCH] config: add choice for selecting the LLVM toolchain type This is global for all BPF based packages Signed-off-by: Felix Fietkau --- toolchain/Config.in | 30 ++++++++++++++++++++++++------ tools/Makefile | 2 +- 2 files changed, 25 insertions(+), 7 deletions(-) diff --git a/toolchain/Config.in b/toolchain/Config.in index 1d230ca22f4..15151358065 100644 --- a/toolchain/Config.in +++ b/toolchain/Config.in @@ -37,13 +37,31 @@ menuconfig TARGET_OPTIONS Most people will answer N. -config BUILD_LLVM_BPF - bool "Build LLVM toolchain for eBPF" if DEVEL - help - If enabled, a LLVM toolchain for building eBPF binaries will be built. - If this is not enabled, eBPF packages can only be built if the host - has a suitable toolchain + choice BPF_TOOLCHAIN + prompt "BPF toolchain" if DEVEL + default BPF_TOOLCHAIN_NONE + + config BPF_TOOLCHAIN_NONE + bool "None" + + config BPF_TOOLCHAIN_HOST + bool "Use host LLVM toolchain" + + config BPF_TOOLCHAIN_BUILD_LLVM + bool "Build LLVM toolchain for eBPF" + help + If enabled, a LLVM toolchain for building eBPF binaries will be built. + If this is not enabled, eBPF packages can only be built if the host + has a suitable toolchain + endchoice + + config BPF_TOOLCHAIN_HOST_PATH + string + depends on BPF_TOOLCHAIN_HOST + prompt "Host LLVM toolchain path (prefix)" if DEVEL + default "/usr/local/opt/llvm" if HOST_OS_MACOS + default "" menuconfig EXTERNAL_TOOLCHAIN bool diff --git a/tools/Makefile b/tools/Makefile index dc665f6b46c..f0706929421 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -35,7 +35,7 @@ tools-$(CONFIG_TARGET_mxs) += elftosb sdimage tools-$(CONFIG_TARGET_tegra) += cbootimage cbootimage-configs tools-$(CONFIG_USES_MINOR) += kernel2minor tools-$(CONFIG_USE_SPARSE) += sparse -tools-$(CONFIG_BUILD_LLVM_BPF) += llvm-bpf +tools-$(CONFIG_BPF_TOOLCHAIN_BUILD_LLVM) += llvm-bpf # builddir dependencies $(curdir)/autoconf/compile := $(curdir)/m4/compile -- 2.30.2