finally kill KMOD_template - removes a big chunk of legacy build code
[openwrt.git] / package / kernel / modules / network.mk
1
2 # Copyright (C) 2006 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8
9 NSMENU:=Network Support
10
11 define KernelPackage/atm
12   TITLE:=ATM support
13   DEPENDS:=@ATM_SUPPORT
14   DESCRIPTION:= \
15     Kernel modules for ATM support
16   FILES:= \
17     $(MODULES_DIR)/kernel/net/atm/atm.$(LINUX_KMOD_SUFFIX) \
18     $(MODULES_DIR)/kernel/net/atm/br2684.$(LINUX_KMOD_SUFFIX)
19   KCONFIG:=$(CONFIG_ATM)
20   SUBMENU:=$(NSMENU)
21   AUTOLOAD:=$(call AutoLoad,30,atm)
22 endef
23 $(eval $(call KernelPackage,atm))
24
25 define KernelPackage/atmtcp
26   TITLE:=ATM over TCP
27   DESCRIPTION:= \
28     Kernel module for ATM over TCP support
29   DEPENDS:=@LINUX_2_6 kmod-atm
30   FILES:=$(MODULES_DIR)/kernel/drivers/atm/atmtcp.$(LINUX_KMOD_SUFFIX)
31   KCONFIG:=$(CONFIG_ATM_TCP)
32   SUBMENU:=$(NSMENU)
33   AUTOLOAD:=$(call AutoLoad,40,atmtcp)
34 endef
35 $(eval $(call KernelPackage,atmtcp))
36
37
38 define KernelPackage/ipip
39   TITLE:=IP in IP encapsulation support
40   DESCRIPTION:=\
41         Kernel modules for IP in IP encapsulation
42   KCONFIG:=$(CONFIG_NET_IPIP)
43   SUBMENU:=$(NSMENU)
44 endef
45 $(eval $(call KernelPackage,ipip))
46
47 define KernelPackage/ipip/2.4
48   FILES:=$(MODULES_DIR)/kernel/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX)
49   AUTOLOAD:=$(call AutoLoad,30,ipip)
50 endef
51
52 define KernelPackage/ipip/2.6
53   FILES:= \
54         $(MODULES_DIR)/kernel/net/ipv4/ipip.$(LINUX_KMOD_SUFFIX) \
55         $(MODULES_DIR)/kernel/net/ipv4/tunnel4.$(LINUX_KMOD_SUFFIX)
56   AUTOLOAD:=$(call AutoLoad,30,ipip tunnel4)
57 endef
58
59
60 define KernelPackage/ipsec
61   TITLE:=IPsec related modules (IPv4 and IPv6)
62   DESCRIPTION:=\
63         Kernel modules for IPsec support in both IPv4 and IPv6.\\\
64         Includes:\\\
65         - af_key\\\
66         - xfrm_user
67   SUBMENU:=$(NSMENU)
68   DEPENDS:=@LINUX_2_6
69   FILES:=\
70         $(MODULES_DIR)/kernel/net/key/af_key.$(LINUX_KMOD_SUFFIX) \
71         $(MODULES_DIR)/kernel/net/xfrm/xfrm_user.$(LINUX_KMOD_SUFFIX)
72 endef
73 $(eval $(call KernelPackage,ipsec))
74
75 define KernelPackage/ipsec4
76   TITLE:=IPsec related modules (IPv4)
77   DESCRIPTION:=\
78         Kernel modules for IPsec support in IPv4.\\\
79         Includes:\\\
80         - ah4\\\
81         - esp4\\\
82         - ipcomp\\\
83         - xfrm4_tunnel
84   SUBMENU:=$(NSMENU)
85   DEPENDS:=kmod-ipsec
86   FILES:=\
87         $(MODULES_DIR)/kernel/net/ipv4/{ah4,esp4,ipcomp,xfrm4_tunnel}.$(LINUX_KMOD_SUFFIX)
88 endef
89 $(eval $(call KernelPackage,ipsec4))
90
91 define KernelPackage/ipsec6
92   TITLE:=IPsec related modules (IPv6)
93   DESCRIPTION:=\
94         Kernel modules for IPsec support in IPv6.\\\
95         Includes:\\\
96         - ah6\\\
97         - esp6\\\
98         - ipcomp6\\\
99         - xfrm6_tunnel
100   SUBMENU:=$(NSMENU)
101   DEPENDS:=kmod-ipsec
102   FILES:=\
103         $(MODULES_DIR)/kernel/net/ipv6/{ah6,esp6,ipcomp6,xfrm6_tunnel}.$(LINUX_KMOD_SUFFIX)
104 endef
105 $(eval $(call KernelPackage,ipsec6))
106
107
108 define KernelPackage/ipv6
109   TITLE:=IPv6 support
110   DESCRIPTION:=\
111         Kernel modules for IPv6 support
112   KCONFIG:=$(CONFIG_IPV6)
113   FILES:=$(MODULES_DIR)/kernel/net/ipv6/ipv6.$(LINUX_KMOD_SUFFIX)
114   SUBMENU:=$(NSMENU)
115 endef
116 $(eval $(call KernelPackage,ipv6))
117
118
119 define KernelPackage/gre
120   TITLE:=GRE support
121   DESCRIPTION:=\
122         Generic Routing Encapsulation support
123   KCONFIG=$(CONFIG_NET_IPGRE)
124   FILES=$(MODULES_DIR)/kernel/net/ipv4/ip_gre.$(LINUX_KMOD_SUFFIX)
125   SUBMENU:=$(NSMENU)
126 endef
127 $(eval $(call KernelPackage,gre))
128
129
130 define KernelPackage/tun
131   TITLE:=Universal TUN/TAP driver
132   DESCRIPTION:=\
133         Kernel support for the TUN/TAP tunneling device
134   KCONFIG:=$(CONFIG_TUN)
135   FILES:=$(MODULES_DIR)/kernel/drivers/net/tun.$(LINUX_KMOD_SUFFIX)
136   SUBMENU:=$(NSMENU)
137   AUTOLOAD:=$(call AutoLoad,30,tun)
138 endef
139 $(eval $(call KernelPackage,tun))
140
141
142 define KernelPackage/ppp
143   TITLE:=PPP modules
144   DESCRIPTION:=\
145         Kernel modules for PPP support
146   KCONFIG:=$(CONFIG_PPP)
147   SUBMENU:=$(NSMENU)
148 endef
149
150 define KernelPackage/ppp/2.6
151   FILES:= \
152         $(MODULES_DIR)/kernel/drivers/net/ppp_async.ko \
153         $(MODULES_DIR)/kernel/drivers/net/ppp_generic.ko \
154         $(MODULES_DIR)/kernel/drivers/net/slhc.ko \
155         $(MODULES_DIR)/kernel/lib/crc-ccitt.ko
156   AUTOLOAD:=$(call AutoLoad,30,crc-ccitt)
157 endef
158
159 define KernelPackage/ppp/2.4
160   FILES:= \
161         $(MODULES_DIR)/kernel/drivers/net/ppp_async.o \
162         $(MODULES_DIR)/kernel/drivers/net/ppp_generic.o \
163         $(MODULES_DIR)/kernel/drivers/net/slhc.o
164 endef
165 $(eval $(call KernelPackage,ppp))
166
167
168 define KernelPackage/pppoe
169   TITLE:=PPPoE support
170   DESCRIPTION:=\
171         Kernel modules for PPPoE (PPP over Ethernet) support
172   DEPENDS:=kmod-ppp
173   KCONFIG:=$(CONFIG_PPPOE)
174   FILES:= \
175         $(MODULES_DIR)/kernel/drivers/net/pppoe.$(LINUX_KMOD_SUFFIX) \
176         $(MODULES_DIR)/kernel/drivers/net/pppox.$(LINUX_KMOD_SUFFIX)
177   SUBMENU:=$(NSMENU)
178 endef
179 $(eval $(call KernelPackage,pppoe))
180
181
182 define KernelPackage/pppoa
183   TITLE:=PPPoA support
184   DESCRIPTION:=\
185         Kernel modules for PPPoA (PPP over ATM) support
186   DEPENDS:=kmod-ppp
187   KCONFIG:=$(CONFIG_PPPOATM)
188   FILES:=$(MODULES_DIR)/kernel/net/atm/pppoatm.$(LINUX_KMOD_SUFFIX)
189   SUBMENU:=$(NSMENU)
190 endef
191 $(eval $(call KernelPackage,pppoa))
192
193
194 define KernelPackage/mppe
195   TITLE:=Microsoft PPP compression/encryption
196   DESCRIPTION:=Kernel modules for Microsoft PPP compression/encryption
197   DEPENDS:=kmod-ppp
198   KCONFIG:=$(CONFIG_PPP_MPPE)
199   SUBMENU:=$(NSMENU)
200 endef
201
202 define KernelPackage/mppe/2.4
203   FILES:=$(MODULES_DIR)/kernel/drivers/net/ppp_mppe_mppc.$(LINUX_KMOD_SUFFIX)
204 endef
205
206 define KernelPackage/mppe/2.6
207   FILES:=$(MODULES_DIR)/kernel/drivers/net/ppp_mppe.$(LINUX_KMOD_SUFFIX)
208 endef
209 $(eval $(call KernelPackage,mppe))
210
211
212 define KernelPackage/sched
213   TITLE:=Traffic schedulers
214   DESCRIPTION:=\
215         Kernel schedulers for IP traffic
216   FILES:=$(MODULES_DIR)/kernel/net/sched/*.$(LINUX_KMOD_SUFFIX)
217   SUBMENU:=$(NSMENU)
218 endef
219 $(eval $(call KernelPackage,sched))
220
221
222
223 define KernelPackage/ax25
224   TITLE:=AX25 support
225   DESCRIPTION:=Kernel modules for AX25 support
226   SUBMENU:=$(NSMENU)
227   KCONFIG:=$(CONFIG_AX25)
228   FILES:= \
229         $(MODULES_DIR)/kernel/net/ax25/ax25.$(LINUX_KMOD_SUFFIX) \
230         $(MODULES_DIR)/kernel/drivers/net/hamradio/mkiss.$(LINUX_KMOD_SUFFIX)
231   AUTOLOAD:=$(call AutoLoad,80,ax25 mkiss)
232 endef
233 $(eval $(call KernelPackage,ax25))
234
235
236
237
238 NDMENU:=Network Devices
239
240 define KernelPackage/natsemi
241   TITLE:=National Semiconductor DP8381x series 
242   DESCRIPTION:=\
243         Kernel modules for National Semiconductor DP8381x series PCI Ethernet \\\
244         adapters.
245   FILES:=$(MODULES_DIR)/kernel/drivers/net/natsemi.$(LINUX_KMOD_SUFFIX)
246   KCONFIG:=$(CONFIG_NATSEMI)
247   DEPENDS:=@LINUX_2_6_X86
248   DEFAULT:=y
249   SUBMENU:=$(NDMENU)
250   AUTOLOAD:=$(call AutoLoad,20,natsemi)
251 endef
252 $(eval $(call KernelPackage,natsemi))
253
254 define KernelPackage/sis900
255   TITLE:=SiS 900 Ethernet support
256   DESCRIPTION:=\
257         Kernel modules for Sis 900 Ethernet adapters.
258   FILES:=$(MODULES_DIR)/kernel/drivers/net/sis900.$(LINUX_KMOD_SUFFIX)
259   KCONFIG:=$(CONFIG_SIS900)
260   DEPENDS:=@LINUX_2_6_X86||LINUX_2_4_X86
261   SUBMENU:=$(NDMENU)
262 endef
263 $(eval $(call KernelPackage,sis900))
264
265 define KernelPackage/via-rhine
266   TITLE:=Via Rhine ethernet support
267   DESCRIPTION:=\
268         Kernel modules for Via Rhine Ethernet chipsets.
269   FILES:=$(MODULES_DIR)/kernel/drivers/net/via-rhine.$(LINUX_KMOD_SUFFIX)
270   KCONFIG:=$(CONFIG_VIA_RHINE)
271   DEPENDS:=@LINUX_2_6_X86||LINUX_2_4_X86
272   SUBMENU:=$(NDMENU)
273 endef
274 $(eval $(call KernelPackage,via-rhine))
275
276 define KernelPackage/8139too
277   TITLE:=RealTek RTL-8139 PCI Fast Ethernet Adapter kernel support
278   DESCRIPTION:=\
279         Kernel modules for RealTek RTL-8139 PCI Fast Ethernet adapters.
280   FILES:=$(MODULES_DIR)/kernel/drivers/net/8139too.$(LINUX_KMOD_SUFFIX)
281   KCONFIG:=$(CONFIG_8139TOO)
282   DEPENDS:=@LINUX_2_6_X86||LINUX_2_4_X86
283   SUBMENU:=$(NDMENU)
284 endef
285 $(eval $(call KernelPackage,8139too))
286
287 define KernelPackage/e100
288   TITLE:=Intel(R) PRO/100+ cards kernel support
289   DESCRIPTION:=\
290         Kernel modules for Intel(R) PRO/100+ Ethernet adapters.
291   FILES:=$(MODULES_DIR)/kernel/drivers/net/e100.$(LINUX_KMOD_SUFFIX)
292   KCONFIG:=$(CONFIG_E100)
293   DEPENDS:=@LINUX_2_6_X86||LINUX_2_4_X86
294   SUBMENU:=$(NDMENU)
295 endef
296 $(eval $(call KernelPackage,e100))
297
298 define KernelPackage/3c59x
299   TITLE:=3Com 3c590/3c900 series (592/595/597) Vortex/Boomerang
300   DESCRIPTION:=\
301         This option enables driver support for a large number of 10mbps and \\\
302         10/100mbps EISA, PCI and PCMCIA 3Com Ethernet adapters: \\\
303         - "Vortex"    (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI \\\
304         - "Boomerang" (EtherLink XL 3c900 or 3c905)            PCI \\\
305         - "Cyclone"   (3c540/3c900/3c905/3c980/3c575/3c656)    PCI and Cardbus \\\
306         - "Tornado"   (3c905)                                  PCI  \\\
307         - "Hurricane" (3c555/3cSOHO)                           PCI 
308   FILES:=$(MODULES_DIR)/kernel/drivers/net/3c59x.$(LINUX_KMOD_SUFFIX)
309   KCONFIG:=$(CONFIG_3C59X)
310   DEPENDS:=@LINUX_2_6_X86||LINUX_2_4_X86
311   SUBMENU:=$(NDMENU)
312 endef
313 $(eval $(call KernelPackage,3c59x))