xref: /freebsd/sys/modules/Makefile (revision 2357939bc239bd5334a169b62313806178dd8f30)
1# $FreeBSD$
2
3# pcic -- currently broken and being worked on out of tree.
4# oldcard -- specialized use for debugging only.
5# owi -- totally unsupported for debugging only.
6
7SUBDIR=	${_3dfx} \
8	${_aac} \
9	accf_data \
10	accf_http \
11	${_acpi} \
12	${_agp} \
13	aha \
14	${_aic} \
15	aic7xxx \
16	aio \
17	${_amd} \
18	amr \
19	an \
20	${_aout} \
21	${_apm} \
22	${_ar} \
23	${_arl} \
24	${_arcnet} \
25	${_asr} \
26	ath \
27	${_ath_hal} \
28	aue \
29	${_awi} \
30	axe \
31	bfe \
32	bge \
33	${_bios} \
34	${_bktr} \
35	bridge \
36	cam \
37	${_canbepm} \
38	${_canbus} \
39	${_cardbus} \
40	${_cbb} \
41	cd9660 \
42	cd9660_iconv \
43	${_ciss} \
44	${_cm} \
45	coda \
46	coda5 \
47	${_coff} \
48	${_crypto} \
49	${_cryptodev} \
50	${_ctau} \
51	cue \
52	${_cx} \
53	dc \
54	dcons \
55	dcons_crom \
56	de \
57	digi \
58	${_dpt} \
59	${_drm} \
60	dummynet \
61	${_ed} \
62	${_el} \
63	${_elink} \
64	${_em} \
65	en \
66	${_ep} \
67	${_ex} \
68	${_exca} \
69	${_ext2fs} \
70	fatm \
71	fdc \
72	fdescfs \
73	${_fe} \
74	firewire \
75	fxp \
76	${_gem} \
77	geom \
78	gx \
79	harp \
80	hatm \
81	${_hfa} \
82	hifn \
83	${_hme} \
84	${_i2c} \
85	${_ibcs2} \
86	${_ichwd} \
87	${_ida} \
88	${_idt} \
89	${_ie} \
90	if_disc \
91	if_ef \
92	if_faith \
93	if_gif \
94	if_gre \
95	if_ppp \
96	if_sl \
97	if_stf \
98	if_tap \
99	if_tun \
100	if_vlan \
101	${_iir} \
102	ip6fw \
103	${_ipfilter} \
104	ipfw \
105	ip_mroute_mod \
106	${_ips} \
107	isp \
108	ispfw \
109	joy \
110	kue \
111	lge \
112	libiconv \
113	libmbpool \
114	libmchain \
115	${_linprocfs} \
116	${_linux} \
117	${_lnc} \
118	lpt \
119	mac_biba \
120	mac_bsdextended \
121	mac_ifoff \
122	mac_lomac \
123	mac_mls \
124	mac_none \
125	mac_partition \
126	mac_portacl \
127	mac_seeotheruids \
128	mac_stub \
129	mac_test \
130	mcd \
131	md \
132	mii \
133	mlx \
134	${_mly} \
135	mpt \
136	msdosfs \
137	msdosfs_iconv \
138	my \
139	${_ncp} \
140	${_ncv} \
141	${_ndis} \
142	${_netgraph} \
143	nfsclient \
144	nfsserver \
145	nge \
146	nmdm \
147	${_nsp} \
148	ntfs \
149	ntfs_iconv \
150	${_null} \
151	nullfs \
152	${_nwfs} \
153	${_oltr} \
154	${_osf1} \
155	patm \
156	${_pccard} \
157	${_pcfclock} \
158	pcn \
159	${_pecoff} \
160	${_pf} \
161	${_pflog} \
162	${_pfsync} \
163	plip \
164	${_pmc} \
165	portalfs \
166	ppbus \
167	ppi \
168	pps \
169	procfs \
170	pseudofs \
171	pst \
172	${_random} \
173	${_ray} \
174	rc \
175	rc4 \
176	re \
177	rl \
178	rp \
179	rue \
180	${_s3} \
181	${_safe} \
182	${_sbni} \
183	sbsh \
184	scd \
185	${_scsi_low} \
186	sf \
187	sis \
188	sk \
189	${_smbfs} \
190	sn \
191	${_snc} \
192	snp \
193	${_sound} \
194	${_speaker} \
195	${_splash} \
196	${_sppp} \
197	${_sr} \
198	ste \
199	${_stg} \
200	${_streams} \
201	sym \
202	${_syscons} \
203	sysvipc \
204	ti \
205	tl \
206	trm \
207	${_twa} \
208	twe \
209	tx \
210	txp \
211	uart \
212	ubsa \
213	ubsec \
214	ubser \
215	ucom \
216	udav \
217	udbp \
218	udf \
219	udf_iconv \
220	ufm \
221	${_ufs} \
222	uftdi \
223	ugen \
224	uhid \
225	ukbd \
226	ulpt \
227	umass \
228	umct \
229	umodem \
230	ums \
231	unionfs \
232	uplcom \
233	urio \
234	usb \
235	uscanner \
236	utopia \
237	uvisor \
238	uvscom \
239	${_vesa} \
240	${_vinum} \
241	vpo \
242	vr \
243	vx \
244	wb \
245	${_wi} \
246	wlan \
247	${_xe} \
248	xl
249
250.if ${MACHINE_ARCH} != "sparc64"
251_syscons=	syscons
252.endif
253
254.if defined(ALL_MODULES)
255_null=		null
256_ufs=		ufs
257.endif
258
259.if !defined(NOCRYPT) || defined(ALL_MODULES)
260.if exists(${.CURDIR}/../opencrypto)
261_crypto=	crypto
262_cryptodev=	cryptodev
263.endif
264.if exists(${.CURDIR}/../crypto)
265_random=	random
266.endif
267.endif
268
269.if !defined(NO_IPFILTER) || defined(ALL_MODULES)
270_ipfilter=	ipfilter
271.endif
272
273.if !defined(NO_PF) || defined(ALL_MODULES)
274_pf=		pf
275_pflog=		pflog
276_pfsync=	pfsync
277.endif
278
279.if ${MACHINE_ARCH} == "i386"
280# XXX some of these can move to the general case when de-i386'ed
281# XXX some of these can move now, but are untested on other architectures.
282_3dfx=		3dfx
283_agp=		agp
284_aic=		aic
285_amd=		amd
286_aout=		aout
287_apm=		apm
288_ar=		ar
289_arcnet=	arcnet
290_ath_hal=	ath_hal
291_awi=		awi
292_bktr=		bktr
293_coff=		coff
294_drm=		drm
295_ed=		ed
296_elink=		elink
297_em=		em
298_ep=		ep
299_ext2fs=	ext2fs
300_fe=		fe
301_hfa=		hfa
302_i2c=		i2c
303_ibcs2=		ibcs2
304_ie=		ie
305_linprocfs=	linprocfs
306_linux=		linux
307_lnc=		lnc
308_ncp=		ncp
309_ncv=		ncv
310_ndis=		ndis
311_netgraph=	netgraph
312_nsp=		nsp
313_nwfs=		nwfs
314_oltr=		oltr
315_pccard=	pccard
316_pcfclock=	pcfclock
317_pecoff=	pecoff
318_ray=		ray
319_safe=		safe
320_sbni=		sbni
321_scsi_low=	scsi_low
322_smbfs=		smbfs
323_sound=		sound
324_speaker=	speaker
325_splash=	splash
326_sppp=		sppp
327_sr=		sr
328_stg=		stg
329_streams=	streams
330_vinum=		vinum
331_wi=		wi
332_xe=		xe
333.if ${MACHINE} == "i386"
334_aac=		aac
335_acpi=		acpi
336_arl=		arl
337_asr=		asr
338_bios=		bios
339_cardbus=	cardbus
340_cbb=		cbb
341_ciss=		ciss
342_cm=		cm
343_ctau=		ctau
344_cx=		cx
345_dpt=		dpt
346_el=		el
347_ex=		ex
348_exca=		exca
349_ichwd=		ichwd
350_ida=		ida
351_idt=		idt
352_iir=		iir
353_ips=		ips
354_mly=		mly
355_s3=		s3
356_twa=		twa
357_vesa=		vesa
358.elif ${MACHINE} == "pc98"
359_canbepm=	canbepm
360_canbus=	canbus
361_pmc=		pmc
362_snc=		snc
363.endif
364.endif
365
366.if ${MACHINE_ARCH} == "alpha"
367_agp=		agp
368_ext2fs=	ext2fs
369_linprocfs=	linprocfs
370_linux=		linux
371_osf1=		osf1
372_sound=		sound
373_sppp=		sppp
374_vinum=		vinum
375.endif
376
377.if ${MACHINE_ARCH} == "amd64"
378_ndis=		ndis
379.endif
380
381.if ${MACHINE_ARCH} == "ia64"
382# Modules not enabled on ia64 (as compared to i386) include:
383#	aac acpi aout apm atspeaker drm ibcs2 linprocfs linux ncv
384#	nsp oltr pecoff s3 sbni stg vesa
385_aic=		aic
386_ar=		ar
387_arcnet=	arcnet
388_asr=		asr
389_bktr=		bktr
390_cardbus=	cardbus
391_cbb=		cbb
392_ciss=		ciss
393_cm=		cm
394_coff=		coff
395_el=		el
396_em=		em
397_ep=		ep
398_exca=		exca
399_fe=		fe
400_hfa=		hfa
401_iir=		iir
402_mly=		mly
403_netgraph=	netgraph
404_pccard=	pccard
405_ray=		ray
406_scsi_low=	scsi_low
407_smbfs=		smbfs
408_sound=		sound
409_splash=	splash
410_sppp=		sppp
411_sr=		sr
412_streams=	streams
413_vinum=		vinum
414_wi=		wi
415_xe=		xe
416.endif
417
418.if ${MACHINE_ARCH} == "powerpc"
419_gem=		gem
420.endif
421
422.if ${MACHINE_ARCH} == "sparc64"
423_gem=		gem
424_hme=		hme
425_vinum=		vinum
426.endif
427
428.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
429SUBDIR=${MODULES_OVERRIDE}
430.endif
431
432# Calling kldxref(8) for each module is expensive.
433.if !defined(NO_XREF)
434.MAKEFLAGS+=	-DNO_XREF
435afterinstall:
436	@if type kldxref >/dev/null 2>&1; then \
437		${ECHO} kldxref ${DESTDIR}${KMODDIR}; \
438		kldxref ${DESTDIR}${KMODDIR}; \
439	fi
440.endif
441
442.include <bsd.subdir.mk>
443