xref: /freebsd/sys/modules/Makefile (revision fb24f088ae9a1bf49cf9a6fcfa3cbc34221c836f)
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 \
33fb24f088SHartmut Brandt	fatm \
3409261c4fSBrooks Davis	fdc \
3542d6ed03SBruce Evans	fdescfs \
367d2ba89bSJohn Baldwin	firewire \
3709261c4fSBrooks Davis	fxp \
385d9bef64SPoul-Henning Kamp	geom \
39f8a984edSJonathan Lemon	gx \
40c594298bSHartmut Brandt	hatm \
418b7ce2ffSSam Leffler	hifn \
4209261c4fSBrooks Davis	if_disc \
4309261c4fSBrooks Davis	if_ef \
4442d6ed03SBruce Evans	if_faith \
4509261c4fSBrooks Davis	if_gif \
46b5e8c7d7SMaxim Sobolev	if_gre \
4709261c4fSBrooks Davis	if_ppp \
4809261c4fSBrooks Davis	if_sl \
4909261c4fSBrooks Davis	if_stf \
5009261c4fSBrooks Davis	if_tap \
5109261c4fSBrooks Davis	if_tun \
52214bfc97SBrooks Davis	if_vlan \
5309261c4fSBrooks Davis	ip6fw \
54fffcbbcdSBill Fenner	ip_mroute_mod \
5509261c4fSBrooks Davis	ipfw \
5697af632bSJohn Baldwin	isp \
5709261c4fSBrooks Davis	ispfw \
5809261c4fSBrooks Davis	joy \
5909261c4fSBrooks Davis	kue \
6009261c4fSBrooks Davis	lge \
610e3b6d50SSheldon Hearn	libiconv \
6209261c4fSBrooks Davis	libmchain \
631b6c2589SPoul-Henning Kamp	lpt \
64ebbd4fa8SRobert Watson	mac_biba \
65ebbd4fa8SRobert Watson	mac_bsdextended \
66ebbd4fa8SRobert Watson	mac_ifoff \
675773cccfSRobert Watson	mac_lomac \
68ebbd4fa8SRobert Watson	mac_mls \
69ebbd4fa8SRobert Watson	mac_none \
7051363000SRobert Watson	mac_partition \
7103d03162SRobert Watson	mac_portacl \
72ebbd4fa8SRobert Watson	mac_seeotheruids \
73ebbd4fa8SRobert Watson	mac_test \
74e73b093aSMatthew N. Dodd	mcd \
7509261c4fSBrooks Davis	md \
7609261c4fSBrooks Davis	mii \
7709261c4fSBrooks Davis	mlx \
78bc96e1c7SJohn Baldwin	mpt \
7986597d47SMaxime Henrion	msdosfs \
80e4de92ceSRuslan Ermilov	my \
81eb25edbdSPeter Wemm	nfsclient \
82eb25edbdSPeter Wemm	nfsserver \
8309261c4fSBrooks Davis	nge \
8409261c4fSBrooks Davis	nmdm \
8509261c4fSBrooks Davis	ntfs \
8609261c4fSBrooks Davis	nullfs \
8709261c4fSBrooks Davis	pcn \
881b6c2589SPoul-Henning Kamp	plip \
8909261c4fSBrooks Davis	portalfs \
901b6c2589SPoul-Henning Kamp	ppbus \
911b6c2589SPoul-Henning Kamp	ppi \
921b6c2589SPoul-Henning Kamp	pps \
933fd18735SDag-Erling Smørgrav	procfs \
943fd18735SDag-Erling Smørgrav	pseudofs \
95147e2e20SScott Long	raidframe \
9609261c4fSBrooks Davis	${_random} \
97787f1498SJohn Baldwin	rc \
980ac19bd5SSam Leffler	rc4 \
9909261c4fSBrooks Davis	rl \
10009261c4fSBrooks Davis	rp \
10111e04b05SShunsuke Akiyama	rue \
1027d0de413SMax Khon	sbsh \
10309261c4fSBrooks Davis	sf \
10409261c4fSBrooks Davis	sis \
10509261c4fSBrooks Davis	sk \
10609261c4fSBrooks Davis	sn \
10709261c4fSBrooks Davis	snp \
10809261c4fSBrooks Davis	ste \
10909261c4fSBrooks Davis	sym \
11009261c4fSBrooks Davis	sysvipc \
11109261c4fSBrooks Davis	ti \
11209261c4fSBrooks Davis	tl \
113f3d92b26SOlivier Houchard	trm \
11442d6ed03SBruce Evans	twe \
11509261c4fSBrooks Davis	tx \
116362c5c1eSBill Paul	txp \
11751d123d6SAlexander Kabaev	ubsa \
1188b7ce2ffSSam Leffler	ubsec \
119916e6e02SJosef Karthauser	ucom \
12009261c4fSBrooks Davis	udbp \
121df263cbdSScott Long	udf \
12242d6ed03SBruce Evans	ufm \
12331f48889SJosef Karthauser	uftdi \
12409261c4fSBrooks Davis	ugen \
12509261c4fSBrooks Davis	uhid \
12609261c4fSBrooks Davis	ukbd \
12709261c4fSBrooks Davis	ulpt \
12809261c4fSBrooks Davis	umapfs \
12909261c4fSBrooks Davis	umass \
13009261c4fSBrooks Davis	umodem \
13109261c4fSBrooks Davis	ums \
13209261c4fSBrooks Davis	unionfs \
133916e6e02SJosef Karthauser	uplcom \
13409261c4fSBrooks Davis	urio \
13509261c4fSBrooks Davis	usb \
1362fd84f56SNick Hibma	uscanner \
137591f4054SHartmut Brandt	utopia \
138ca095220SJosef Karthauser	uvisor \
139916e6e02SJosef Karthauser	uvscom \
14009261c4fSBrooks Davis	vpo \
14109261c4fSBrooks Davis	vr \
14209261c4fSBrooks Davis	vx \
14309261c4fSBrooks Davis	wb \
1440ac19bd5SSam Leffler	wlan \
14509261c4fSBrooks Davis	xl
146256c4043SNick Hibma
14742d6ed03SBruce Evans.if defined(WANT_EXT2FS_MODULE)
14842d6ed03SBruce EvansSUBDIR+=ext2fs
149aa980888SJake Burkholder.endif
150aa980888SJake Burkholder
1518c7cf505SMarcel Moolenaar.if !defined(NO_IPFILTER)
1527a43a96aSRuslan ErmilovSUBDIR+=ipfilter
1537a43a96aSRuslan Ermilov.endif
1547a43a96aSRuslan Ermilov
15542d6ed03SBruce Evans.if ${MACHINE_ARCH} != "sparc64"
15642d6ed03SBruce EvansSUBDIR+=syscons
15742d6ed03SBruce Evans.endif
15842d6ed03SBruce Evans
15928cc91d8SMike Smith# XXX some of these can move to the general case when de-i386'ed
1604e54e04eSWarner Losh# XXX some of these can move now, but are untested on other architectures.
16101c8945cSJohn Baldwin.if ${MACHINE_ARCH} == "i386"
162f6af4ff6SJohn BaldwinSUBDIR+=3dfx \
163f801952aSPeter Wemm	agp \
164f6af4ff6SJohn Baldwin	aic \
1653729f1a5SYoshihiro Takahashi	aout \
16642d6ed03SBruce Evans	apm \
1673729f1a5SYoshihiro Takahashi	ar \
1683729f1a5SYoshihiro Takahashi	arcnet \
169f7883a79SRobert Watson	awi \
1703729f1a5SYoshihiro Takahashi	bktr \
1713729f1a5SYoshihiro Takahashi	coff \
172484be8eaSYoshihiro Takahashi	drm \
17301c8945cSJohn Baldwin	ed \
174187e120cSMatthew N. Dodd	elink \
1753729f1a5SYoshihiro Takahashi	em \
1760921c98bSYoshihiro Takahashi	ep \
1773729f1a5SYoshihiro Takahashi	fe \
1783729f1a5SYoshihiro Takahashi	fpu \
1793729f1a5SYoshihiro Takahashi	gnufpu \
1803729f1a5SYoshihiro Takahashi	hea \
1813729f1a5SYoshihiro Takahashi	hfa \
18249336098SNicolas Souchu	i2c \
1833729f1a5SYoshihiro Takahashi	ibcs2 \
184dd4cb1b8SMatthew N. Dodd	ie \
1853729f1a5SYoshihiro Takahashi	linprocfs \
1863729f1a5SYoshihiro Takahashi	linux \
18701c8945cSJohn Baldwin	lnc \
188ef9e45ddSTim J. Robbins	ncp \
1893729f1a5SYoshihiro Takahashi	ncv \
1903729f1a5SYoshihiro Takahashi	netgraph \
19142d6ed03SBruce Evans	nsp \
192ef9e45ddSTim J. Robbins	nwfs \
1933729f1a5SYoshihiro Takahashi	oltr \
1940921c98bSYoshihiro Takahashi	pccard \
19542d6ed03SBruce Evans	pecoff \
1963729f1a5SYoshihiro Takahashi	ray \
1973729f1a5SYoshihiro Takahashi	sbni \
1983729f1a5SYoshihiro Takahashi	scsi_low \
1993729f1a5SYoshihiro Takahashi	smbfs \
2003729f1a5SYoshihiro Takahashi	sound \
201a71a3073SMatthew N. Dodd	speaker \
2023729f1a5SYoshihiro Takahashi	splash \
2033729f1a5SYoshihiro Takahashi	sppp \
2043729f1a5SYoshihiro Takahashi	sr \
2053729f1a5SYoshihiro Takahashi	stg \
2063729f1a5SYoshihiro Takahashi	streams \
2073729f1a5SYoshihiro Takahashi	vinum \
2083729f1a5SYoshihiro Takahashi	wi \
2093729f1a5SYoshihiro Takahashi	xe
21001c8945cSJohn Baldwin
21101c8945cSJohn Baldwin.if ${MACHINE} == "i386"
21201c8945cSJohn BaldwinSUBDIR+=aac \
21301c8945cSJohn Baldwin	acpi \
21401c8945cSJohn Baldwin	asr \
21581d9009aSMatthew N. Dodd	bios \
21601c8945cSJohn Baldwin	cardbus \
21701c8945cSJohn Baldwin	cbb \
21801c8945cSJohn Baldwin	ciss \
21901c8945cSJohn Baldwin	cm \
220ba32bfe2SYoshihiro Takahashi	dpt \
22101c8945cSJohn Baldwin	el \
222ba32bfe2SYoshihiro Takahashi	ex \
22301c8945cSJohn Baldwin	exca \
224ba32bfe2SYoshihiro Takahashi	idt \
22501c8945cSJohn Baldwin	iir \
2263e4e4849SYoshihiro Takahashi	ips \
22701c8945cSJohn Baldwin	mly \
22801c8945cSJohn Baldwin	s3 \
22901c8945cSJohn Baldwin	vesa
23001c8945cSJohn Baldwin
23101c8945cSJohn Baldwin.elif ${MACHINE} == "pc98"
23283536948SYoshihiro TakahashiSUBDIR+=canbepm \
23383536948SYoshihiro Takahashi	canbus \
23401c8945cSJohn Baldwin	pmc \
23501c8945cSJohn Baldwin	snc
23601c8945cSJohn Baldwin.endif
2373729f1a5SYoshihiro Takahashi.endif
2383729f1a5SYoshihiro Takahashi
2393adcb4ceSMarcel Moolenaar.if ${MACHINE_ARCH} == "ia64"
2408c7cf505SMarcel Moolenaar# Modules not enabled on ia64 (as compared to i386) include:
2418c7cf505SMarcel Moolenaar#	aac acpi aout apm atspeaker drm fpu gnufpu ibcs2 linprocfs linux ncv
2428c7cf505SMarcel Moolenaar#	nsp oltr pecoff s3 sbni stg vesa
2433adcb4ceSMarcel MoolenaarSUBDIR+=aic \
2448c7cf505SMarcel Moolenaar	ar \
2453adcb4ceSMarcel Moolenaar	arcnet \
2468c7cf505SMarcel Moolenaar	asr \
2478c7cf505SMarcel Moolenaar	bktr \
2488c7cf505SMarcel Moolenaar	cardbus \
2498c7cf505SMarcel Moolenaar	cbb \
2503adcb4ceSMarcel Moolenaar	ciss \
2513adcb4ceSMarcel Moolenaar	cm \
2523adcb4ceSMarcel Moolenaar	coff \
2533adcb4ceSMarcel Moolenaar	el \
2543adcb4ceSMarcel Moolenaar	em \
2558c7cf505SMarcel Moolenaar	ep \
2568c7cf505SMarcel Moolenaar	exca \
2573adcb4ceSMarcel Moolenaar	fe \
2588c7cf505SMarcel Moolenaar	hea \
2598c7cf505SMarcel Moolenaar	hfa \
2603adcb4ceSMarcel Moolenaar	iir \
2613adcb4ceSMarcel Moolenaar	mly \
2628c7cf505SMarcel Moolenaar	netgraph \
2638c7cf505SMarcel Moolenaar	pccard \
2643adcb4ceSMarcel Moolenaar	ray \
2658c7cf505SMarcel Moolenaar	rc \
2663adcb4ceSMarcel Moolenaar	scsi_low \
2673adcb4ceSMarcel Moolenaar	smbfs \
2688c7cf505SMarcel Moolenaar	sound \
2693adcb4ceSMarcel Moolenaar	splash \
2708c7cf505SMarcel Moolenaar	sppp \
2713adcb4ceSMarcel Moolenaar	sr \
2723adcb4ceSMarcel Moolenaar	streams \
2738c7cf505SMarcel Moolenaar	vinum \
2743adcb4ceSMarcel Moolenaar	wi \
2753adcb4ceSMarcel Moolenaar	xe
2763adcb4ceSMarcel Moolenaar.endif
2773adcb4ceSMarcel Moolenaar
2786c1029b1SAndrew Gallatin.if ${MACHINE_ARCH} == "alpha"
27905d1e23aSEric AnholtSUBDIR+=agp \
28005d1e23aSEric Anholt	linprocfs \
2813adcb4ceSMarcel Moolenaar	linux \
2823adcb4ceSMarcel Moolenaar	osf1 \
2833adcb4ceSMarcel Moolenaar	sound \
284ed323145SMarcel Moolenaar	sppp \
285ed323145SMarcel Moolenaar	vinum
2866c1029b1SAndrew Gallatin.endif
2876c1029b1SAndrew Gallatin
28873badb24SDavid E. O'Brien.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "sparc64"
28973badb24SDavid E. O'BrienSUBDIR+=gem
29073badb24SDavid E. O'Brien.endif
29173badb24SDavid E. O'Brien
292b1c519deSDavid E. O'Brien.if ${MACHINE_ARCH} == "sparc64"
29373badb24SDavid E. O'BrienSUBDIR+=hme
294b1c519deSDavid E. O'Brien.endif
295b1c519deSDavid E. O'Brien
2965a7ed3fbSPoul-Henning Kamp.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
297581a68a2SWarner LoshSUBDIR=${MODULES_OVERRIDE}
298581a68a2SWarner Losh.endif
299581a68a2SWarner Losh
3005e82ed7bSRuslan Ermilov# Calling kldxref(8) for each module is expensive.
3014875819cSJake Burkholder.if !defined(NO_XREF)
30299bca506SRuslan Ermilov.MAKEFLAGS+=	-DNO_XREF
3035e82ed7bSRuslan Ermilovafterinstall:
304be1d673dSRuslan Ermilov	@if type kldxref >/dev/null 2>&1; then \
305be1d673dSRuslan Ermilov		${ECHO} kldxref ${DESTDIR}${KMODDIR}; \
306be1d673dSRuslan Ermilov		kldxref ${DESTDIR}${KMODDIR}; \
307be1d673dSRuslan Ermilov	fi
3085e82ed7bSRuslan Ermilov.endif
3095e82ed7bSRuslan Ermilov
3100eec3684SGarrett Wollman.include <bsd.subdir.mk>
311