xref: /freebsd/sys/modules/Makefile (revision 6bfa9a2d66dd0e00182017d6741d44e54d0b2cca)
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	${_sbni} \
238	scc \
239	scd \
240	${_scsi_low} \
241	sem \
242	sf \
243	sis \
244	sk \
245	${_smbfs} \
246	sn \
247	${_snc} \
248	${_sound} \
249	${_speaker} \
250	${_splash} \
251	${_sppp} \
252	${_sr} \
253	ste \
254	${_stg} \
255	stge \
256	${_streams} \
257	sym \
258	${_syscons} \
259	sysvipc \
260	ti \
261	tl \
262	${_tmpfs} \
263	trm \
264	${_twa} \
265	twe \
266	tx \
267	txp \
268	uark \
269	uart \
270	ubsa \
271	ubsec \
272	ucom \
273	udav \
274	udbp \
275	udf \
276	udf_iconv \
277	ufm \
278	${_ufs} \
279	ufoma \
280	uftdi \
281	ugen \
282	uhid \
283	uipaq \
284	ukbd \
285	ulpt \
286	umass \
287	umct \
288	umodem \
289	ums \
290	unionfs \
291	${_upgt} \
292	uplcom \
293	ural \
294	urio \
295	usb \
296	uscanner \
297	uslcom \
298	utopia \
299	uvisor \
300	uvscom \
301	${_vesa} \
302	vge \
303	vkbd \
304	${_vpo} \
305	vr \
306	vx \
307	wb \
308	${_wi} \
309	wlan \
310	wlan_acl \
311	wlan_amrr \
312	wlan_ccmp \
313	wlan_rssadapt \
314	wlan_tkip \
315	wlan_wep \
316	wlan_xauth \
317	${_wpi} \
318	${_wpifw} \
319	${_xe} \
320	xfs \
321	xl \
322	${_zfs} \
323	zlib \
324	zyd
325
326.if ${MACHINE_ARCH} != "powerpc"
327_syscons=	syscons
328_vpo=		vpo
329.endif
330
331.if defined(ALL_MODULES)
332_ufs=		ufs
333.endif
334
335.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
336.if exists(${.CURDIR}/../opencrypto)
337_crypto=	crypto
338_cryptodev=	cryptodev
339.endif
340.if exists(${.CURDIR}/../crypto)
341_random=	random
342.endif
343.endif
344
345.if ${MK_IPFILTER} != "no" || defined(ALL_MODULES)
346_ipfilter=	ipfilter
347.endif
348
349.if ${MK_PF} != "no" || defined(ALL_MODULES)
350_pf=		pf
351_pflog=		pflog
352.endif
353
354.if ${MACHINE_ARCH} == "i386"
355# XXX some of these can move to the general case when de-i386'ed
356# XXX some of these can move now, but are untested on other architectures.
357_3dfx=		3dfx
358_3dfx_linux=	3dfx_linux
359_agp=		agp
360_aic=		aic
361_amd=		amd
362_an=		an
363_aout=		aout
364_apm=		apm
365_ar=		ar
366_arcnet=	arcnet
367_ath=		ath
368_ath_hal=	ath_hal
369_ath_rate_amrr=	ath_rate_amrr
370_ath_rate_onoe=	ath_rate_onoe
371_ath_rate_sample=ath_rate_sample
372_bktr=		bktr
373_cardbus=	cardbus
374_cbb=		cbb
375_ce=		ce
376_coff=		coff
377_cp=		cp
378_cpuctl=	cpuctl
379_cpufreq=	cpufreq
380_cs=		cs
381.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
382_cyclic=	cyclic
383.endif
384_dpms=		dpms
385_drm=		drm
386.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
387_dtrace=	dtrace
388.endif
389_ed=		ed
390_elink=		elink
391_em=		em
392_ep=		ep
393_et=		et
394_exca=		exca
395_ext2fs=	ext2fs
396_fe=		fe
397_glxsb=		glxsb
398_i2c=		i2c
399_ibcs2=		ibcs2
400_ie=		ie
401_if_ndis=	if_ndis
402_igb=		igb
403_io=		io
404_linprocfs=	linprocfs
405_linsysfs=	linsysfs
406_linux=		linux
407_mse=		mse
408.if ${MK_NCP} != "no"
409_ncp=		ncp
410.endif
411_ncv=		ncv
412_ndis=		ndis
413_nsp=		nsp
414.if ${MK_NCP} != "no"
415_nwfs=		nwfs
416.endif
417.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
418_opensolaris=	opensolaris
419.endif
420_pccard=	pccard
421_pcfclock=	pcfclock
422_pst=		pst
423_ray=		ray
424_rdma=		rdma
425_safe=		safe
426_sbni=		sbni
427_scsi_low=	scsi_low
428_smbfs=		smbfs
429_sound=		sound
430_speaker=	speaker
431_splash=	splash
432_sppp=		sppp
433_sr=		sr
434_stg=		stg
435_streams=	streams
436_tmpfs=		tmpfs
437_upgt=		upgt
438_wi=		wi
439_xe=		xe
440.if ${MK_ZFS} != "no" || defined(ALL_MODULES)
441_zfs=		zfs
442.endif
443.if ${MACHINE} == "i386"
444_aac=		aac
445_acpi=		acpi
446_ahb=		ahb
447_arcmsr=	arcmsr
448_asmc=		asmc
449_asr=		asr
450_bios=		bios
451_ciss=		ciss
452_cm=		cm
453_cmx=		cmx
454_coretemp=	coretemp
455_ctau=		ctau
456_dpt=		dpt
457_ex=		ex
458_hptiop=	hptiop
459_hptmv=		hptmv
460_hptrr=		hptrr
461_ichwd=		ichwd
462_ida=		ida
463_iir=		iir
464_ipmi=		ipmi
465_ips=		ips
466_ipw=		ipw
467_ipwfw=		ipwfw
468_iwi=		iwi
469_iwifw=		iwifw
470_iwn=		iwn
471_iwnfw=		iwnfw
472_ixgb=		ixgb
473_k8temp=	k8temp
474_mly=		mly
475_nfe=		nfe
476_nve=		nve
477_nvram=		nvram
478_nxge=		nxge
479_wpi=		wpi
480_wpifw=		wpifw
481.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
482.if exists(${.CURDIR}/../crypto/via)
483_padlock=	padlock
484.endif
485.endif
486_s3=		s3
487_twa=		twa
488_vesa=		vesa
489.elif ${MACHINE} == "pc98"
490_canbepm=	canbepm
491_canbus=	canbus
492_pmc=		pmc
493_snc=		snc
494.endif
495.endif
496
497.if ${MACHINE_ARCH} == "amd64"
498_aac=		aac
499_acpi=		acpi
500_agp=		agp
501_an=		an
502_arcmsr=	arcmsr
503_asmc=		asmc
504_ath=		ath
505_ath_hal=	ath_hal
506_ath_rate_amrr=	ath_rate_amrr
507_ath_rate_onoe=	ath_rate_onoe
508_ath_rate_sample=ath_rate_sample
509_cardbus=	cardbus
510_cbb=		cbb
511_cmx=		cmx
512_ciss=		ciss
513_coretemp=	coretemp
514_cpuctl=	cpuctl
515_cpufreq=	cpufreq
516.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
517_cyclic=	cyclic
518.endif
519_drm=		drm
520.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
521_dtrace=	dtrace
522.endif
523_ed=		ed
524_et=		et
525_em=		em
526_exca=		exca
527_ext2fs=	ext2fs
528_hptiop=	hptiop
529_hptmv=		hptmv
530_hptrr=		hptrr
531_i2c=		i2c
532_ichwd=		ichwd
533_ida=		ida
534_if_ndis=	if_ndis
535_igb=		igb
536_iir=		iir
537_io=		io
538_ipmi=		ipmi
539_ips=		ips
540_ipw=		ipw
541_ipwfw=		ipwfw
542_iwn=		iwn
543_iwnfw=		iwnfw
544_ixgb=		ixgb
545_k8temp=	k8temp
546_linprocfs=	linprocfs
547_linsysfs=	linsysfs
548_linux=		linux
549_mly=		mly
550_ndis=		ndis
551_nfe=		nfe
552_nve=		nve
553_nvram=		nvram
554_nxge=		nxge
555.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
556_opensolaris=	opensolaris
557.endif
558_pccard=	pccard
559_rdma=		rdma
560_safe=		safe
561_scsi_low=	scsi_low
562_smbfs=		smbfs
563_sound=		sound
564_speaker=	speaker
565_sppp=		sppp
566_tmpfs=		tmpfs
567_twa=		twa
568_upgt=		upgt
569_wi=		wi
570_wpi=		wpi
571_wpifw=		wpifw
572.if ${MK_ZFS} != "no" || defined(ALL_MODULES)
573_zfs=		zfs
574.endif
575.endif
576
577.if ${MACHINE_ARCH} == "ia64"
578# Modules not enabled on ia64 (as compared to i386) include:
579#	aac acpi aout apm atspeaker drm ibcs2 linprocfs linux ncv
580#	nsp s3 sbni stg vesa
581# acpi is not enabled because it is broken as a module on ia64
582_aic=		aic
583#_ar=		ar	not 64-bit clean
584_an=		an
585_arcnet=	arcnet
586_asr=		asr
587_bktr=		bktr
588_cardbus=	cardbus
589_cbb=		cbb
590_ciss=		ciss
591_cm=		cm
592_cmx=		cmx
593_coff=		coff
594_cpufreq=	cpufreq
595_em=		em
596_ep=		ep
597_exca=		exca
598_fe=		fe
599_igb=		igb
600_iir=		iir
601_mly=		mly
602_pccard=	pccard
603_scsi_low=	scsi_low
604_smbfs=		smbfs
605_sound=		sound
606_splash=	splash
607_sppp=		sppp
608#_sr=		sr		not 64bit clean
609_streams=	streams
610_wi=		wi
611_xe=		xe
612.endif
613
614.if ${MACHINE_ARCH} == "powerpc"
615_an=		an
616_ath=		ath
617_ath_hal=	ath_hal
618_ath_rate_amrr=	ath_rate_amrr
619_ath_rate_onoe=	ath_rate_onoe
620_ath_rate_sample=ath_rate_sample
621_bm=		bm
622_nvram=		powermac_nvram
623_smbfs=		smbfs
624_upgt=		upgt
625.endif
626
627.if ${MACHINE_ARCH} == "sparc64"
628_ath=		ath
629_ath_hal=	ath_hal
630_ath_rate_amrr=	ath_rate_amrr
631_ath_rate_onoe=	ath_rate_onoe
632_ath_rate_sample=ath_rate_sample
633_auxio=		auxio
634_em=		em
635_i2c=		i2c
636_igb=		igb
637_sound=		sound
638_upgt=		upgt
639.if ${MK_ZFS} != "no" || defined(ALL_MODULES)
640_zfs=		zfs
641.endif
642.endif
643
644.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
645SUBDIR=${MODULES_OVERRIDE}
646.endif
647
648.for reject in ${WITHOUT_MODULES}
649SUBDIR:= ${SUBDIR:N${reject}}
650.endfor
651
652# Calling kldxref(8) for each module is expensive.
653.if !defined(NO_XREF)
654.MAKEFLAGS+=	-DNO_XREF
655afterinstall:
656	@if type kldxref >/dev/null 2>&1; then \
657		${ECHO} kldxref ${DESTDIR}${KMODDIR}; \
658		kldxref ${DESTDIR}${KMODDIR}; \
659	fi
660.endif
661
662.include <bsd.subdir.mk>
663