build: fix bpf toolchain dependency for qosify
[openwrt/staging/hauke.git] / package / network / config / qosify / Makefile
1 #
2 # Copyright (C) 2021 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9 include $(INCLUDE_DIR)/kernel.mk
10
11 PKG_NAME:=qosify
12 PKG_SOURCE_URL=$(PROJECT_GIT)/project/qosify.git
13 PKG_SOURCE_PROTO:=git
14 PKG_SOURCE_DATE:=2021-11-01
15 PKG_SOURCE_VERSION:=52a57bf0e4eb2c6419be304981c5c94adb32d037
16 PKG_MIRROR_HASH:=11a5f2650cf9c4979455ca230eb9ceddb035e6914bda78cf75b8dd7ebaff65d3
17
18 PKG_LICENSE:=GPL-2.0
19 PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
20
21 PKG_BUILD_DEPENDS:=bpf-headers
22
23 include $(INCLUDE_DIR)/package.mk
24 include $(INCLUDE_DIR)/cmake.mk
25 include $(INCLUDE_DIR)/bpf.mk
26
27 define Package/qosify
28 SECTION:=kernel
29 CATEGORY:=Kernel modules
30 SUBMENU:=Network Support
31 TITLE:=A simple QoS solution based eBPF + CAKE
32 DEPENDS:=+libbpf +libubox +libubus +kmod-sched-cake +tc-full $(BPF_DEPENDS)
33 endef
34
35 define Build/Compile
36 $(call CompileBPF,$(PKG_BUILD_DIR)/qosify-bpf.c)
37 $(Build/Compile/Default)
38 endef
39
40 define Package/qosify/conffiles
41 /etc/config/qosify
42 /etc/qosify-defaults.conf
43 endef
44
45 define Package/qosify/install
46 $(INSTALL_DIR) $(1)/lib/bpf $(1)/usr/sbin $(1)/etc/init.d $(1)/etc/config $(1)/etc/hotplug.d/net
47 $(INSTALL_DATA) $(PKG_BUILD_DIR)/qosify-bpf.o $(1)/lib/bpf
48 $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/qosify $(1)/usr/sbin/
49 $(INSTALL_BIN) ./files/qosify.init $(1)/etc/init.d/qosify
50 $(INSTALL_DATA) ./files/qosify-defaults.conf $(1)/etc/qosify-defaults.conf
51 $(INSTALL_DATA) ./files/qosify.conf $(1)/etc/config/qosify
52 $(INSTALL_DATA) ./files/qosify.hotplug $(1)/etc/hotplug.d/net/10-qosify
53 endef
54
55 $(eval $(call BuildPackage,qosify))