# # Copyright (C) 2017 Banglang Huang # # 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:=libpfring PKG_VERSION:=8.6.1 PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_VERSION:=$(PKG_VERSION) PKG_SOURCE_URL:=https://github.com/ntop/PF_RING PKG_MIRROR_HASH:=2c4623e4a3cd601a94cfdaf748e0cd7aa93e8ec850d3cd4c2ec5d33419e45fbb PKG_MAINTAINER:=Banglang Huang PKG_FIXUP:=patch-libtool PKG_INSTALL:=1 PKG_BUILD_PARALLEL:=1 include $(INCLUDE_DIR)/package.mk CONFIGURE_PATH:=userland MAKE_PATH:=userland/lib define Package/libpfring SECTION:=libs CATEGORY:=Libraries TITLE:=Library for PR_RING (package process framework) URL:=https://github.com/ntop/pf_ring DEPENDS:=+kmod-pf-ring +libpcap +libpthread LICENSE:=LGPL-2.1-or-later LICENSE_FILES:=LICENSE endef define Package/libpfring/description PF_RING is a high speed packet capture library that turns a commodity PC into an efficient and cheap network measurement box suitable for both packet and active traffic analysis and manipulation. Moreover, PF_RING opens totally new markets as it enables the creation of efficient application such as traffic balancers or packet filters in a matter of lines of codes. endef define KernelPackage/pf-ring SUBMENU:=Network Support TITLE:=PF_RING Kernel driver FILES:=$(PKG_BUILD_DIR)/kernel/pf_ring.ko AUTOLOAD:=$(call AutoLoad,90,pf_ring,1) LICENSE:=GPL-2.0-or-later endef define KernelPackage/pf-ring/description Kernel module for libpf-ring package endef CONFIGURE_VARS += \ MACHINE="$(ARCH)" \ ac_cv_lib_nl_3_nl_socket_alloc=no define Build/Compile $(MAKE) -C "$(LINUX_DIR)" \ KERNEL_DIR="$(LINUX_DIR)" \ ARCH="$(LINUX_KARCH)" \ CROSS_COMPILE="$(TARGET_CROSS)" \ M="$(PKG_BUILD_DIR)/kernel" \ EXTRA_CFLAGS="$(EXTRA_CFLAGS) -I$(PKG_BUILD_DIR)/kernel" \ modules $(call Build/Compile/Default) endef define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include/ $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/ $(INSTALL_DIR) $(1)/usr/lib $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpfring.so* $(1)/usr/lib/ endef define Package/libpfring/install $(INSTALL_DIR) $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libpfring.so* $(1)/usr/lib/ $(LN) libpfring.so $(1)/usr/lib/libpfring.so.1 endef $(eval $(call BuildPackage,libpfring)) $(eval $(call KernelPackage,pf-ring))