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