xref: /freebsd/sys/modules/Makefile (revision 49336098dd320458c0561b071afaa5f3c7a1c3e5)
1c3aac50fSPeter Wemm# $FreeBSD$
20eec3684SGarrett Wollman
3f544a528SMark Murray.if exists(${.CURDIR}/../opencrypto) && !defined(NOCRYPT)
4f544a528SMark Murray_crypto=	crypto
5f544a528SMark Murray_cryptodev=	cryptodev
6f544a528SMark Murray.endif
7fd8b5fb2SMark Murray.if exists(${.CURDIR}/../crypto) && !defined(NOCRYPT)
8a6278a2aSMark Murray_random=	random
9fd8b5fb2SMark Murray.endif
10fd8b5fb2SMark Murray
11f6af4ff6SJohn BaldwinSUBDIR=	accf_data \
1209261c4fSBrooks Davis	accf_http \
1309261c4fSBrooks Davis	aha \
14fb404d6fSScott Long	aic7xxx \
1521d56e9cSAlfred Perlstein	aio \
1609261c4fSBrooks Davis	amr \
1709261c4fSBrooks Davis	an \
1809261c4fSBrooks Davis	aue \
1987b4a259SBill Paul	axe \
2095d67482SBill Paul	bge \
218c4026b5SPaul Saab	bridge \
22aa980888SJake Burkholder	cam \
23aa980888SJake Burkholder	cd9660 \
2409261c4fSBrooks Davis	coda \
25f544a528SMark Murray	${_crypto} \
26f544a528SMark Murray	${_cryptodev} \
2709261c4fSBrooks Davis	cue \
2809261c4fSBrooks Davis	dc \
2909261c4fSBrooks Davis	de \
3009261c4fSBrooks Davis	digi \
318c4026b5SPaul Saab	dummynet \
3233cfde03SHartmut Brandt	en \
3309261c4fSBrooks Davis	fdc \
3442d6ed03SBruce Evans	fdescfs \
357d2ba89bSJohn Baldwin	firewire \
3609261c4fSBrooks Davis	fxp \
375d9bef64SPoul-Henning Kamp	geom \
38f8a984edSJonathan Lemon	gx \
398b7ce2ffSSam Leffler	hifn \
4009261c4fSBrooks Davis	if_disc \
4109261c4fSBrooks Davis	if_ef \
4242d6ed03SBruce Evans	if_faith \
4309261c4fSBrooks Davis	if_gif \
44b5e8c7d7SMaxim Sobolev	if_gre \
4509261c4fSBrooks Davis	if_ppp \
4609261c4fSBrooks Davis	if_sl \
4709261c4fSBrooks Davis	if_stf \
4809261c4fSBrooks Davis	if_tap \
4909261c4fSBrooks Davis	if_tun \
50214bfc97SBrooks Davis	if_vlan \
5109261c4fSBrooks Davis	ip6fw \
52fffcbbcdSBill Fenner	ip_mroute_mod \
5309261c4fSBrooks Davis	ipfw \
5497af632bSJohn Baldwin	isp \
5509261c4fSBrooks Davis	ispfw \
5609261c4fSBrooks Davis	joy \
5709261c4fSBrooks Davis	kue \
5809261c4fSBrooks Davis	lge \
590e3b6d50SSheldon Hearn	libiconv \
6009261c4fSBrooks Davis	libmchain \
611b6c2589SPoul-Henning Kamp	lpt \
62ebbd4fa8SRobert Watson	mac_biba \
63ebbd4fa8SRobert Watson	mac_bsdextended \
64ebbd4fa8SRobert Watson	mac_ifoff \
655773cccfSRobert Watson	mac_lomac \
66ebbd4fa8SRobert Watson	mac_mls \
67ebbd4fa8SRobert Watson	mac_none \
6851363000SRobert Watson	mac_partition \
6903d03162SRobert Watson	mac_portacl \
70ebbd4fa8SRobert Watson	mac_seeotheruids \
71ebbd4fa8SRobert Watson	mac_test \
72e73b093aSMatthew N. Dodd	mcd \
7309261c4fSBrooks Davis	md \
7409261c4fSBrooks Davis	mii \
7509261c4fSBrooks Davis	mlx \
76bc96e1c7SJohn Baldwin	mpt \
7786597d47SMaxime Henrion	msdosfs \
78e4de92ceSRuslan Ermilov	my \
79eb25edbdSPeter Wemm	nfsclient \
80eb25edbdSPeter Wemm	nfsserver \
8109261c4fSBrooks Davis	nge \
8209261c4fSBrooks Davis	nmdm \
8309261c4fSBrooks Davis	ntfs \
8409261c4fSBrooks Davis	nullfs \
8509261c4fSBrooks Davis	pcn \
861b6c2589SPoul-Henning Kamp	plip \
8709261c4fSBrooks Davis	portalfs \
881b6c2589SPoul-Henning Kamp	ppbus \
891b6c2589SPoul-Henning Kamp	ppi \
901b6c2589SPoul-Henning Kamp	pps \
913fd18735SDag-Erling Smørgrav	procfs \
923fd18735SDag-Erling Smørgrav	pseudofs \
93147e2e20SScott Long	raidframe \
9409261c4fSBrooks Davis	${_random} \
95787f1498SJohn Baldwin	rc \
960ac19bd5SSam Leffler	rc4 \
9709261c4fSBrooks Davis	rl \
9809261c4fSBrooks Davis	rp \
9911e04b05SShunsuke Akiyama	rue \
1007d0de413SMax Khon	sbsh \
10109261c4fSBrooks Davis	sf \
10209261c4fSBrooks Davis	sis \
10309261c4fSBrooks Davis	sk \
10409261c4fSBrooks Davis	sn \
10509261c4fSBrooks Davis	snp \
10609261c4fSBrooks Davis	ste \
10709261c4fSBrooks Davis	sym \
10809261c4fSBrooks Davis	sysvipc \
10909261c4fSBrooks Davis	ti \
11009261c4fSBrooks Davis	tl \
111f3d92b26SOlivier Houchard	trm \
11242d6ed03SBruce Evans	twe \
11309261c4fSBrooks Davis	tx \
114362c5c1eSBill Paul	txp \
11551d123d6SAlexander Kabaev	ubsa \
1168b7ce2ffSSam Leffler	ubsec \
117916e6e02SJosef Karthauser	ucom \
11809261c4fSBrooks Davis	udbp \
119df263cbdSScott Long	udf \
12042d6ed03SBruce Evans	ufm \
12131f48889SJosef Karthauser	uftdi \
12209261c4fSBrooks Davis	ugen \
12309261c4fSBrooks Davis	uhid \
12409261c4fSBrooks Davis	ukbd \
12509261c4fSBrooks Davis	ulpt \
12609261c4fSBrooks Davis	umapfs \
12709261c4fSBrooks Davis	umass \
12809261c4fSBrooks Davis	umodem \
12909261c4fSBrooks Davis	ums \
13009261c4fSBrooks Davis	unionfs \
131916e6e02SJosef Karthauser	uplcom \
13209261c4fSBrooks Davis	urio \
13309261c4fSBrooks Davis	usb \
1342fd84f56SNick Hibma	uscanner \
135591f4054SHartmut Brandt	utopia \
136ca095220SJosef Karthauser	uvisor \
137916e6e02SJosef Karthauser	uvscom \
13809261c4fSBrooks Davis	vpo \
13909261c4fSBrooks Davis	vr \
14009261c4fSBrooks Davis	vx \
14109261c4fSBrooks Davis	wb \
1420ac19bd5SSam Leffler	wlan \
14309261c4fSBrooks Davis	xl
144256c4043SNick Hibma
14542d6ed03SBruce Evans.if defined(WANT_EXT2FS_MODULE)
14642d6ed03SBruce EvansSUBDIR+=ext2fs
147aa980888SJake Burkholder.endif
148aa980888SJake Burkholder
1498c7cf505SMarcel Moolenaar.if !defined(NO_IPFILTER)
1507a43a96aSRuslan ErmilovSUBDIR+=ipfilter
1517a43a96aSRuslan Ermilov.endif
1527a43a96aSRuslan Ermilov
15342d6ed03SBruce Evans.if ${MACHINE_ARCH} != "sparc64"
15442d6ed03SBruce EvansSUBDIR+=syscons
15542d6ed03SBruce Evans.endif
15642d6ed03SBruce Evans
15728cc91d8SMike Smith# XXX some of these can move to the general case when de-i386'ed
1584e54e04eSWarner Losh# XXX some of these can move now, but are untested on other architectures.
15901c8945cSJohn Baldwin.if ${MACHINE_ARCH} == "i386"
160f6af4ff6SJohn BaldwinSUBDIR+=3dfx \
161f801952aSPeter Wemm	agp \
162f6af4ff6SJohn Baldwin	aic \
1633729f1a5SYoshihiro Takahashi	aout \
16442d6ed03SBruce Evans	apm \
1653729f1a5SYoshihiro Takahashi	ar \
1663729f1a5SYoshihiro Takahashi	arcnet \
167f7883a79SRobert Watson	awi \
1683729f1a5SYoshihiro Takahashi	bktr \
1693729f1a5SYoshihiro Takahashi	coff \
170484be8eaSYoshihiro Takahashi	drm \
17101c8945cSJohn Baldwin	ed \
172187e120cSMatthew N. Dodd	elink \
1733729f1a5SYoshihiro Takahashi	em \
1740921c98bSYoshihiro Takahashi	ep \
1753729f1a5SYoshihiro Takahashi	fe \
1763729f1a5SYoshihiro Takahashi	fpu \
1773729f1a5SYoshihiro Takahashi	gnufpu \
1783729f1a5SYoshihiro Takahashi	hea \
1793729f1a5SYoshihiro Takahashi	hfa \
18049336098SNicolas Souchu	i2c \
1813729f1a5SYoshihiro Takahashi	ibcs2 \
182dd4cb1b8SMatthew N. Dodd	ie \
1833729f1a5SYoshihiro Takahashi	linprocfs \
1843729f1a5SYoshihiro Takahashi	linux \
18501c8945cSJohn Baldwin	lnc \
186ef9e45ddSTim J. Robbins	ncp \
1873729f1a5SYoshihiro Takahashi	ncv \
1883729f1a5SYoshihiro Takahashi	netgraph \
18942d6ed03SBruce Evans	nsp \
190ef9e45ddSTim J. Robbins	nwfs \
1913729f1a5SYoshihiro Takahashi	oltr \
1920921c98bSYoshihiro Takahashi	pccard \
19342d6ed03SBruce Evans	pecoff \
1943729f1a5SYoshihiro Takahashi	ray \
1953729f1a5SYoshihiro Takahashi	sbni \
1963729f1a5SYoshihiro Takahashi	scsi_low \
1973729f1a5SYoshihiro Takahashi	smbfs \
1983729f1a5SYoshihiro Takahashi	sound \
199a71a3073SMatthew N. Dodd	speaker \
2003729f1a5SYoshihiro Takahashi	splash \
2013729f1a5SYoshihiro Takahashi	sppp \
2023729f1a5SYoshihiro Takahashi	sr \
2033729f1a5SYoshihiro Takahashi	stg \
2043729f1a5SYoshihiro Takahashi	streams \
2053729f1a5SYoshihiro Takahashi	vinum \
2063729f1a5SYoshihiro Takahashi	wi \
2073729f1a5SYoshihiro Takahashi	xe
20801c8945cSJohn Baldwin
20901c8945cSJohn Baldwin.if ${MACHINE} == "i386"
21001c8945cSJohn BaldwinSUBDIR+=aac \
21101c8945cSJohn Baldwin	acpi \
21201c8945cSJohn Baldwin	asr \
21381d9009aSMatthew N. Dodd	bios \
21401c8945cSJohn Baldwin	cardbus \
21501c8945cSJohn Baldwin	cbb \
21601c8945cSJohn Baldwin	ciss \
21701c8945cSJohn Baldwin	cm \
218ba32bfe2SYoshihiro Takahashi	dpt \
21901c8945cSJohn Baldwin	el \
220ba32bfe2SYoshihiro Takahashi	ex \
22101c8945cSJohn Baldwin	exca \
222ba32bfe2SYoshihiro Takahashi	idt \
22301c8945cSJohn Baldwin	iir \
2243e4e4849SYoshihiro Takahashi	ips \
22501c8945cSJohn Baldwin	mly \
22601c8945cSJohn Baldwin	s3 \
22701c8945cSJohn Baldwin	vesa
22801c8945cSJohn Baldwin
22901c8945cSJohn Baldwin.elif ${MACHINE} == "pc98"
23083536948SYoshihiro TakahashiSUBDIR+=canbepm \
23183536948SYoshihiro Takahashi	canbus \
23201c8945cSJohn Baldwin	pmc \
23301c8945cSJohn Baldwin	snc
23401c8945cSJohn Baldwin.endif
2353729f1a5SYoshihiro Takahashi.endif
2363729f1a5SYoshihiro Takahashi
2373adcb4ceSMarcel Moolenaar.if ${MACHINE_ARCH} == "ia64"
2388c7cf505SMarcel Moolenaar# Modules not enabled on ia64 (as compared to i386) include:
2398c7cf505SMarcel Moolenaar#	aac acpi aout apm atspeaker drm fpu gnufpu ibcs2 linprocfs linux ncv
2408c7cf505SMarcel Moolenaar#	nsp oltr pecoff s3 sbni stg vesa
2413adcb4ceSMarcel MoolenaarSUBDIR+=aic \
2428c7cf505SMarcel Moolenaar	ar \
2433adcb4ceSMarcel Moolenaar	arcnet \
2448c7cf505SMarcel Moolenaar	asr \
2458c7cf505SMarcel Moolenaar	bktr \
2468c7cf505SMarcel Moolenaar	cardbus \
2478c7cf505SMarcel Moolenaar	cbb \
2483adcb4ceSMarcel Moolenaar	ciss \
2493adcb4ceSMarcel Moolenaar	cm \
2503adcb4ceSMarcel Moolenaar	coff \
2513adcb4ceSMarcel Moolenaar	el \
2523adcb4ceSMarcel Moolenaar	em \
2538c7cf505SMarcel Moolenaar	ep \
2548c7cf505SMarcel Moolenaar	exca \
2553adcb4ceSMarcel Moolenaar	fe \
2568c7cf505SMarcel Moolenaar	hea \
2578c7cf505SMarcel Moolenaar	hfa \
2583adcb4ceSMarcel Moolenaar	iir \
2593adcb4ceSMarcel Moolenaar	mly \
2608c7cf505SMarcel Moolenaar	netgraph \
2618c7cf505SMarcel Moolenaar	pccard \
2623adcb4ceSMarcel Moolenaar	ray \
2638c7cf505SMarcel Moolenaar	rc \
2643adcb4ceSMarcel Moolenaar	scsi_low \
2653adcb4ceSMarcel Moolenaar	smbfs \
2668c7cf505SMarcel Moolenaar	sound \
2673adcb4ceSMarcel Moolenaar	splash \
2688c7cf505SMarcel Moolenaar	sppp \
2693adcb4ceSMarcel Moolenaar	sr \
2703adcb4ceSMarcel Moolenaar	streams \
2718c7cf505SMarcel Moolenaar	vinum \
2723adcb4ceSMarcel Moolenaar	wi \
2733adcb4ceSMarcel Moolenaar	xe
2743adcb4ceSMarcel Moolenaar.endif
2753adcb4ceSMarcel Moolenaar
2766c1029b1SAndrew Gallatin.if ${MACHINE_ARCH} == "alpha"
27705d1e23aSEric AnholtSUBDIR+=agp \
27805d1e23aSEric Anholt	linprocfs \
2793adcb4ceSMarcel Moolenaar	linux \
2803adcb4ceSMarcel Moolenaar	osf1 \
2813adcb4ceSMarcel Moolenaar	sound \
282ed323145SMarcel Moolenaar	sppp \
283ed323145SMarcel Moolenaar	vinum
2846c1029b1SAndrew Gallatin.endif
2856c1029b1SAndrew Gallatin
28673badb24SDavid E. O'Brien.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "sparc64"
28773badb24SDavid E. O'BrienSUBDIR+=gem
28873badb24SDavid E. O'Brien.endif
28973badb24SDavid E. O'Brien
290b1c519deSDavid E. O'Brien.if ${MACHINE_ARCH} == "sparc64"
29173badb24SDavid E. O'BrienSUBDIR+=hme
292b1c519deSDavid E. O'Brien.endif
293b1c519deSDavid E. O'Brien
2945a7ed3fbSPoul-Henning Kamp.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
295581a68a2SWarner LoshSUBDIR=${MODULES_OVERRIDE}
296581a68a2SWarner Losh.endif
297581a68a2SWarner Losh
2985e82ed7bSRuslan Ermilov# Calling kldxref(8) for each module is expensive.
2994875819cSJake Burkholder.if !defined(NO_XREF)
30099bca506SRuslan Ermilov.MAKEFLAGS+=	-DNO_XREF
3015e82ed7bSRuslan Ermilovafterinstall:
302be1d673dSRuslan Ermilov	@if type kldxref >/dev/null 2>&1; then \
303be1d673dSRuslan Ermilov		${ECHO} kldxref ${DESTDIR}${KMODDIR}; \
304be1d673dSRuslan Ermilov		kldxref ${DESTDIR}${KMODDIR}; \
305be1d673dSRuslan Ermilov	fi
3065e82ed7bSRuslan Ermilov.endif
3075e82ed7bSRuslan Ermilov
3080eec3684SGarrett Wollman.include <bsd.subdir.mk>
309