# # Copyright (C) 2017-2019 Chen Minqiang # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. # include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/kernel.mk PKG_NAME:=natflow PKG_VERSION:=20260930 PKG_RELEASE:=92 PKG_SOURCE:=$(PKG_VERSION).tar.xz PKG_SOURCE_URL:=https://github.com/ptpt52/natflow.git PKG_SOURCE_PROTO:=git PKG_SOURCE_VERSION:=a6718c5be741da1a6569e1bd0cac4e4ad159f07d PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) PKG_MAINTAINER:=Chen Minqiang PKG_LICENSE:=GPL-2.0 include $(INCLUDE_DIR)/package.mk define KernelPackage/natflow CATEGORY:=X SUBMENU:=Fast Forward Stacks TITLE:=natflow kernel driver KCONFIG:= \ CONFIG_NETFILTER_INGRESS=y FILES:=$(PKG_BUILD_DIR)/natflow.ko AUTOLOAD:=$(call AutoLoad,96,natflow) DEPENDS:= +kmod-ipt-conntrack +kmod-ipt-nat +kmod-ipt-ipset endef define KernelPackage/natflow/description fast nat forward kmod endef include $(INCLUDE_DIR)/kernel-defaults.mk EXTRA_CFLAGS += \ -Wno-stringop-overread \ -DCONFIG_NATFLOW_PATH \ -DNATFLOW_VERSION=\\\"$(PKG_VERSION)-$(shell echo $(PKG_SOURCE_VERSION) | head -c7)\\\" define Build/Compile/natflow +$(MAKE) $(PKG_JOBS) -C "$(LINUX_DIR)" \ EXTRA_CFLAGS="$(EXTRA_CFLAGS)" \ $(KERNEL_MAKE_FLAGS) \ M="$(PKG_BUILD_DIR)" \ modules endef define Build/Compile $(call Build/Compile/natflow) endef define Package/natflow-boot CATEGORY:=X SUBMENU:=Fast Forward Stacks TITLE:=natflow boot system scripts PKGARCH:=all DEPENDS:= +kmod-natflow endef define Package/natflow-boot/conffiles /etc/config/natflow endef define Package/natflow-boot/install $(INSTALL_DIR) $(1)/etc/init.d \ $(1)/etc/config \ $(1)/etc/hotplug.d/iface \ $(1)/etc/hotplug.d/net $(INSTALL_BIN) ./files/natflow-boot.init $(1)/etc/init.d/natflow-boot $(INSTALL_CONF) ./files/natflow-boot.config $(1)/etc/config/natflow $(INSTALL_BIN) ./files/natflow-boot.hotplug $(1)/etc/hotplug.d/iface/90-natflow $(INSTALL_BIN) ./files/natflow-boot.hotplug $(1)/etc/hotplug.d/net/90-natflow endef $(eval $(call KernelPackage,natflow)) $(eval $(call BuildPackage,natflow-boot))