diff options
| author | Felix Fietkau | 2025-02-07 10:11:42 +0000 |
|---|---|---|
| committer | Felix Fietkau | 2025-02-07 10:16:08 +0000 |
| commit | 6605e45676815156f0c47d4117ee401e6616fcac (patch) | |
| tree | 181656ac4dbf0df3cafc839a4df54cd7874a5c1d | |
| parent | 411df8fbc449175b0f46cf0dab229a16176ed067 (diff) | |
| download | openwrt-6605e45676815156f0c47d4117ee401e6616fcac.tar.gz | |
build: conditionally build llvm bpf toolchain by default
Unless another toolchain is present (or selected), build the bpf toolchain
whenever a package is selected that needs it.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
| -rw-r--r-- | include/bpf.mk | 2 | ||||
| -rw-r--r-- | package/network/services/unetd/Makefile | 1 | ||||
| -rw-r--r-- | toolchain/Config.in | 14 |
3 files changed, 9 insertions, 8 deletions
diff --git a/include/bpf.mk b/include/bpf.mk index 2b7aa8512c..8a0121aabe 100644 --- a/include/bpf.mk +++ b/include/bpf.mk @@ -1,4 +1,4 @@ -BPF_DEPENDS := @HAS_BPF_TOOLCHAIN +BPF_DEPENDS := @HAS_BPF_TOOLCHAIN +@NEED_BPF_TOOLCHAIN LLVM_VER:= CLANG_MIN_VER:=12 diff --git a/package/network/services/unetd/Makefile b/package/network/services/unetd/Makefile index cc59b9100b..6923c68873 100644 --- a/package/network/services/unetd/Makefile +++ b/package/network/services/unetd/Makefile @@ -40,6 +40,7 @@ define Package/unetd/config bool "VXLAN support" depends on PACKAGE_unetd depends on HAS_BPF_TOOLCHAIN + select NEED_BPF_TOOLCHAIN default y endef diff --git a/toolchain/Config.in b/toolchain/Config.in index b4ba5b3b67..71ebbeb47b 100644 --- a/toolchain/Config.in +++ b/toolchain/Config.in @@ -40,9 +40,8 @@ menuconfig TARGET_OPTIONS choice BPF_TOOLCHAIN prompt "BPF toolchain" if DEVEL - default BPF_TOOLCHAIN_BUILD_LLVM if BUILDBOT default BPF_TOOLCHAIN_PREBUILT if HAS_PREBUILT_LLVM_TOOLCHAIN - default BPF_TOOLCHAIN_NONE + default BPF_TOOLCHAIN_BUILD_LLVM config BPF_TOOLCHAIN_NONE bool "None" @@ -57,7 +56,7 @@ menuconfig TARGET_OPTIONS bool "Use host LLVM toolchain" config BPF_TOOLCHAIN_BUILD_LLVM - select USE_LLVM_BUILD + select USE_LLVM_BUILD if NEED_BPF_TOOLCHAIN bool "Build LLVM toolchain for eBPF" help If enabled, a LLVM toolchain for building eBPF binaries will be built. @@ -320,23 +319,24 @@ config GDB_PYTHON Enable the python bindings for GDB to allow using python in the gdb shell. config HAS_BPF_TOOLCHAIN + default y if !BPF_TOOLCHAIN_NONE + bool + +config NEED_BPF_TOOLCHAIN bool config HAS_PREBUILT_LLVM_TOOLCHAIN def_bool $(shell, [ -f llvm-bpf/.llvm-version ] && echo y || echo n) config USE_LLVM_HOST - select HAS_BPF_TOOLCHAIN bool config USE_LLVM_PREBUILT - select HAS_BPF_TOOLCHAIN default y if !DEVEL && !BUILDBOT && HAS_PREBUILT_LLVM_TOOLCHAIN bool config USE_LLVM_BUILD - default y if !DEVEL && BUILDBOT - select HAS_BPF_TOOLCHAIN + default y if !DEVEL && NEED_BPF_TOOLCHAIN && (BUILDBOT || !HAS_PREBUILT_LLVM_TOOLCHAIN) bool config USE_GLIBC |