You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

97 lines
3.4 KiB

  1. #
  2. # Copyright (C) 2008-2012 OpenWrt.org
  3. # Copyright (C) 2017 Willem van den Akker <wvdakker@wilsoft.nl>
  4. #
  5. # This is free software, licensed under the GNU General Public License v2.
  6. # See /LICENSE for more information.
  7. #
  8. include $(TOPDIR)/rules.mk
  9. PKG_NAME:=shorewall
  10. PKG_MAJOR_MINOR_VERSION:=5.2
  11. PKG_BUGFIX_MAJOR_VERSION:=8
  12. PKG_BUGFIX_MINOR_VERSION:=
  13. PKG_VERSION:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)$(PKG_BUGFIX_MINOR_VERSION)
  14. PKG_DIRECTORY:=$(PKG_MAJOR_MINOR_VERSION).$(PKG_BUGFIX_MAJOR_VERSION)
  15. PKG_RELEASE:=2
  16. PKG_SOURCE_URL:=http://shorewall.org/pub/shorewall/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/ \
  17. http://slovakia.shorewall.net/pub/shorewall/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/ \
  18. http://www.shorewall.no/pub/shorewall/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/ \
  19. http://france.shorewall.net/$(PKG_MAJOR_MINOR_VERSION)/shorewall-$(PKG_DIRECTORY)/
  20. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
  21. PKG_HASH:=fbb5ab492ed372eaaf02817cc730f82c49a81c5a5f5cee4bc8f1bce846f2306d
  22. PKG_BUILD_DEPENDS:=HOST_OS_MACOS:fakeuname/host
  23. PKG_MAINTAINER:=Willem van den Akker <wvdakker@wilsoft.nl>
  24. PKG_LICENSE:=GPL-2.0-or-later
  25. PKG_LICENSE_FILES:=COPYING
  26. include $(INCLUDE_DIR)/package.mk
  27. ifeq ($(CONFIG_HOST_OS_MACOS),y)
  28. include ../../utils/fakeuname/fakeuname.mk
  29. endif
  30. define Package/shorewall
  31. SECTION:=devel
  32. CATEGORY:=Network
  33. DEPENDS:=+ip +iptables +kmod-ipt-hashlimit +kmod-ipt-raw +iptables-mod-hashlimit +shorewall-core \
  34. +perl +perlbase-autoloader +perlbase-autouse +perlbase-dynaloader +perlbase-digest \
  35. +perlbase-findbin +perlbase-getopt +perlbase-hash
  36. TITLE:=Shorewall Central Administration System
  37. URL:=http://www.shorewall.net/
  38. SUBMENU:=Firewall
  39. endef
  40. define Package/shorewall/description
  41. The Shoreline Firewall, is high-level tool for configuring Netfilter.
  42. Shorewall allows for central administration of multiple IPv4 firewalls.
  43. This is the full Shorewall product which will compile Shorewall scripts.
  44. It is not recommended to run it on a low memory system.
  45. Note: This is the IPv4 implementation of Shorewall.
  46. This full Shorewal packages also installs Perl which can make the image big (about +2M).
  47. endef
  48. CONFIGURE_ARGS += \
  49. vendor=openwrt
  50. # MacOS bash is too old for shorewall, use OpenWrt host tools/bash built for macos hosts
  51. # use fakeuname to avoid 'if `uname` is Darwin' checks
  52. MACOS_ENV := \
  53. PATH=$(FAKEUNAME_PATH):$(TARGET_PATH_PKG) \
  54. $(BASH)
  55. CONFIGURE_VARS += \
  56. $(if $(CONFIG_HOST_OS_MACOS),$(MACOS_ENV))
  57. define Build/Compile
  58. DESTDIR=$(PKG_INSTALL_DIR) \
  59. $(if $(CONFIG_HOST_OS_MACOS),$(MACOS_ENV)) \
  60. $(PKG_BUILD_DIR)/install.sh
  61. endef
  62. define Package/shorewall/conffiles
  63. /etc/shorewall/
  64. endef
  65. define Package/shorewall/install
  66. $(INSTALL_DIR) $(1)/etc/init.d/
  67. $(INSTALL_DIR) $(1)/etc/hotplug.d/iface/
  68. $(INSTALL_DIR) $(1)/etc/shorewall/
  69. $(INSTALL_DIR) $(1)/usr/lib/shorewall/
  70. $(INSTALL_DIR) $(1)/usr/sbin/
  71. $(INSTALL_DIR) $(1)/usr/share/shorewall/
  72. $(INSTALL_BIN) ./files/hotplug_iface $(1)/etc/hotplug.d/iface/05-shorewall
  73. $(INSTALL_BIN) ./files/hostname $(1)/etc/shorewall/
  74. $(INSTALL_BIN) ./files/shorewall.init $(1)/etc/init.d/shorewall
  75. $(INSTALL_BIN) ./files/vardir $(1)/etc/shorewall/
  76. $(CP) $(PKG_INSTALL_DIR)/etc/shorewall/. $(1)/etc/shorewall/
  77. $(CP) $(PKG_INSTALL_DIR)/usr/lib/shorewall/. $(1)/usr/lib/shorewall/
  78. $(CP) $(PKG_INSTALL_DIR)/usr/share/shorewall/. $(1)/usr/share/shorewall/
  79. endef
  80. $(eval $(call BuildPackage,shorewall))