summaryrefslogtreecommitdiffstats
path: root/tools/llvm-bpf
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@nbd.name>2021-10-17 17:50:53 +0200
committerFelix Fietkau <nbd@nbd.name>2021-10-20 11:35:34 +0200
commitfaa6a9a04beda71da49dd2d96225e892899e84d7 (patch)
tree99eb26cc3383c8d5f167ac73a802a7ac2c5332ef /tools/llvm-bpf
parent1c07eab9f81f1ee99cc2ae36596bda81c12d5dbc (diff)
downloadopenwrt-faa6a9a04beda71da49dd2d96225e892899e84d7.tar.gz
openwrt-faa6a9a04beda71da49dd2d96225e892899e84d7.tar.bz2
openwrt-faa6a9a04beda71da49dd2d96225e892899e84d7.zip
tools/llvm-bpf: add llvm+clang build suitable for compiling code to eBPF
Preparation for building packages that ship eBPF code Signed-off-by: Felix Fietkau <nbd@nbd.name>
Diffstat (limited to 'tools/llvm-bpf')
-rw-r--r--tools/llvm-bpf/Makefile36
1 files changed, 36 insertions, 0 deletions
diff --git a/tools/llvm-bpf/Makefile b/tools/llvm-bpf/Makefile
new file mode 100644
index 0000000000..a5ba2a4cb7
--- /dev/null
+++ b/tools/llvm-bpf/Makefile
@@ -0,0 +1,36 @@
+#
+# Copyright (C) 2006-2016 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=llvm-project
+PKG_VERSION:=13.0.0
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).src.tar.xz
+PKG_SOURCE_URL:=https://github.com/llvm/llvm-project/releases/download/llvmorg-$(PKG_VERSION)
+PKG_HASH:=6075ad30f1ac0e15f07c1bf062c1e1268c241d674f11bd32cdf0e040c71f2bf3
+
+HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/$(PKG_NAME)-$(PKG_VERSION).src
+
+HOST_BUILD_PARALLEL:=1
+
+CMAKE_BINARY_SUBDIR := build
+CMAKE_SOURCE_SUBDIR := llvm
+
+include $(INCLUDE_DIR)/host-build.mk
+include $(INCLUDE_DIR)/cmake.mk
+
+CMAKE_HOST_OPTIONS += \
+ -DLLVM_ENABLE_BINDINGS=OFF \
+ -DLLVM_INCLUDE_DOCS=OFF \
+ -DLLVM_INCLUDE_EXAMPLES=OFF \
+ -DLLVM_INCLUDE_TESTS=OFF \
+ -DLLVM_ENABLE_PROJECTS="clang;lld" \
+ -DLLVM_TARGETS_TO_BUILD=BPF \
+ -DCLANG_BUILD_EXAMPLES=OFF
+
+$(eval $(call HostBuild))