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