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