2 # Makefile for the netfilter modules on top of IPv4.
4 # Note! Dependencies are done automagically by 'make dep', which also
5 # removes any old dependencies. DON'T put your own dependencies here
6 # unless it's something special (ie not a .c file).
8 # Note 2! The CFLAGS definition is now in the main makefile...
10 O_TARGET
:= netfilter.o
12 export-objs
= ip_conntrack_standalone.o ip_fw_compat.o ip_nat_standalone.o ip_tables.o arp_tables.o
15 list-multi
:= ip_conntrack.o iptable_nat.o ipfwadm.o ipchains.o
17 # objects for the conntrack and NAT core (used by standalone and backw. compat)
18 ip_nf_conntrack-objs
:= ip_conntrack_core.o ip_conntrack_proto_generic.o ip_conntrack_proto_tcp.o ip_conntrack_proto_udp.o ip_conntrack_proto_icmp.o
19 ip_nf_nat-objs
:= ip_nat_core.o ip_nat_helper.o ip_nat_proto_unknown.o ip_nat_proto_tcp.o ip_nat_proto_udp.o ip_nat_proto_icmp.o
21 # objects for the standalone - connection tracking / NAT
22 ip_conntrack-objs
:= ip_conntrack_standalone.o
$(ip_nf_conntrack-objs
)
23 iptable_nat-objs
:= ip_nat_standalone.o ip_nat_rule.o
$(ip_nf_nat-objs
)
25 # objects for backwards compatibility mode
26 ip_nf_compat-objs
:= ip_fw_compat.o ip_fw_compat_redir.o ip_fw_compat_masq.o
$(ip_nf_conntrack-objs
) $(ip_nf_nat-objs
)
28 ipfwadm-objs
:= $(ip_nf_compat-objs
) ipfwadm_core.o
29 ipchains-objs
:= $(ip_nf_compat-objs
) ipchains_core.o
32 obj-
$(CONFIG_IP_NF_CONNTRACK
) += ip_conntrack.o
35 obj-
$(CONFIG_IP_NF_H323
) += ip_conntrack_h323.o
36 ifdef CONFIG_IP_NF_H323
37 export-objs
+= ip_conntrack_h323.o
39 obj-
$(CONFIG_IP_NF_NAT_H323
) += ip_nat_h323.o
42 # connection tracking protocol helpers
43 obj-
$(CONFIG_IP_NF_CT_PROTO_GRE
) += ip_conntrack_proto_gre.o
44 ifdef CONFIG_IP_NF_CT_PROTO_GRE
45 export-objs
+= ip_conntrack_proto_gre.o
48 # NAT protocol helpers
49 obj-
$(CONFIG_IP_NF_NAT_PROTO_GRE
) += ip_nat_proto_gre.o
51 # connection tracking protocol helpers
52 obj-
$(CONFIG_IP_NF_CT_PROTO_ESP
) += ip_conntrack_proto_esp.o
53 ifdef CONFIG_IP_NF_CT_PROTO_ESP
54 export-objs
+= ip_conntrack_proto_esp.o
57 # NAT protocol helpers
58 obj-
$(CONFIG_IP_NF_NAT_PROTO_ESP
) += ip_nat_proto_esp.o
60 # connection tracking helpers
61 obj-
$(CONFIG_IP_NF_QUAKE3
) += ip_conntrack_quake3.o
62 ifdef CONFIG_IP_NF_NAT_QUAKE3
63 export-objs
+= ip_conntrack_quake3.o
65 obj-
$(CONFIG_IP_NF_MMS
) += ip_conntrack_mms.o
66 ifdef CONFIG_IP_NF_NAT_MMS
67 export-objs
+= ip_conntrack_mms.o
69 obj-
$(CONFIG_IP_NF_PPTP
) += ip_conntrack_pptp.o
70 ifdef CONFIG_IP_NF_NAT_PPTP
71 export-objs
+= ip_conntrack_pptp.o
73 obj-
$(CONFIG_IP_NF_SIP
) += ip_conntrack_sip.o
74 ifdef CONFIG_IP_NF_NAT_SIP
75 export-objs
+= ip_conntrack_sip.o
77 obj-
$(CONFIG_IP_NF_TFTP
) += ip_conntrack_tftp.o
78 obj-
$(CONFIG_IP_NF_FTP
) += ip_conntrack_ftp.o
79 ifdef CONFIG_IP_NF_NAT_FTP
80 export-objs
+= ip_conntrack_ftp.o
82 obj-
$(CONFIG_IP_NF_IRC
) += ip_conntrack_irc.o
83 ifdef CONFIG_IP_NF_NAT_IRC
84 export-objs
+= ip_conntrack_irc.o
87 # rtsp protocol support
88 obj-
$(CONFIG_IP_NF_RTSP
) += ip_conntrack_rtsp.o
89 ifdef CONFIG_IP_NF_NAT_RTSP
90 export-objs
+= ip_conntrack_rtsp.o
92 obj-
$(CONFIG_IP_NF_NAT_RTSP
) += ip_nat_rtsp.o
95 obj-
$(CONFIG_IP_NF_NAT_CUSEEME
) += ip_nat_cuseeme.o
96 obj-
$(CONFIG_IP_NF_NAT_PPTP
) += ip_nat_pptp.o
97 obj-
$(CONFIG_IP_NF_NAT_SIP
) += ip_nat_sip.o
98 obj-
$(CONFIG_IP_NF_NAT_TFTP
) += ip_nat_tftp.o
99 obj-
$(CONFIG_IP_NF_NAT_FTP
) += ip_nat_ftp.o
100 obj-
$(CONFIG_IP_NF_NAT_IRC
) += ip_nat_irc.o
101 obj-
$(CONFIG_IP_NF_NAT_QUAKE3
) += ip_nat_quake3.o
102 obj-
$(CONFIG_IP_NF_NAT_MMS
) += ip_nat_mms.o
105 obj-
$(CONFIG_IP_NF_IPTABLES
) += ip_tables.o
107 # the three instances of ip_tables
108 obj-
$(CONFIG_IP_NF_FILTER
) += iptable_filter.o
109 obj-
$(CONFIG_IP_NF_MANGLE
) += iptable_mangle.o
110 obj-
$(CONFIG_IP_NF_NAT
) += iptable_nat.o
113 obj-
$(CONFIG_IP_NF_MATCH_HELPER
) += ipt_helper.o
114 obj-
$(CONFIG_IP_NF_MATCH_LIMIT
) += ipt_limit.o
115 obj-
$(CONFIG_IP_NF_MATCH_GEOIP
) += ipt_geoip.o
116 obj-
$(CONFIG_IP_NF_MATCH_QUOTA
) += ipt_quota.o
117 obj-
$(CONFIG_IP_NF_MATCH_IPRANGE
) += ipt_iprange.o
118 obj-
$(CONFIG_IP_NF_MATCH_MARK
) += ipt_mark.o
119 obj-
$(CONFIG_IP_NF_POOL
) += ipt_pool.o ip_pool.o
120 obj-
$(CONFIG_IP_NF_MATCH_MAC
) += ipt_mac.o
121 obj-
$(CONFIG_IP_NF_MATCH_PKTTYPE
) += ipt_pkttype.o
122 obj-
$(CONFIG_IP_NF_MATCH_MULTIPORT
) += ipt_multiport.o
123 obj-
$(CONFIG_IP_NF_MATCH_MPORT
) += ipt_mport.o
124 obj-
$(CONFIG_IP_NF_MATCH_OWNER
) += ipt_owner.o
125 obj-
$(CONFIG_IP_NF_MATCH_TOS
) += ipt_tos.o
126 obj-
$(CONFIG_IP_NF_MATCH_RECENT
) += ipt_recent.o
127 obj-
$(CONFIG_IP_NF_MATCH_ACCOUNT
) += ipt_account.o
128 obj-
$(CONFIG_IP_NF_MATCH_CONDITION
) += ipt_condition.o
129 obj-
$(CONFIG_IP_NF_MATCH_TIME
) += ipt_time.o
130 obj-
$(CONFIG_IP_NF_MATCH_ECN
) += ipt_ecn.o
131 obj-
$(CONFIG_IP_NF_MATCH_DSCP
) += ipt_dscp.o
132 obj-
$(CONFIG_IP_NF_MATCH_AH_ESP
) += ipt_ah.o ipt_esp.o
133 obj-
$(CONFIG_IP_NF_MATCH_LENGTH
) += ipt_length.o
134 obj-
$(CONFIG_IP_NF_MATCH_U32
) += ipt_u32.o
135 obj-
$(CONFIG_IP_NF_MATCH_TTL
) += ipt_ttl.o
136 obj-
$(CONFIG_IP_NF_MATCH_STATE
) += ipt_state.o
137 obj-
$(CONFIG_IP_NF_MATCH_CONNLIMIT
) += ipt_connlimit.o
138 obj-
$(CONFIG_IP_NF_MATCH_CONNMARK
) += ipt_connmark.o
139 obj-
$(CONFIG_IP_NF_MATCH_CONNTRACK
) += ipt_conntrack.o
140 obj-
$(CONFIG_IP_NF_MATCH_UNCLEAN
) += ipt_unclean.o
141 obj-
$(CONFIG_IP_NF_MATCH_STRING
) += ipt_string.o
142 obj-
$(CONFIG_IP_NF_MATCH_WEBSTR
) += ipt_webstr.o
143 obj-
$(CONFIG_IP_NF_MATCH_TCPMSS
) += ipt_tcpmss.o
144 obj-
$(CONFIG_IP_NF_MATCH_LAYER7
) += ipt_layer7.o
145 obj-
$(CONFIG_IP_NF_MATCH_WEB
) += ipt_web.o
146 obj-
$(CONFIG_IP_NF_MATCH_MACSAVE
) += ipt_macsave.o
147 obj-
$(CONFIG_IP_NF_MATCH_EXP
) += ipt_exp.o
148 obj-
$(CONFIG_IP_NF_MATCH_BCOUNT
) += ipt_bcount.o
151 obj-
$(CONFIG_IP_NF_TARGET_REJECT
) += ipt_REJECT.o
152 obj-
$(CONFIG_IP_NF_TARGET_MIRROR
) += ipt_MIRROR.o
153 obj-
$(CONFIG_IP_NF_TARGET_CLASSIFY
) += ipt_CLASSIFY.o
154 obj-
$(CONFIG_IP_NF_TARGET_TOS
) += ipt_TOS.o
155 obj-
$(CONFIG_IP_NF_TARGET_ECN
) += ipt_ECN.o
156 obj-
$(CONFIG_IP_NF_TARGET_DSCP
) += ipt_DSCP.o
157 obj-
$(CONFIG_IP_NF_TARGET_MARK
) += ipt_MARK.o
158 obj-
$(CONFIG_IP_NF_TARGET_IMQ
) += ipt_IMQ.o
159 obj-
$(CONFIG_IP_NF_TARGET_MASQUERADE
) += ipt_MASQUERADE.o
160 ifdef CONFIG_IP_NF_TARGET_MASQUERADE
161 export-objs
+= ipt_MASQUERADE.o
163 obj-
$(CONFIG_IP_NF_TARGET_REDIRECT
) += ipt_REDIRECT.o
164 obj-
$(CONFIG_IP_NF_NAT_SNMP_BASIC
) += ip_nat_snmp_basic.o
165 obj-
$(CONFIG_IP_NF_TARGET_LOG
) += ipt_LOG.o
166 obj-
$(CONFIG_IP_NF_TARGET_CONNMARK
) += ipt_CONNMARK.o
167 obj-
$(CONFIG_IP_NF_TARGET_TTL
) += ipt_TTL.o
168 obj-
$(CONFIG_IP_NF_TARGET_ULOG
) += ipt_ULOG.o
169 obj-
$(CONFIG_IP_NF_TARGET_TCPMSS
) += ipt_TCPMSS.o
170 obj-
$(CONFIG_IP_NF_AUTOFW
) += ip_autofw.o
171 obj-
$(CONFIG_IP_NF_TARGET_TRIGGER
) += ipt_TRIGGER.o
172 obj-
$(CONFIG_IP_NF_TARGET_MACSAVE
) += ipt_MACSAVE.o
173 obj-
$(CONFIG_IP_NF_TARGET_BCOUNT
) += ipt_BCOUNT.o
176 obj-
$(CONFIG_IP_NF_ARPTABLES
) += arp_tables.o
178 # just filtering instance of ARP tables for now
179 obj-
$(CONFIG_IP_NF_ARPFILTER
) += arptable_filter.o
181 # backwards compatibility
182 obj-
$(CONFIG_IP_NF_COMPAT_IPCHAINS
) += ipchains.o
183 obj-
$(CONFIG_IP_NF_COMPAT_IPFWADM
) += ipfwadm.o
185 obj-
$(CONFIG_IP_NF_QUEUE
) += ip_queue.o
187 obj-
$(CONFIG_IP_NF_TOMATOCT
) += tomato_ct.o
189 include $(TOPDIR
)/Rules.make
191 ip_conntrack.o
: $(ip_conntrack-objs
)
192 $(LD
) -r
-o
$@
$(ip_conntrack-objs
)
194 iptable_nat.o
: $(iptable_nat-objs
)
195 $(LD
) -r
-o
$@
$(iptable_nat-objs
)
197 ipfwadm.o
: $(ipfwadm-objs
)
198 $(LD
) -r
-o
$@
$(ipfwadm-objs
)
200 ipchains.o
: $(ipchains-objs
)
201 $(LD
) -r
-o
$@
$(ipchains-objs
)