2 # Copyright (C) 2009-2012 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
9 include $(INCLUDE_DIR
)/kernel.mk
11 PKG_NAME
:=xtables-addons
15 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.xz
16 PKG_MD5SUM
:=a8de5e5e5823aefcbab210159f122564
17 PKG_SOURCE_URL
:=@SF
/xtables-addons
18 PKG_BUILD_DEPENDS
:=iptables
24 include $(INCLUDE_DIR
)/package.mk
26 define Package
/xtables-addons
30 TITLE
:=Extensions not distributed in the main Xtables
31 URL
:=http
://xtables-addons.sourceforge.net
/
37 --with-kbuild
="$(LINUX_DIR)" \
38 --with-xtables
="$(STAGING_DIR)/usr" \
39 --with-xtlibdir
="/usr/lib/iptables" \
42 $(MAKE
) $(PKG_JOBS
) -C
$(PKG_BUILD_DIR
) \
43 ARCH
="$(LINUX_KARCH)" \
44 CROSS_COMPILE
="$(TARGET_CROSS)" \
45 DESTDIR
="$(PKG_INSTALL_DIR)" \
47 LDFLAGS
="$(TARGET_LDFLAGS)" \
52 $(MAKE
) -C
$(PKG_BUILD_DIR
) \
53 ARCH
="$(LINUX_KARCH)" \
54 CROSS_COMPILE
="$(TARGET_CROSS)" \
55 DESTDIR
="$(PKG_INSTALL_DIR)" \
57 LDFLAGS
="$(TARGET_LDFLAGS)" \
61 # 1: extension/module suffix used in package name
62 # 2: extension/module display name used in package title/description
63 # 3: list of extensions to package
64 # 4: list of modules to package
65 # 5: module load priority
70 define Package
/iptables-mod-
$(1)
71 $$(call Package
/xtables-addons
)
73 TITLE
:=$(2) iptables extension
74 DEPENDS
:= @
!LINUX_2_4 iptables
$(if
$(4),+kmod-ipt-
$(1))
77 define Package
/iptables-mod-
$(1)/install
78 $(INSTALL_DIR
) $$(1)/usr
/lib
/iptables
81 $(PKG_INSTALL_DIR
)/usr
/lib
/iptables
/lib
$$$$$$$${m}.so \
82 $$(1)/usr
/lib
/iptables
/ ; \
86 $$(eval
$$(call BuildPackage
,iptables-mod-
$(1)))
90 define KernelPackage
/ipt-
$(1)
91 SUBMENU
:=Netfilter Extensions
92 TITLE
:=$(2) netfilter module
93 DEPENDS
:= @
!LINUX_2_4 kmod-ipt-core
$(6)
94 FILES
:=$(foreach mod
,$(4),$(PKG_BUILD_DIR
)/extensions
/$(mod
).
$(LINUX_KMOD_SUFFIX
))
95 AUTOLOAD
:=$(call AutoLoad
,$(5),$(notdir $(4)))
98 $$(eval
$$(call KernelPackage
,ipt-
$(1)))
103 #$(eval $(call BuildTemplate,SUFFIX,DESCRIPTION,EXTENSION,MODULE,PRIORITY,DEPENDS))
104 $(eval
$(call BuildTemplate
,compat-xtables
,API compatibilty layer
,,compat_xtables
,45,))
105 $(eval
$(call BuildTemplate
,chaos
,CHAOS
,xt_CHAOS
,xt_CHAOS
,47,+kmod-ipt-compat-xtables
+kmod-ipt-delude
+kmod-ipt-tarpit
))
106 $(eval
$(call BuildTemplate
,condition
,Condition
,xt_condition
,xt_condition
,46,))
107 $(eval
$(call BuildTemplate
,delude
,DELUDE
,xt_DELUDE
,xt_DELUDE
,46,+kmod-ipt-compat-xtables
))
108 $(eval
$(call BuildTemplate
,tarpit
,TARPIT
,xt_TARPIT
,xt_TARPIT
,46,+kmod-ipt-compat-xtables
))
109 $(eval
$(call BuildTemplate
,ipp2p
,IPP2P
,xt_ipp2p
,xt_ipp2p
,46,))
110 $(eval
$(call BuildTemplate
,rawpost
,RAWPOST
,,iptable_rawpost
$(if
$(CONFIG_IPV6
),ip6table_rawpost
),50,+kmod-ipt-compat-xtables
))
111 $(eval
$(call BuildTemplate
,rawnat
,RAWNAT
,xt_RAWDNAT xt_RAWSNAT
,xt_RAWNAT
,46,+kmod-ipt-compat-xtables
))
112 $(eval
$(call BuildTemplate
,nathelper-rtsp
,RTSP Conntrack and NAT
,,rtsp
/nf_conntrack_rtsp rtsp
/nf_nat_rtsp
,46,+kmod-ipt-conntrack-extra
))