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