2
0

Makefile 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Copyright (C) 2015 OpenWrt.org
  4. #
  5. include $(TOPDIR)/rules.mk
  6. PKG_NAME:=nftables
  7. PKG_VERSION:=1.0.6
  8. PKG_RELEASE:=1
  9. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
  10. PKG_SOURCE_URL:=https://netfilter.org/projects/$(PKG_NAME)/files
  11. PKG_HASH:=2407430ddd82987670e48dc2fda9e280baa8307abec04ab18d609df3db005e4c
  12. PKG_MAINTAINER:=
  13. PKG_LICENSE:=GPL-2.0
  14. PKG_LICENSE_FILES:=COPYING
  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))