config: add choice for selecting the LLVM toolchain type

This is global for all BPF based packages

Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
Felix Fietkau 2021-11-01 15:36:36 +01:00
parent 2d5b83197a
commit 5ad663b765
2 changed files with 25 additions and 7 deletions

View file

@ -37,13 +37,31 @@ menuconfig TARGET_OPTIONS
Most people will answer N. Most people will answer N.
config BUILD_LLVM_BPF
bool "Build LLVM toolchain for eBPF" if DEVEL 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 help
If enabled, a LLVM toolchain for building eBPF binaries will be built. 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 If this is not enabled, eBPF packages can only be built if the host
has a suitable toolchain 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 menuconfig EXTERNAL_TOOLCHAIN
bool bool

View file

@ -35,7 +35,7 @@ tools-$(CONFIG_TARGET_mxs) += elftosb sdimage
tools-$(CONFIG_TARGET_tegra) += cbootimage cbootimage-configs tools-$(CONFIG_TARGET_tegra) += cbootimage cbootimage-configs
tools-$(CONFIG_USES_MINOR) += kernel2minor tools-$(CONFIG_USES_MINOR) += kernel2minor
tools-$(CONFIG_USE_SPARSE) += sparse tools-$(CONFIG_USE_SPARSE) += sparse
tools-$(CONFIG_BUILD_LLVM_BPF) += llvm-bpf tools-$(CONFIG_BPF_TOOLCHAIN_BUILD_LLVM) += llvm-bpf
# builddir dependencies # builddir dependencies
$(curdir)/autoconf/compile := $(curdir)/m4/compile $(curdir)/autoconf/compile := $(curdir)/m4/compile