mirror of
				https://github.com/openwrt/openwrt.git
				synced 2025-10-30 07:49:23 +08:00 
			
		
		
		
	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>
This commit is contained in:
		| @ -1,4 +1,4 @@ | ||||
| BPF_DEPENDS := @HAS_BPF_TOOLCHAIN | ||||
| BPF_DEPENDS := @HAS_BPF_TOOLCHAIN +@NEED_BPF_TOOLCHAIN | ||||
| LLVM_VER:= | ||||
|  | ||||
| CLANG_MIN_VER:=12 | ||||
|  | ||||
| @ -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 | ||||
|  | ||||
| @ -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 | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Felix Fietkau
					Felix Fietkau