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