Makefile 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. # Copyright (C) 2015 OpenWrt.org
  2. #
  3. # This is free software, licensed under the GNU General Public License v2.
  4. # See /LICENSE for more information.
  5. #
  6. include $(TOPDIR)/rules.mk
  7. PKG_NAME:=nftables
  8. PKG_VERSION:=1.0.2
  9. PKG_RELEASE:=1
  10. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
  11. PKG_SOURCE_URL:=https://netfilter.org/projects/$(PKG_NAME)/files
  12. PKG_HASH:=0b28a36ffcf4567b841de7bd3f37918b1fed27859eb48bdec51e1f7a83954c02
  13. PKG_MAINTAINER:=
  14. PKG_LICENSE:=GPL-2.0
  15. PKG_FIXUP:=autoreconf
  16. PKG_INSTALL:=1
  17. include $(INCLUDE_DIR)/package.mk
  18. DISABLE_NLS:=
  19. CONFIGURE_ARGS += \
  20. --disable-debug \
  21. --disable-man-doc \
  22. --with-mini-gmp \
  23. --without-cli \
  24. --disable-python
  25. define Package/nftables/Default
  26. SECTION:=net
  27. CATEGORY:=Network
  28. SUBMENU:=Firewall
  29. TITLE:=nftables userspace utility
  30. DEPENDS:=+kmod-nft-core +libnftnl
  31. URL:=http://netfilter.org/projects/nftables/
  32. PROVIDES:=nftables
  33. endef
  34. define Package/nftables-nojson
  35. $(Package/nftables/Default)
  36. TITLE+= no JSON support
  37. VARIANT:=nojson
  38. DEFAULT_VARIANT:=1
  39. endef
  40. define Package/nftables-json
  41. $(Package/nftables/Default)
  42. TITLE+= with JSON support
  43. VARIANT:=json
  44. DEPENDS+=+jansson
  45. endef
  46. ifeq ($(BUILD_VARIANT),json)
  47. CONFIGURE_ARGS += --with-json
  48. endif
  49. TARGET_CFLAGS += -flto
  50. TARGET_LDFLAGS += -flto
  51. define Build/InstallDev
  52. $(INSTALL_DIR) $(1)/usr/lib $(1)/usr/include
  53. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  54. $(CP) $(PKG_INSTALL_DIR)/usr/include/nftables $(1)/usr/include/
  55. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  56. $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libnftables.pc \
  57. $(1)/usr/lib/pkgconfig/
  58. endef
  59. define Package/nftables/install/Default
  60. $(INSTALL_DIR) $(1)/usr/sbin
  61. $(CP) $(PKG_INSTALL_DIR)/usr/sbin/nft $(1)/usr/sbin/
  62. $(INSTALL_DIR) $(1)/usr/lib
  63. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  64. endef
  65. Package/nftables-nojson/install = $(Package/nftables/install/Default)
  66. Package/nftables-json/install = $(Package/nftables/install/Default)
  67. $(eval $(call BuildPackage,nftables-nojson))
  68. $(eval $(call BuildPackage,nftables-json))