xref: /freebsd/sys/modules/Makefile (revision f3bb407b7c1b3faa88d0580541f01a8e6fb6cc68)
1# $FreeBSD$
2
3.include <bsd.own.mk>
4
5SUBDIR=	${_3dfx} \
6	${_3dfx_linux} \
7	${_aac} \
8	accf_data \
9	accf_http \
10	${_acpi} \
11	${_agp} \
12	aha \
13	${_ahb} \
14	${_aic} \
15	aic7xxx \
16	aio \
17	${_amd} \
18	amr \
19	${_an} \
20	${_aout} \
21	${_apm} \
22	${_ar} \
23	${_arcmsr} \
24	${_arcnet} \
25	${_arl} \
26	${_asr} \
27	ata \
28	${_ath} \
29	${_ath_hal} \
30	ath_rate_amrr \
31	ath_rate_onoe \
32	${_ath_rate_sample} \
33	aue \
34	${_auxio} \
35	${_awi} \
36	axe \
37	bce \
38	bfe \
39	bge \
40	${_bios} \
41	${_bktr} \
42	bridgestp \
43	cam \
44	${_canbepm} \
45	${_canbus} \
46	${_cardbus} \
47	${_cbb} \
48	cd9660 \
49	cd9660_iconv \
50	cdce \
51	${_ce} \
52	${_ciss} \
53	${_cm} \
54	coda \
55	coda5 \
56	${_coff} \
57	${_cp} \
58	${_cpufreq} \
59	${_crypto} \
60	${_cryptodev} \
61	${_cs} \
62	${_ctau} \
63	cue \
64	${_cx} \
65	dc \
66	dcons \
67	dcons_crom \
68	de \
69	${_digi} \
70	${_dpt} \
71	${_drm} \
72	dummynet \
73	${_ed} \
74	${_elink} \
75	${_em} \
76	en \
77	${_ep} \
78	${_ex} \
79	${_exca} \
80	${_ext2fs} \
81	fatm \
82	fdc \
83	fdescfs \
84	${_fe} \
85	firewire \
86	firmware \
87	fxp \
88	${_gem} \
89	geom \
90	harp \
91	hatm \
92	${_hfa} \
93	hifn \
94	hme \
95	${_hptmv} \
96	hwpmc \
97	${_i2c} \
98	${_ibcs2} \
99	${_ichwd} \
100	${_ida} \
101	${_idt} \
102	${_ie} \
103	if_bridge \
104	if_disc \
105	if_ef \
106	if_faith \
107	if_gif \
108	if_gre \
109	${_if_ndis} \
110	if_ppp \
111	if_sl \
112	if_stf \
113	if_tap \
114	if_tun \
115	if_vlan \
116	${_iir} \
117	${_io} \
118	ipdivert \
119	${_ipfilter} \
120	ipfw \
121	ip_mroute_mod \
122	${_ipmi} \
123	${_ips} \
124	${_ipw} \
125	${_ipwfw} \
126	isp \
127	ispfw \
128	${_iwi} \
129	${_iwifw} \
130	${_ixgb} \
131	joy \
132	kbdmux \
133	kue \
134	le \
135	lge \
136	libalias \
137	libiconv \
138	libmbpool \
139	libmchain \
140	${_linprocfs} \
141	${_linsysfs} \
142	${_linux} \
143	lmc \
144	lpt \
145	mac_biba \
146	mac_bsdextended \
147	mac_ifoff \
148	mac_lomac \
149	mac_mls \
150	mac_none \
151	mac_partition \
152	mac_portacl \
153	mac_seeotheruids \
154	mac_stub \
155	mac_test \
156	mcd \
157	md \
158	mem \
159	mfi \
160	mii \
161	mlx \
162	${_mly} \
163	mpt \
164	mqueue \
165	msdosfs \
166	msdosfs_iconv \
167	${_mse} \
168	msk \
169	${_mxge} \
170	my \
171	${_ncp} \
172	${_ncv} \
173	${_ndis} \
174	netgraph \
175	${_nfe} \
176	nfsclient \
177	nfsserver \
178	nge \
179	nmdm \
180	${_nsp} \
181	ntfs \
182	ntfs_iconv \
183	nullfs \
184	${_nve} \
185	${_nwfs} \
186	${_oltr} \
187	${_padlock} \
188	patm \
189	${_pccard} \
190	${_pcfclock} \
191	pcn \
192	${_pecoff} \
193	${_pf} \
194	${_pflog} \
195	plip \
196	${_pmc} \
197	portalfs \
198	${_powermac_nvram} \
199	ppbus \
200	ppc \
201	ppi \
202	pps \
203	procfs \
204	pseudofs \
205	${_pst} \
206	puc \
207	ral \
208	${_random} \
209	${_ray} \
210	rc \
211	rc4 \
212	re \
213	reiserfs \
214	rl \
215	rp \
216	${_rr232x} \
217	rue \
218	${_s3} \
219	${_safe} \
220	${_sbni} \
221	sbsh \
222	scc \
223	scd \
224	${_scsi_low} \
225	sem \
226	sf \
227	${_sio} \
228	sis \
229	sk \
230	${_smbfs} \
231	sn \
232	${_snc} \
233	snp \
234	${_sound} \
235	${_speaker} \
236	${_splash} \
237	${_sppp} \
238	${_sr} \
239	ste \
240	${_stg} \
241	stge \
242	${_streams} \
243	sym \
244	${_syscons} \
245	sysvipc \
246	ti \
247	tl \
248	trm \
249	${_twa} \
250	twe \
251	tx \
252	txp \
253	uark \
254	uart \
255	ubsa \
256	ubsec \
257	ubser \
258	ucom \
259	ucycom \
260	udav \
261	udbp \
262	udf \
263	udf_iconv \
264	ufm \
265	${_ufs} \
266	ufoma \
267	uftdi \
268	ugen \
269	uhid \
270	ukbd \
271	ulpt \
272	umass \
273	umct \
274	umodem \
275	ums \
276	unionfs \
277	uplcom \
278	ural \
279	urio \
280	usb \
281	uscanner \
282	utopia \
283	uvisor \
284	uvscom \
285	${_vesa} \
286	vge \
287	vkbd \
288	${_vpo} \
289	vr \
290	vx \
291	wb \
292	${_wi} \
293	wlan \
294	wlan_acl \
295	wlan_amrr \
296	wlan_ccmp \
297	wlan_tkip \
298	wlan_wep \
299	wlan_xauth \
300	${_xe} \
301	xfs \
302	xl \
303	zlib
304
305.if ${MACHINE_ARCH} != "powerpc"
306_syscons=	syscons
307_vpo=		vpo
308.endif
309
310.if defined(ALL_MODULES)
311_ufs=		ufs
312.endif
313
314.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
315.if exists(${.CURDIR}/../opencrypto)
316_crypto=	crypto
317_cryptodev=	cryptodev
318.endif
319.if exists(${.CURDIR}/../crypto)
320_random=	random
321.endif
322.endif
323
324.if ${MK_IPFILTER} != "no" || defined(ALL_MODULES)
325_ipfilter=	ipfilter
326.endif
327
328.if ${MK_PF} != "no" || defined(ALL_MODULES)
329_pf=		pf
330_pflog=		pflog
331.endif
332
333.if ${MACHINE_ARCH} == "i386"
334# XXX some of these can move to the general case when de-i386'ed
335# XXX some of these can move now, but are untested on other architectures.
336_3dfx=		3dfx
337_3dfx_linux=	3dfx_linux
338_agp=		agp
339_aic=		aic
340_amd=		amd
341_an=		an
342_aout=		aout
343_apm=		apm
344_ar=		ar
345_arcnet=	arcnet
346_ath=		ath
347_ath_hal=	ath_hal
348_ath_rate_sample=ath_rate_sample
349_awi=		awi
350_bktr=		bktr
351_cardbus=	cardbus
352_cbb=		cbb
353_ce=		ce
354_coff=		coff
355_cp=		cp
356_cpufreq=	cpufreq
357_cs=		cs
358_digi=		digi
359_drm=		drm
360_ed=		ed
361_elink=		elink
362_em=		em
363_ep=		ep
364_exca=		exca
365_ext2fs=	ext2fs
366_fe=		fe
367_hfa=		hfa
368_i2c=		i2c
369_ibcs2=		ibcs2
370_ie=		ie
371_if_ndis=	if_ndis
372_io=		io
373_linprocfs=	linprocfs
374_linsysfs=	linsysfs
375_linux=		linux
376_mse=		mse
377.if ${MK_NCP} != "no"
378_ncp=		ncp
379.endif
380_ncv=		ncv
381_ndis=		ndis
382_nsp=		nsp
383.if ${MK_NCP} != "no"
384_nwfs=		nwfs
385.endif
386_oltr=		oltr
387_pccard=	pccard
388_pcfclock=	pcfclock
389_pecoff=	pecoff
390_pst=		pst
391_ray=		ray
392_safe=		safe
393_sbni=		sbni
394_scsi_low=	scsi_low
395_sio=		sio
396_smbfs=		smbfs
397_sound=		sound
398_speaker=	speaker
399_splash=	splash
400_sppp=		sppp
401_sr=		sr
402_stg=		stg
403_streams=	streams
404_wi=		wi
405_xe=		xe
406.if ${MACHINE} == "i386"
407_aac=		aac
408_acpi=		acpi
409_ahb=		ahb
410_arcmsr=	arcmsr
411_arl=		arl
412_asr=		asr
413_bios=		bios
414_ciss=		ciss
415_cm=		cm
416_ctau=		ctau
417_cx=		cx
418_dpt=		dpt
419_ex=		ex
420_hptmv=		hptmv
421_ichwd=		ichwd
422_ida=		ida
423_idt=		idt
424_iir=		iir
425_ipmi=		ipmi
426_ips=		ips
427_ipw=		ipw
428_ipwfw=		ipwfw
429_iwi=		iwi
430_iwifw=		iwifw
431_ixgb=   	ixgb
432_mly=		mly
433_mxge=		mxge
434_nfe=		nfe
435_nve=		nve
436.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
437.if exists(${.CURDIR}/../crypto/via)
438_padlock=	padlock
439.endif
440.endif
441_rr232x=	rr232x
442_s3=		s3
443_twa=		twa
444_vesa=		vesa
445.elif ${MACHINE} == "pc98"
446_canbepm=	canbepm
447_canbus=	canbus
448_pmc=		pmc
449_snc=		snc
450.endif
451.endif
452
453.if ${MACHINE_ARCH} == "amd64"
454_aac=		aac
455_acpi=		acpi
456_agp=		agp
457_an=		an
458_arcmsr=	arcmsr
459_ath=		ath
460_ath_hal=	ath_hal
461_ath_rate_sample=ath_rate_sample
462_cardbus=	cardbus
463_cbb=		cbb
464_ciss=		ciss
465_cpufreq=	cpufreq
466_digi=		digi
467_drm=		drm
468_ed=		ed
469_em=		em
470_exca=		exca
471_ext2fs=	ext2fs
472_hptmv=		hptmv
473_i2c=		i2c
474_ichwd=		ichwd
475_ida=		ida
476_if_ndis=	if_ndis
477_iir=		iir
478_io=		io
479_ipmi=		ipmi
480_ips=		ips
481_ipw=		ipw
482_ipwfw=		ipwfw
483_ixgb=   	ixgb
484_linprocfs=	linprocfs
485_linsysfs=	linsysfs
486_linux=		linux
487_mly=		mly
488_mxge=		mxge
489_ndis=		ndis
490_nfe=		nfe
491_nve=		nve
492_pccard=	pccard
493_rr232x=	rr232x
494_safe=		safe
495_scsi_low=	scsi_low
496_smbfs=		smbfs
497_sound=		sound
498_speaker=	speaker
499_sppp=		sppp
500_twa=		twa
501_wi=		wi
502.endif
503
504.if ${MACHINE_ARCH} == "ia64"
505# Modules not enabled on ia64 (as compared to i386) include:
506#	aac acpi aout apm atspeaker drm ibcs2 linprocfs linux ncv
507#	nsp oltr pecoff s3 sbni stg vesa
508# acpi is not enabled because it is broken as a module on ia64
509_aic=		aic
510#_ar=		ar	not 64-bit clean
511_arcnet=	arcnet
512_asr=		asr
513_an=		an
514_bktr=		bktr
515_cardbus=	cardbus
516_cbb=		cbb
517_ciss=		ciss
518_cm=		cm
519_coff=		coff
520_cpufreq=	cpufreq
521_em=		em
522_ep=		ep
523_exca=		exca
524_fe=		fe
525_hfa=		hfa
526_iir=		iir
527_mly=		mly
528_pccard=	pccard
529_scsi_low=	scsi_low
530_smbfs=		smbfs
531_sound=		sound
532_splash=	splash
533_sppp=		sppp
534#_sr=		sr		not 64bit clean
535_streams=	streams
536_wi=		wi
537_xe=		xe
538.endif
539
540.if ${MACHINE_ARCH} == "powerpc"
541_an=		an
542_ath=		ath
543_ath_hal=	ath_hal
544_ath_rate_sample=ath_rate_sample
545_gem=		gem
546_powermac_nvram=	powermac_nvram
547_smbfs=		smbfs
548.endif
549
550.if ${MACHINE_ARCH} == "sparc64"
551_ath=		ath
552_ath_hal=	ath_hal
553_ath_rate_sample=ath_rate_sample
554_auxio=		auxio
555_em=		em
556_gem=		gem
557_i2c=		i2c
558_sound=		sound
559.endif
560
561.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
562SUBDIR=${MODULES_OVERRIDE}
563.endif
564
565.for reject in ${WITHOUT_MODULES}
566SUBDIR:= ${SUBDIR:N${reject}}
567.endfor
568
569# Calling kldxref(8) for each module is expensive.
570.if !defined(NO_XREF)
571.MAKEFLAGS+=	-DNO_XREF
572afterinstall:
573	@if type kldxref >/dev/null 2>&1; then \
574		${ECHO} kldxref ${DESTDIR}${KMODDIR}; \
575		kldxref ${DESTDIR}${KMODDIR}; \
576	fi
577.endif
578
579.include <bsd.subdir.mk>
580