xref: /freebsd/sys/modules/Makefile (revision c594298beec2d848d0879685de5f7050e019243a)
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 \
327d361237SHartmut Brandt	en \
3309261c4fSBrooks Davis	fdc \
3442d6ed03SBruce Evans	fdescfs \
357d2ba89bSJohn Baldwin	firewire \
3609261c4fSBrooks Davis	fxp \
375d9bef64SPoul-Henning Kamp	geom \
38f8a984edSJonathan Lemon	gx \
39c594298bSHartmut Brandt	hatm \
408b7ce2ffSSam Leffler	hifn \
4109261c4fSBrooks Davis	if_disc \
4209261c4fSBrooks Davis	if_ef \
4342d6ed03SBruce Evans	if_faith \
4409261c4fSBrooks Davis	if_gif \
45b5e8c7d7SMaxim Sobolev	if_gre \
4609261c4fSBrooks Davis	if_ppp \
4709261c4fSBrooks Davis	if_sl \
4809261c4fSBrooks Davis	if_stf \
4909261c4fSBrooks Davis	if_tap \
5009261c4fSBrooks Davis	if_tun \
51214bfc97SBrooks Davis	if_vlan \
5209261c4fSBrooks Davis	ip6fw \
53fffcbbcdSBill Fenner	ip_mroute_mod \
5409261c4fSBrooks Davis	ipfw \
5597af632bSJohn Baldwin	isp \
5609261c4fSBrooks Davis	ispfw \
5709261c4fSBrooks Davis	joy \
5809261c4fSBrooks Davis	kue \
5909261c4fSBrooks Davis	lge \
600e3b6d50SSheldon Hearn	libiconv \
6109261c4fSBrooks Davis	libmchain \
621b6c2589SPoul-Henning Kamp	lpt \
63ebbd4fa8SRobert Watson	mac_biba \
64ebbd4fa8SRobert Watson	mac_bsdextended \
65ebbd4fa8SRobert Watson	mac_ifoff \
665773cccfSRobert Watson	mac_lomac \
67ebbd4fa8SRobert Watson	mac_mls \
68ebbd4fa8SRobert Watson	mac_none \
6951363000SRobert Watson	mac_partition \
7003d03162SRobert Watson	mac_portacl \
71ebbd4fa8SRobert Watson	mac_seeotheruids \
72ebbd4fa8SRobert Watson	mac_test \
73e73b093aSMatthew N. Dodd	mcd \
7409261c4fSBrooks Davis	md \
7509261c4fSBrooks Davis	mii \
7609261c4fSBrooks Davis	mlx \
77bc96e1c7SJohn Baldwin	mpt \
7886597d47SMaxime Henrion	msdosfs \
79e4de92ceSRuslan Ermilov	my \
80eb25edbdSPeter Wemm	nfsclient \
81eb25edbdSPeter Wemm	nfsserver \
8209261c4fSBrooks Davis	nge \
8309261c4fSBrooks Davis	nmdm \
8409261c4fSBrooks Davis	ntfs \
8509261c4fSBrooks Davis	nullfs \
8609261c4fSBrooks Davis	pcn \
871b6c2589SPoul-Henning Kamp	plip \
8809261c4fSBrooks Davis	portalfs \
891b6c2589SPoul-Henning Kamp	ppbus \
901b6c2589SPoul-Henning Kamp	ppi \
911b6c2589SPoul-Henning Kamp	pps \
923fd18735SDag-Erling Smørgrav	procfs \
933fd18735SDag-Erling Smørgrav	pseudofs \
94147e2e20SScott Long	raidframe \
9509261c4fSBrooks Davis	${_random} \
96787f1498SJohn Baldwin	rc \
970ac19bd5SSam Leffler	rc4 \
9809261c4fSBrooks Davis	rl \
9909261c4fSBrooks Davis	rp \
10011e04b05SShunsuke Akiyama	rue \
1017d0de413SMax Khon	sbsh \
10209261c4fSBrooks Davis	sf \
10309261c4fSBrooks Davis	sis \
10409261c4fSBrooks Davis	sk \
10509261c4fSBrooks Davis	sn \
10609261c4fSBrooks Davis	snp \
10709261c4fSBrooks Davis	ste \
10809261c4fSBrooks Davis	sym \
10909261c4fSBrooks Davis	sysvipc \
11009261c4fSBrooks Davis	ti \
11109261c4fSBrooks Davis	tl \
112f3d92b26SOlivier Houchard	trm \
11342d6ed03SBruce Evans	twe \
11409261c4fSBrooks Davis	tx \
115362c5c1eSBill Paul	txp \
11651d123d6SAlexander Kabaev	ubsa \
1178b7ce2ffSSam Leffler	ubsec \
118916e6e02SJosef Karthauser	ucom \
11909261c4fSBrooks Davis	udbp \
120df263cbdSScott Long	udf \
12142d6ed03SBruce Evans	ufm \
12231f48889SJosef Karthauser	uftdi \
12309261c4fSBrooks Davis	ugen \
12409261c4fSBrooks Davis	uhid \
12509261c4fSBrooks Davis	ukbd \
12609261c4fSBrooks Davis	ulpt \
12709261c4fSBrooks Davis	umapfs \
12809261c4fSBrooks Davis	umass \
12909261c4fSBrooks Davis	umodem \
13009261c4fSBrooks Davis	ums \
13109261c4fSBrooks Davis	unionfs \
132916e6e02SJosef Karthauser	uplcom \
13309261c4fSBrooks Davis	urio \
13409261c4fSBrooks Davis	usb \
1352fd84f56SNick Hibma	uscanner \
136591f4054SHartmut Brandt	utopia \
137ca095220SJosef Karthauser	uvisor \
138916e6e02SJosef Karthauser	uvscom \
13909261c4fSBrooks Davis	vpo \
14009261c4fSBrooks Davis	vr \
14109261c4fSBrooks Davis	vx \
14209261c4fSBrooks Davis	wb \
1430ac19bd5SSam Leffler	wlan \
14409261c4fSBrooks Davis	xl
145256c4043SNick Hibma
14642d6ed03SBruce Evans.if defined(WANT_EXT2FS_MODULE)
14742d6ed03SBruce EvansSUBDIR+=ext2fs
148aa980888SJake Burkholder.endif
149aa980888SJake Burkholder
1508c7cf505SMarcel Moolenaar.if !defined(NO_IPFILTER)
1517a43a96aSRuslan ErmilovSUBDIR+=ipfilter
1527a43a96aSRuslan Ermilov.endif
1537a43a96aSRuslan Ermilov
15442d6ed03SBruce Evans.if ${MACHINE_ARCH} != "sparc64"
15542d6ed03SBruce EvansSUBDIR+=syscons
15642d6ed03SBruce Evans.endif
15742d6ed03SBruce Evans
15828cc91d8SMike Smith# XXX some of these can move to the general case when de-i386'ed
1594e54e04eSWarner Losh# XXX some of these can move now, but are untested on other architectures.
16001c8945cSJohn Baldwin.if ${MACHINE_ARCH} == "i386"
161f6af4ff6SJohn BaldwinSUBDIR+=3dfx \
162f801952aSPeter Wemm	agp \
163f6af4ff6SJohn Baldwin	aic \
1643729f1a5SYoshihiro Takahashi	aout \
16542d6ed03SBruce Evans	apm \
1663729f1a5SYoshihiro Takahashi	ar \
1673729f1a5SYoshihiro Takahashi	arcnet \
168f7883a79SRobert Watson	awi \
1693729f1a5SYoshihiro Takahashi	bktr \
1703729f1a5SYoshihiro Takahashi	coff \
171484be8eaSYoshihiro Takahashi	drm \
17201c8945cSJohn Baldwin	ed \
173187e120cSMatthew N. Dodd	elink \
1743729f1a5SYoshihiro Takahashi	em \
1750921c98bSYoshihiro Takahashi	ep \
1763729f1a5SYoshihiro Takahashi	fe \
1773729f1a5SYoshihiro Takahashi	fpu \
1783729f1a5SYoshihiro Takahashi	gnufpu \
1793729f1a5SYoshihiro Takahashi	hea \
1803729f1a5SYoshihiro Takahashi	hfa \
18149336098SNicolas Souchu	i2c \
1823729f1a5SYoshihiro Takahashi	ibcs2 \
183dd4cb1b8SMatthew N. Dodd	ie \
1843729f1a5SYoshihiro Takahashi	linprocfs \
1853729f1a5SYoshihiro Takahashi	linux \
18601c8945cSJohn Baldwin	lnc \
187ef9e45ddSTim J. Robbins	ncp \
1883729f1a5SYoshihiro Takahashi	ncv \
1893729f1a5SYoshihiro Takahashi	netgraph \
19042d6ed03SBruce Evans	nsp \
191ef9e45ddSTim J. Robbins	nwfs \
1923729f1a5SYoshihiro Takahashi	oltr \
1930921c98bSYoshihiro Takahashi	pccard \
19442d6ed03SBruce Evans	pecoff \
1953729f1a5SYoshihiro Takahashi	ray \
1963729f1a5SYoshihiro Takahashi	sbni \
1973729f1a5SYoshihiro Takahashi	scsi_low \
1983729f1a5SYoshihiro Takahashi	smbfs \
1993729f1a5SYoshihiro Takahashi	sound \
200a71a3073SMatthew N. Dodd	speaker \
2013729f1a5SYoshihiro Takahashi	splash \
2023729f1a5SYoshihiro Takahashi	sppp \
2033729f1a5SYoshihiro Takahashi	sr \
2043729f1a5SYoshihiro Takahashi	stg \
2053729f1a5SYoshihiro Takahashi	streams \
2063729f1a5SYoshihiro Takahashi	vinum \
2073729f1a5SYoshihiro Takahashi	wi \
2083729f1a5SYoshihiro Takahashi	xe
20901c8945cSJohn Baldwin
21001c8945cSJohn Baldwin.if ${MACHINE} == "i386"
21101c8945cSJohn BaldwinSUBDIR+=aac \
21201c8945cSJohn Baldwin	acpi \
21301c8945cSJohn Baldwin	asr \
21481d9009aSMatthew N. Dodd	bios \
21501c8945cSJohn Baldwin	cardbus \
21601c8945cSJohn Baldwin	cbb \
21701c8945cSJohn Baldwin	ciss \
21801c8945cSJohn Baldwin	cm \
219ba32bfe2SYoshihiro Takahashi	dpt \
22001c8945cSJohn Baldwin	el \
221ba32bfe2SYoshihiro Takahashi	ex \
22201c8945cSJohn Baldwin	exca \
223ba32bfe2SYoshihiro Takahashi	idt \
22401c8945cSJohn Baldwin	iir \
2253e4e4849SYoshihiro Takahashi	ips \
22601c8945cSJohn Baldwin	mly \
22701c8945cSJohn Baldwin	s3 \
22801c8945cSJohn Baldwin	vesa
22901c8945cSJohn Baldwin
23001c8945cSJohn Baldwin.elif ${MACHINE} == "pc98"
23183536948SYoshihiro TakahashiSUBDIR+=canbepm \
23283536948SYoshihiro Takahashi	canbus \
23301c8945cSJohn Baldwin	pmc \
23401c8945cSJohn Baldwin	snc
23501c8945cSJohn Baldwin.endif
2363729f1a5SYoshihiro Takahashi.endif
2373729f1a5SYoshihiro Takahashi
2383adcb4ceSMarcel Moolenaar.if ${MACHINE_ARCH} == "ia64"
2398c7cf505SMarcel Moolenaar# Modules not enabled on ia64 (as compared to i386) include:
2408c7cf505SMarcel Moolenaar#	aac acpi aout apm atspeaker drm fpu gnufpu ibcs2 linprocfs linux ncv
2418c7cf505SMarcel Moolenaar#	nsp oltr pecoff s3 sbni stg vesa
2423adcb4ceSMarcel MoolenaarSUBDIR+=aic \
2438c7cf505SMarcel Moolenaar	ar \
2443adcb4ceSMarcel Moolenaar	arcnet \
2458c7cf505SMarcel Moolenaar	asr \
2468c7cf505SMarcel Moolenaar	bktr \
2478c7cf505SMarcel Moolenaar	cardbus \
2488c7cf505SMarcel Moolenaar	cbb \
2493adcb4ceSMarcel Moolenaar	ciss \
2503adcb4ceSMarcel Moolenaar	cm \
2513adcb4ceSMarcel Moolenaar	coff \
2523adcb4ceSMarcel Moolenaar	el \
2533adcb4ceSMarcel Moolenaar	em \
2548c7cf505SMarcel Moolenaar	ep \
2558c7cf505SMarcel Moolenaar	exca \
2563adcb4ceSMarcel Moolenaar	fe \
2578c7cf505SMarcel Moolenaar	hea \
2588c7cf505SMarcel Moolenaar	hfa \
2593adcb4ceSMarcel Moolenaar	iir \
2603adcb4ceSMarcel Moolenaar	mly \
2618c7cf505SMarcel Moolenaar	netgraph \
2628c7cf505SMarcel Moolenaar	pccard \
2633adcb4ceSMarcel Moolenaar	ray \
2648c7cf505SMarcel Moolenaar	rc \
2653adcb4ceSMarcel Moolenaar	scsi_low \
2663adcb4ceSMarcel Moolenaar	smbfs \
2678c7cf505SMarcel Moolenaar	sound \
2683adcb4ceSMarcel Moolenaar	splash \
2698c7cf505SMarcel Moolenaar	sppp \
2703adcb4ceSMarcel Moolenaar	sr \
2713adcb4ceSMarcel Moolenaar	streams \
2728c7cf505SMarcel Moolenaar	vinum \
2733adcb4ceSMarcel Moolenaar	wi \
2743adcb4ceSMarcel Moolenaar	xe
2753adcb4ceSMarcel Moolenaar.endif
2763adcb4ceSMarcel Moolenaar
2776c1029b1SAndrew Gallatin.if ${MACHINE_ARCH} == "alpha"
27805d1e23aSEric AnholtSUBDIR+=agp \
27905d1e23aSEric Anholt	linprocfs \
2803adcb4ceSMarcel Moolenaar	linux \
2813adcb4ceSMarcel Moolenaar	osf1 \
2823adcb4ceSMarcel Moolenaar	sound \
283ed323145SMarcel Moolenaar	sppp \
284ed323145SMarcel Moolenaar	vinum
2856c1029b1SAndrew Gallatin.endif
2866c1029b1SAndrew Gallatin
28773badb24SDavid E. O'Brien.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "sparc64"
28873badb24SDavid E. O'BrienSUBDIR+=gem
28973badb24SDavid E. O'Brien.endif
29073badb24SDavid E. O'Brien
291b1c519deSDavid E. O'Brien.if ${MACHINE_ARCH} == "sparc64"
29273badb24SDavid E. O'BrienSUBDIR+=hme
293b1c519deSDavid E. O'Brien.endif
294b1c519deSDavid E. O'Brien
2955a7ed3fbSPoul-Henning Kamp.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
296581a68a2SWarner LoshSUBDIR=${MODULES_OVERRIDE}
297581a68a2SWarner Losh.endif
298581a68a2SWarner Losh
2995e82ed7bSRuslan Ermilov# Calling kldxref(8) for each module is expensive.
3004875819cSJake Burkholder.if !defined(NO_XREF)
30199bca506SRuslan Ermilov.MAKEFLAGS+=	-DNO_XREF
3025e82ed7bSRuslan Ermilovafterinstall:
303be1d673dSRuslan Ermilov	@if type kldxref >/dev/null 2>&1; then \
304be1d673dSRuslan Ermilov		${ECHO} kldxref ${DESTDIR}${KMODDIR}; \
305be1d673dSRuslan Ermilov		kldxref ${DESTDIR}${KMODDIR}; \
306be1d673dSRuslan Ermilov	fi
3075e82ed7bSRuslan Ermilov.endif
3085e82ed7bSRuslan Ermilov
3090eec3684SGarrett Wollman.include <bsd.subdir.mk>
310