e8050c6c35
* use libiptc and libxtables directly to manage ruleset, iptables-restore is unreliable and prone to race conditions * make ipset integration more reliable SVN-Revision: 36681
65 lines
2 KiB
Makefile
65 lines
2 KiB
Makefile
#
|
|
# Copyright (C) 2013 OpenWrt.org
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=firewall3
|
|
PKG_VERSION:=2013-05-21
|
|
PKG_RELEASE:=$(PKG_SOURCE_VERSION)
|
|
|
|
PKG_SOURCE_PROTO:=git
|
|
PKG_SOURCE_URL:=git://nbd.name/firewall3.git
|
|
PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
|
|
PKG_SOURCE_VERSION:=54904110e3122f4fcded32f5ff6ef30f7de7363c
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.gz
|
|
PKG_MAINTAINER:=Jo-Philipp Wich <jow@openwrt.org>
|
|
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
include $(INCLUDE_DIR)/kernel.mk
|
|
include $(INCLUDE_DIR)/cmake.mk
|
|
|
|
define Package/firewall3
|
|
SECTION:=net
|
|
CATEGORY:=Network
|
|
TITLE:=UCI C Firewall
|
|
DEPENDS:=+libubox +libubus +libuci +libip4tc +libip6tc +libxtables
|
|
endef
|
|
|
|
define Package/firewall3/description
|
|
This package provides a config-compatible C implementation of the UCI firewall.
|
|
endef
|
|
|
|
define Package/firewall3/conffiles
|
|
/etc/config/firewall
|
|
/etc/firewall.user
|
|
endef
|
|
|
|
define Build/Prepare
|
|
$(call Build/Prepare/Default)
|
|
$(CP) $(lastword $(wildcard $(KERNEL_BUILD_DIR)/iptables-*/extensions/libext.a)) $(PKG_BUILD_DIR)/libext.a
|
|
$(CP) $(lastword $(wildcard $(KERNEL_BUILD_DIR)/iptables-*/extensions/libext4.a)) $(PKG_BUILD_DIR)/libext4.a
|
|
$(CP) $(lastword $(wildcard $(KERNEL_BUILD_DIR)/iptables-*/extensions/libext6.a)) $(PKG_BUILD_DIR)/libext6.a
|
|
endef
|
|
|
|
TARGET_CFLAGS += -ffunction-sections -fdata-sections
|
|
TARGET_LDFLAGS += -Wl,--gc-sections
|
|
|
|
define Package/firewall3/install
|
|
$(INSTALL_DIR) $(1)/sbin
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/firewall3 $(1)/sbin/fw3
|
|
$(INSTALL_DIR) $(1)/etc/init.d
|
|
$(INSTALL_BIN) ./files/firewall.init $(1)/etc/init.d/firewall
|
|
$(INSTALL_DIR) $(1)/etc/hotplug.d/iface
|
|
$(INSTALL_DATA) ./files/firewall.hotplug $(1)/etc/hotplug.d/iface/20-firewall
|
|
$(INSTALL_DIR) $(1)/etc/config/
|
|
$(INSTALL_DATA) ./files/firewall.config $(1)/etc/config/firewall
|
|
$(INSTALL_DIR) $(1)/etc/
|
|
$(INSTALL_DATA) ./files/firewall.user $(1)/etc/firewall.user
|
|
endef
|
|
|
|
$(eval $(call BuildPackage,firewall3))
|