2 # Copyright (C) 2013 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
11 PKG_VERSION
:=2013-06-04
12 PKG_RELEASE
:=$(PKG_SOURCE_VERSION
)
15 PKG_SOURCE_URL
:=git
://nbd.name
/firewall3.git
16 PKG_SOURCE_SUBDIR
:=$(PKG_NAME
)-$(PKG_VERSION
)
17 PKG_SOURCE_VERSION
:=182abe47ae4686944482580b42a972827a0e4b51
18 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
)-$(PKG_SOURCE_VERSION
).
tar.gz
19 PKG_MAINTAINER
:=Jo-Philipp Wich
<jow@openwrt.org
>
22 include $(INCLUDE_DIR
)/package.mk
23 include $(INCLUDE_DIR
)/kernel.mk
24 include $(INCLUDE_DIR
)/cmake.mk
26 define Package
/firewall3
30 DEPENDS
:=+libubox
+libubus
+libuci
+libip4tc
+IPV6
:libip6tc
+libxtables
33 define Package
/firewall3
/description
34 This package provides a config-compatible C implementation of the UCI firewall.
37 define Package
/firewall3
/conffiles
42 define Build
/Configure
43 $(foreach file
,$(lastword
$(wildcard $(KERNEL_BUILD_DIR
)/iptables-
*/extensions
/libext.a
)),$(CP
) $(file
) $(PKG_BUILD_DIR
)/libext.a
)
44 $(foreach file
,$(lastword
$(wildcard $(KERNEL_BUILD_DIR
)/iptables-
*/extensions
/libext4.a
)),$(CP
) $(file
) $(PKG_BUILD_DIR
)/libext4.a
)
45 $(foreach file
,$(lastword
$(wildcard $(KERNEL_BUILD_DIR
)/iptables-
*/extensions
/libext6.a
)),$(CP
) $(file
) $(PKG_BUILD_DIR
)/libext6.a
)
46 $(call Build
/Configure
/Default
)
49 TARGET_CFLAGS
+= -ffunction-sections
-fdata-sections
50 TARGET_LDFLAGS
+= -Wl
,--gc-sections
51 CMAKE_OPTIONS
+= $(if
$(CONFIG_IPV6
),,-DDISABLE_IPV6
=1)
53 define Package
/firewall3
/install
54 $(INSTALL_DIR
) $(1)/sbin
55 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/firewall3
$(1)/sbin
/fw3
56 $(INSTALL_DIR
) $(1)/etc
/init.d
57 $(INSTALL_BIN
) .
/files
/firewall.init
$(1)/etc
/init.d
/firewall
58 $(INSTALL_DIR
) $(1)/etc
/hotplug.d
/iface
59 $(INSTALL_DATA
) .
/files
/firewall.hotplug
$(1)/etc
/hotplug.d
/iface
/20-firewall
60 $(INSTALL_DIR
) $(1)/etc
/config
/
61 $(INSTALL_DATA
) .
/files
/firewall.config
$(1)/etc
/config
/firewall
62 $(INSTALL_DIR
) $(1)/etc
/
63 $(INSTALL_DATA
) .
/files
/firewall.user
$(1)/etc
/firewall.user
66 $(eval
$(call BuildPackage
,firewall3
))