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