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