Makefile 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  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:=2
  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. CONFLICTS:=nftables-json
  40. endef
  41. define Package/nftables-json
  42. $(Package/nftables/Default)
  43. TITLE+= with JSON support
  44. VARIANT:=json
  45. DEPENDS+=+jansson
  46. endef
  47. ifeq ($(BUILD_VARIANT),json)
  48. CONFIGURE_ARGS += --with-json
  49. endif
  50. TARGET_CFLAGS += -flto
  51. TARGET_LDFLAGS += -flto
  52. define Build/InstallDev
  53. $(INSTALL_DIR) $(1)/usr/lib $(1)/usr/include
  54. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  55. $(CP) $(PKG_INSTALL_DIR)/usr/include/nftables $(1)/usr/include/
  56. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  57. $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libnftables.pc \
  58. $(1)/usr/lib/pkgconfig/
  59. endef
  60. define Package/nftables/install/Default
  61. $(INSTALL_DIR) $(1)/usr/sbin
  62. $(CP) $(PKG_INSTALL_DIR)/usr/sbin/nft $(1)/usr/sbin/
  63. $(INSTALL_DIR) $(1)/usr/lib
  64. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  65. endef
  66. Package/nftables-nojson/install = $(Package/nftables/install/Default)
  67. Package/nftables-json/install = $(Package/nftables/install/Default)
  68. $(eval $(call BuildPackage,nftables-nojson))
  69. $(eval $(call BuildPackage,nftables-json))