xref: /freebsd/sys/modules/Makefile (revision 4848dd0858385db46fa4e0192a134605ee42ab01)
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	ale \
22	amr \
23	${_an} \
24	${_aout} \
25	${_apm} \
26	${_ar} \
27	${_arcmsr} \
28	${_arcnet} \
29	${_asmc} \
30	${_asr} \
31	ata \
32	ath \
33	aue \
34	${_auxio} \
35	axe \
36	bce \
37	bfe \
38	bge \
39	${_bios} \
40	${_bktr} \
41	${_bm} \
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	${_cpuctl} \
61	${_cpufreq} \
62	${_crypto} \
63	${_cryptodev} \
64	${_cs} \
65	${_ctau} \
66	cue \
67	cxgb \
68	${_cyclic} \
69	dc \
70	dcons \
71	dcons_crom \
72	de \
73	${_dpms} \
74	${_dpt} \
75	${_drm} \
76	${_dtrace} \
77	dummynet \
78	${_ed} \
79	ehci \
80	${_elink} \
81	${_em} \
82	en \
83	${_ep} \
84	${_et} \
85	${_ex} \
86	${_exca} \
87	${_ext2fs} \
88	fatm \
89	fdc \
90	fdescfs \
91	${_fe} \
92	firewire \
93	firmware \
94	fxp \
95	gem \
96	geom \
97	${_glxsb} \
98	hatm \
99	hifn \
100	hme \
101	${_hptiop} \
102	${_hptmv} \
103	${_hptrr} \
104	hwpmc \
105	${_i2c} \
106	${_ibcs2} \
107	${_ichwd} \
108	${_ida} \
109	${_ie} \
110	if_bridge \
111	if_disc \
112	if_edsc \
113	if_ef \
114	if_faith \
115	if_gif \
116	if_gre \
117	if_lagg \
118	${_if_ndis} \
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	jme \
144	joy \
145	${_k8temp} \
146	kbdmux \
147	krpc \
148	kue \
149	le \
150	lge \
151	libalias \
152	libiconv \
153	libmbpool \
154	libmchain \
155	${_linprocfs} \
156	${_linsysfs} \
157	${_linux} \
158	lmc \
159	lpt \
160	mac_biba \
161	mac_bsdextended \
162	mac_ifoff \
163	mac_lomac \
164	mac_mls \
165	mac_none \
166	mac_partition \
167	mac_portacl \
168	mac_seeotheruids \
169	mac_stub \
170	mac_test \
171	malo \
172	mcd \
173	md \
174	mem \
175	mfi \
176	mii \
177	mlx \
178	${_mly} \
179	mmc \
180	mmcsd \
181	mpt \
182	mqueue \
183	msdosfs \
184	msdosfs_iconv \
185	${_mse} \
186	msk \
187	mxge \
188	my \
189	${_ncp} \
190	${_ncv} \
191	${_ndis} \
192	netgraph \
193	${_nfe} \
194	nfsclient \
195	nfslockd \
196	nfsserver \
197	nge \
198	nmdm \
199	${_nsp} \
200	ntfs \
201	ntfs_iconv \
202	nullfs \
203	${_nve} \
204	${_nvram} \
205	${_nwfs} \
206	${_nxge} \
207	${_opensolaris} \
208	ohci \
209	${_padlock} \
210	patm \
211	${_pccard} \
212	${_pcfclock} \
213	pcn \
214	${_pf} \
215	${_pflog} \
216	plip \
217	${_pmc} \
218	portalfs \
219	ppbus \
220	ppc \
221	ppi \
222	pps \
223	procfs \
224	pseudofs \
225	${_pst} \
226	puc \
227	ral \
228	${_random} \
229	${_ray} \
230	rc4 \
231	${_rdma} \
232	re \
233	reiserfs \
234	rl \
235	rue \
236	rum \
237	${_s3} \
238	${_safe} \
239	${_sbni} \
240	scc \
241	scd \
242	${_scsi_low} \
243	sdhci \
244	sem \
245	sf \
246	slhci \
247	sis \
248	sk \
249	${_smbfs} \
250	sn \
251	${_snc} \
252	snp \
253	${_sound} \
254	${_speaker} \
255	${_splash} \
256	${_sppp} \
257	${_sr} \
258	ste \
259	${_stg} \
260	stge \
261	${_streams} \
262	sym \
263	${_syscons} \
264	sysvipc \
265	ti \
266	tl \
267	${_tmpfs} \
268	trm \
269	${_twa} \
270	twe \
271	tx \
272	txp \
273	u3g \
274	uark \
275	uart \
276	ubsa \
277	ubsec \
278	ucom \
279	udav \
280	udbp \
281	udf \
282	udf_iconv \
283	ufm \
284	${_ufs} \
285	ufoma \
286	uftdi \
287	ugen \
288	uhci \
289	uhid \
290	uipaq \
291	ukbd \
292	ulpt \
293	umass \
294	umct \
295	umodem \
296	ums \
297	unionfs \
298	${_upgt} \
299	uplcom \
300	ural \
301	urio \
302	${_urtw} \
303	usb \
304	usb2 \
305	uscanner \
306	uslcom \
307	utopia \
308	uvisor \
309	uvscom \
310	${_vesa} \
311	vge \
312	vkbd \
313	${_vpo} \
314	vr \
315	vx \
316	wb \
317	${_wi} \
318	wlan \
319	wlan_acl \
320	wlan_amrr \
321	wlan_ccmp \
322	wlan_rssadapt \
323	wlan_tkip \
324	wlan_wep \
325	wlan_xauth \
326	${_wpi} \
327	${_wpifw} \
328	${_xe} \
329	xfs \
330	xl \
331	${_zfs} \
332	zlib \
333	zyd
334
335.if ${MACHINE_ARCH} != "powerpc"
336_syscons=	syscons
337_vpo=		vpo
338.endif
339
340.if defined(ALL_MODULES)
341_ufs=		ufs
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_bktr=		bktr
377_cardbus=	cardbus
378_cbb=		cbb
379_ce=		ce
380_coff=		coff
381_cp=		cp
382_cpuctl=	cpuctl
383_cpufreq=	cpufreq
384_cs=		cs
385.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
386_cyclic=	cyclic
387.endif
388_dpms=		dpms
389_drm=		drm
390.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
391_dtrace=	dtrace
392.endif
393_ed=		ed
394_elink=		elink
395_em=		em
396_ep=		ep
397_et=		et
398_exca=		exca
399_ext2fs=	ext2fs
400_fe=		fe
401_glxsb=		glxsb
402_i2c=		i2c
403_ibcs2=		ibcs2
404_ie=		ie
405_if_ndis=	if_ndis
406_igb=		igb
407_io=		io
408_linprocfs=	linprocfs
409_linsysfs=	linsysfs
410_linux=		linux
411_mse=		mse
412.if ${MK_NCP} != "no"
413_ncp=		ncp
414.endif
415_ncv=		ncv
416_ndis=		ndis
417_nsp=		nsp
418.if ${MK_NCP} != "no"
419_nwfs=		nwfs
420.endif
421.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
422_opensolaris=	opensolaris
423.endif
424_pccard=	pccard
425_pcfclock=	pcfclock
426_pst=		pst
427_ray=		ray
428_rdma=		rdma
429_safe=		safe
430_sbni=		sbni
431_scsi_low=	scsi_low
432_smbfs=		smbfs
433_sound=		sound
434_speaker=	speaker
435_splash=	splash
436_sppp=		sppp
437_sr=		sr
438_stg=		stg
439_streams=	streams
440_tmpfs=		tmpfs
441_upgt=		upgt
442_urtw=		urtw
443_wi=		wi
444_xe=		xe
445.if ${MK_ZFS} != "no" || defined(ALL_MODULES)
446_zfs=		zfs
447.endif
448.if ${MACHINE} == "i386"
449_aac=		aac
450_acpi=		acpi
451_ahb=		ahb
452_arcmsr=	arcmsr
453_asmc=		asmc
454_asr=		asr
455_bios=		bios
456_ciss=		ciss
457_cm=		cm
458_cmx=		cmx
459_coretemp=	coretemp
460_ctau=		ctau
461_dpt=		dpt
462_ex=		ex
463_hptiop=	hptiop
464_hptmv=		hptmv
465_hptrr=		hptrr
466_ichwd=		ichwd
467_ida=		ida
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_k8temp=	k8temp
479_mly=		mly
480_nfe=		nfe
481_nve=		nve
482_nvram=		nvram
483_nxge=		nxge
484_wpi=		wpi
485_wpifw=		wpifw
486.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
487.if exists(${.CURDIR}/../crypto/via)
488_padlock=	padlock
489.endif
490.endif
491_s3=		s3
492_twa=		twa
493_vesa=		vesa
494.elif ${MACHINE} == "pc98"
495_canbepm=	canbepm
496_canbus=	canbus
497_pmc=		pmc
498_snc=		snc
499.endif
500.endif
501
502.if ${MACHINE_ARCH} == "amd64"
503_aac=		aac
504_acpi=		acpi
505_agp=		agp
506_an=		an
507_arcmsr=	arcmsr
508_asmc=		asmc
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.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
559.if exists(${.CURDIR}/../crypto/via)
560_padlock=	padlock
561.endif
562.endif
563_pccard=	pccard
564_rdma=		rdma
565_safe=		safe
566_scsi_low=	scsi_low
567_smbfs=		smbfs
568_sound=		sound
569_speaker=	speaker
570_sppp=		sppp
571_tmpfs=		tmpfs
572_twa=		twa
573_upgt=		upgt
574_urtw=		urtw
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_bm=		bm
623_nvram=		powermac_nvram
624_smbfs=		smbfs
625_upgt=		upgt
626.endif
627
628.if ${MACHINE_ARCH} == "sparc64"
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