xref: /freebsd/sys/modules/Makefile (revision b9f78d2b4a8b3f55b6e04cfcc94105dd896d6f5c)
1c3aac50fSPeter Wemm# $FreeBSD$
20eec3684SGarrett Wollman
3ce3ae5c7SIan Dowse.if !defined(NOCRYPT) || defined(ALL_MODULES)
4ce3ae5c7SIan Dowse.if exists(${.CURDIR}/../opencrypto)
5f544a528SMark Murray_crypto=	crypto
6f544a528SMark Murray_cryptodev=	cryptodev
7f544a528SMark Murray.endif
8ce3ae5c7SIan Dowse.if exists(${.CURDIR}/../crypto)
9a6278a2aSMark Murray_random=	random
10fd8b5fb2SMark Murray.endif
11ce3ae5c7SIan Dowse.endif
12fd8b5fb2SMark Murray
13f6af4ff6SJohn BaldwinSUBDIR=	accf_data \
1409261c4fSBrooks Davis	accf_http \
1509261c4fSBrooks Davis	aha \
16fb404d6fSScott Long	aic7xxx \
1721d56e9cSAlfred Perlstein	aio \
1809261c4fSBrooks Davis	amr \
1909261c4fSBrooks Davis	an \
2081e151e4SSam Leffler	ath \
2109261c4fSBrooks Davis	aue \
2287b4a259SBill Paul	axe \
23b9f78d2bSBill Paul	bfe \
2495d67482SBill Paul	bge \
258c4026b5SPaul Saab	bridge \
26aa980888SJake Burkholder	cam \
27aa980888SJake Burkholder	cd9660 \
2809261c4fSBrooks Davis	coda \
29d14e51c9STim J. Robbins	coda5 \
30f544a528SMark Murray	${_crypto} \
31f544a528SMark Murray	${_cryptodev} \
3209261c4fSBrooks Davis	cue \
3309261c4fSBrooks Davis	dc \
3409261c4fSBrooks Davis	de \
3509261c4fSBrooks Davis	digi \
368c4026b5SPaul Saab	dummynet \
377d361237SHartmut Brandt	en \
38fb24f088SHartmut Brandt	fatm \
3909261c4fSBrooks Davis	fdc \
4042d6ed03SBruce Evans	fdescfs \
417d2ba89bSJohn Baldwin	firewire \
4209261c4fSBrooks Davis	fxp \
435d9bef64SPoul-Henning Kamp	geom \
44f8a984edSJonathan Lemon	gx \
4558aa55efSHartmut Brandt	harp \
46c594298bSHartmut Brandt	hatm \
478b7ce2ffSSam Leffler	hifn \
4809261c4fSBrooks Davis	if_disc \
4909261c4fSBrooks Davis	if_ef \
5042d6ed03SBruce Evans	if_faith \
5109261c4fSBrooks Davis	if_gif \
52b5e8c7d7SMaxim Sobolev	if_gre \
5309261c4fSBrooks Davis	if_ppp \
5409261c4fSBrooks Davis	if_sl \
5509261c4fSBrooks Davis	if_stf \
5609261c4fSBrooks Davis	if_tap \
5709261c4fSBrooks Davis	if_tun \
58214bfc97SBrooks Davis	if_vlan \
5909261c4fSBrooks Davis	ip6fw \
60fffcbbcdSBill Fenner	ip_mroute_mod \
6109261c4fSBrooks Davis	ipfw \
6297af632bSJohn Baldwin	isp \
6309261c4fSBrooks Davis	ispfw \
6409261c4fSBrooks Davis	joy \
6509261c4fSBrooks Davis	kue \
6609261c4fSBrooks Davis	lge \
670e3b6d50SSheldon Hearn	libiconv \
687e9024cdSHartmut Brandt	libmbpool \
6909261c4fSBrooks Davis	libmchain \
701b6c2589SPoul-Henning Kamp	lpt \
71ebbd4fa8SRobert Watson	mac_biba \
72ebbd4fa8SRobert Watson	mac_bsdextended \
73ebbd4fa8SRobert Watson	mac_ifoff \
745773cccfSRobert Watson	mac_lomac \
75ebbd4fa8SRobert Watson	mac_mls \
76ebbd4fa8SRobert Watson	mac_none \
7751363000SRobert Watson	mac_partition \
7803d03162SRobert Watson	mac_portacl \
79ebbd4fa8SRobert Watson	mac_seeotheruids \
80782f7255SRobert Watson	mac_stub \
81ebbd4fa8SRobert Watson	mac_test \
82e73b093aSMatthew N. Dodd	mcd \
8309261c4fSBrooks Davis	md \
8409261c4fSBrooks Davis	mii \
8509261c4fSBrooks Davis	mlx \
86bc96e1c7SJohn Baldwin	mpt \
8786597d47SMaxime Henrion	msdosfs \
88e4de92ceSRuslan Ermilov	my \
89eb25edbdSPeter Wemm	nfsclient \
90eb25edbdSPeter Wemm	nfsserver \
9109261c4fSBrooks Davis	nge \
9209261c4fSBrooks Davis	nmdm \
9309261c4fSBrooks Davis	ntfs \
9409261c4fSBrooks Davis	nullfs \
958dd4275cSHartmut Brandt	patm \
9609261c4fSBrooks Davis	pcn \
971b6c2589SPoul-Henning Kamp	plip \
9809261c4fSBrooks Davis	portalfs \
991b6c2589SPoul-Henning Kamp	ppbus \
1001b6c2589SPoul-Henning Kamp	ppi \
1011b6c2589SPoul-Henning Kamp	pps \
1023fd18735SDag-Erling Smørgrav	procfs \
1033fd18735SDag-Erling Smørgrav	pseudofs \
104d7d54aa1SSøren Schmidt	pst \
105147e2e20SScott Long	raidframe \
10609261c4fSBrooks Davis	${_random} \
107787f1498SJohn Baldwin	rc \
1080ac19bd5SSam Leffler	rc4 \
109a94100faSBill Paul	re \
11009261c4fSBrooks Davis	rl \
11109261c4fSBrooks Davis	rp \
11211e04b05SShunsuke Akiyama	rue \
1137d0de413SMax Khon	sbsh \
11426a9ce3eSMatthew N. Dodd	scd \
11509261c4fSBrooks Davis	sf \
11609261c4fSBrooks Davis	sis \
11709261c4fSBrooks Davis	sk \
11809261c4fSBrooks Davis	sn \
11909261c4fSBrooks Davis	snp \
12009261c4fSBrooks Davis	ste \
12109261c4fSBrooks Davis	sym \
12209261c4fSBrooks Davis	sysvipc \
12309261c4fSBrooks Davis	ti \
12409261c4fSBrooks Davis	tl \
125f3d92b26SOlivier Houchard	trm \
12642d6ed03SBruce Evans	twe \
12709261c4fSBrooks Davis	tx \
128362c5c1eSBill Paul	txp \
1292bec1c89SMarcel Moolenaar	uart \
13051d123d6SAlexander Kabaev	ubsa \
1318b7ce2ffSSam Leffler	ubsec \
132916e6e02SJosef Karthauser	ucom \
13309261c4fSBrooks Davis	udbp \
134df263cbdSScott Long	udf \
13542d6ed03SBruce Evans	ufm \
13631f48889SJosef Karthauser	uftdi \
13709261c4fSBrooks Davis	ugen \
13809261c4fSBrooks Davis	uhid \
13909261c4fSBrooks Davis	ukbd \
14009261c4fSBrooks Davis	ulpt \
14109261c4fSBrooks Davis	umapfs \
14209261c4fSBrooks Davis	umass \
143c31c8523SScott Long	umct \
14409261c4fSBrooks Davis	umodem \
14509261c4fSBrooks Davis	ums \
14609261c4fSBrooks Davis	unionfs \
147916e6e02SJosef Karthauser	uplcom \
14809261c4fSBrooks Davis	urio \
14909261c4fSBrooks Davis	usb \
1502fd84f56SNick Hibma	uscanner \
151591f4054SHartmut Brandt	utopia \
152ca095220SJosef Karthauser	uvisor \
153916e6e02SJosef Karthauser	uvscom \
15409261c4fSBrooks Davis	vpo \
15509261c4fSBrooks Davis	vr \
15609261c4fSBrooks Davis	vx \
15709261c4fSBrooks Davis	wb \
1580ac19bd5SSam Leffler	wlan \
15909261c4fSBrooks Davis	xl
160256c4043SNick Hibma
1617a07b896SIan Dowse.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "alpha"
162ce3ae5c7SIan Dowse.if defined(WANT_EXT2FS_MODULE) || defined(ALL_MODULES)
16342d6ed03SBruce EvansSUBDIR+=ext2fs
164aa980888SJake Burkholder.endif
1657a07b896SIan Dowse.endif
166aa980888SJake Burkholder
167ce3ae5c7SIan Dowse.if !defined(NO_IPFILTER) || defined(ALL_MODULES)
1687a43a96aSRuslan ErmilovSUBDIR+=ipfilter
1697a43a96aSRuslan Ermilov.endif
1707a43a96aSRuslan Ermilov
17142d6ed03SBruce Evans.if ${MACHINE_ARCH} != "sparc64"
17242d6ed03SBruce EvansSUBDIR+=syscons
17342d6ed03SBruce Evans.endif
17442d6ed03SBruce Evans
17528cc91d8SMike Smith# XXX some of these can move to the general case when de-i386'ed
1764e54e04eSWarner Losh# XXX some of these can move now, but are untested on other architectures.
17701c8945cSJohn Baldwin.if ${MACHINE_ARCH} == "i386"
178f6af4ff6SJohn BaldwinSUBDIR+=3dfx \
179f801952aSPeter Wemm	agp \
180f6af4ff6SJohn Baldwin	aic \
181cf8603ceSRuslan Ermilov	amd \
1823729f1a5SYoshihiro Takahashi	aout \
18342d6ed03SBruce Evans	apm \
1843729f1a5SYoshihiro Takahashi	ar \
1853729f1a5SYoshihiro Takahashi	arcnet \
18681e151e4SSam Leffler	ath_hal \
187f7883a79SRobert Watson	awi \
1883729f1a5SYoshihiro Takahashi	bktr \
1893729f1a5SYoshihiro Takahashi	coff \
190484be8eaSYoshihiro Takahashi	drm \
19101c8945cSJohn Baldwin	ed \
192187e120cSMatthew N. Dodd	elink \
1933729f1a5SYoshihiro Takahashi	em \
1940921c98bSYoshihiro Takahashi	ep \
1953729f1a5SYoshihiro Takahashi	fe \
1963729f1a5SYoshihiro Takahashi	hea \
1973729f1a5SYoshihiro Takahashi	hfa \
19849336098SNicolas Souchu	i2c \
1993729f1a5SYoshihiro Takahashi	ibcs2 \
200dd4cb1b8SMatthew N. Dodd	ie \
2013729f1a5SYoshihiro Takahashi	linprocfs \
2023729f1a5SYoshihiro Takahashi	linux \
20301c8945cSJohn Baldwin	lnc \
204ef9e45ddSTim J. Robbins	ncp \
2053729f1a5SYoshihiro Takahashi	ncv \
2063729f1a5SYoshihiro Takahashi	netgraph \
20742d6ed03SBruce Evans	nsp \
208ef9e45ddSTim J. Robbins	nwfs \
2093729f1a5SYoshihiro Takahashi	oltr \
2100921c98bSYoshihiro Takahashi	pccard \
21196e934dfSDavid E. O'Brien	pcfclock \
21242d6ed03SBruce Evans	pecoff \
2133729f1a5SYoshihiro Takahashi	ray \
21435ba56ecSSam Leffler	safe \
2153729f1a5SYoshihiro Takahashi	sbni \
2163729f1a5SYoshihiro Takahashi	scsi_low \
2173729f1a5SYoshihiro Takahashi	smbfs \
2183729f1a5SYoshihiro Takahashi	sound \
219a71a3073SMatthew N. Dodd	speaker \
2203729f1a5SYoshihiro Takahashi	splash \
2213729f1a5SYoshihiro Takahashi	sppp \
2223729f1a5SYoshihiro Takahashi	sr \
2233729f1a5SYoshihiro Takahashi	stg \
2243729f1a5SYoshihiro Takahashi	streams \
2253729f1a5SYoshihiro Takahashi	vinum \
2263729f1a5SYoshihiro Takahashi	wi \
2273729f1a5SYoshihiro Takahashi	xe
22801c8945cSJohn Baldwin
22901c8945cSJohn Baldwin.if ${MACHINE} == "i386"
23001c8945cSJohn BaldwinSUBDIR+=aac \
23101c8945cSJohn Baldwin	acpi \
23201c8945cSJohn Baldwin	asr \
23381d9009aSMatthew N. Dodd	bios \
23401c8945cSJohn Baldwin	cardbus \
23501c8945cSJohn Baldwin	cbb \
23601c8945cSJohn Baldwin	ciss \
23701c8945cSJohn Baldwin	cm \
238ba32bfe2SYoshihiro Takahashi	dpt \
23901c8945cSJohn Baldwin	el \
240ba32bfe2SYoshihiro Takahashi	ex \
24101c8945cSJohn Baldwin	exca \
242ba32bfe2SYoshihiro Takahashi	idt \
24301c8945cSJohn Baldwin	iir \
2443e4e4849SYoshihiro Takahashi	ips \
24501c8945cSJohn Baldwin	mly \
24601c8945cSJohn Baldwin	s3 \
24701c8945cSJohn Baldwin	vesa
24801c8945cSJohn Baldwin
24901c8945cSJohn Baldwin.elif ${MACHINE} == "pc98"
25083536948SYoshihiro TakahashiSUBDIR+=canbepm \
25183536948SYoshihiro Takahashi	canbus \
25201c8945cSJohn Baldwin	pmc \
25301c8945cSJohn Baldwin	snc
25401c8945cSJohn Baldwin.endif
2553729f1a5SYoshihiro Takahashi.endif
2563729f1a5SYoshihiro Takahashi
2573adcb4ceSMarcel Moolenaar.if ${MACHINE_ARCH} == "ia64"
2588c7cf505SMarcel Moolenaar# Modules not enabled on ia64 (as compared to i386) include:
259a35b3386SPeter Wemm#	aac acpi aout apm atspeaker drm ibcs2 linprocfs linux ncv
2608c7cf505SMarcel Moolenaar#	nsp oltr pecoff s3 sbni stg vesa
2613adcb4ceSMarcel MoolenaarSUBDIR+=aic \
2628c7cf505SMarcel Moolenaar	ar \
2633adcb4ceSMarcel Moolenaar	arcnet \
2648c7cf505SMarcel Moolenaar	asr \
2658c7cf505SMarcel Moolenaar	bktr \
2668c7cf505SMarcel Moolenaar	cardbus \
2678c7cf505SMarcel Moolenaar	cbb \
2683adcb4ceSMarcel Moolenaar	ciss \
2693adcb4ceSMarcel Moolenaar	cm \
2703adcb4ceSMarcel Moolenaar	coff \
2713adcb4ceSMarcel Moolenaar	el \
2723adcb4ceSMarcel Moolenaar	em \
2738c7cf505SMarcel Moolenaar	ep \
2748c7cf505SMarcel Moolenaar	exca \
2753adcb4ceSMarcel Moolenaar	fe \
2768c7cf505SMarcel Moolenaar	hea \
2778c7cf505SMarcel Moolenaar	hfa \
2783adcb4ceSMarcel Moolenaar	iir \
2793adcb4ceSMarcel Moolenaar	mly \
2808c7cf505SMarcel Moolenaar	netgraph \
2818c7cf505SMarcel Moolenaar	pccard \
2823adcb4ceSMarcel Moolenaar	ray \
2838c7cf505SMarcel Moolenaar	rc \
2843adcb4ceSMarcel Moolenaar	scsi_low \
2853adcb4ceSMarcel Moolenaar	smbfs \
2868c7cf505SMarcel Moolenaar	sound \
2873adcb4ceSMarcel Moolenaar	splash \
2888c7cf505SMarcel Moolenaar	sppp \
2893adcb4ceSMarcel Moolenaar	sr \
2903adcb4ceSMarcel Moolenaar	streams \
2918c7cf505SMarcel Moolenaar	vinum \
2923adcb4ceSMarcel Moolenaar	wi \
2933adcb4ceSMarcel Moolenaar	xe
2943adcb4ceSMarcel Moolenaar.endif
2953adcb4ceSMarcel Moolenaar
2966c1029b1SAndrew Gallatin.if ${MACHINE_ARCH} == "alpha"
29705d1e23aSEric AnholtSUBDIR+=agp \
29805d1e23aSEric Anholt	linprocfs \
2993adcb4ceSMarcel Moolenaar	linux \
3003adcb4ceSMarcel Moolenaar	osf1 \
3013adcb4ceSMarcel Moolenaar	sound \
302ed323145SMarcel Moolenaar	sppp \
303ed323145SMarcel Moolenaar	vinum
3046c1029b1SAndrew Gallatin.endif
3056c1029b1SAndrew Gallatin
30673badb24SDavid E. O'Brien.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "sparc64"
30773badb24SDavid E. O'BrienSUBDIR+=gem
30873badb24SDavid E. O'Brien.endif
30973badb24SDavid E. O'Brien
310b1c519deSDavid E. O'Brien.if ${MACHINE_ARCH} == "sparc64"
31173badb24SDavid E. O'BrienSUBDIR+=hme
312b1c519deSDavid E. O'Brien.endif
313b1c519deSDavid E. O'Brien
314ce3ae5c7SIan Dowse.if defined(ALL_MODULES)
31561340e72SRuslan ErmilovSUBDIR+=null
316ce3ae5c7SIan DowseSUBDIR+=ufs
317ce3ae5c7SIan Dowse.endif
318ce3ae5c7SIan Dowse
3195a7ed3fbSPoul-Henning Kamp.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
320581a68a2SWarner LoshSUBDIR=${MODULES_OVERRIDE}
321581a68a2SWarner Losh.endif
322581a68a2SWarner Losh
3235e82ed7bSRuslan Ermilov# Calling kldxref(8) for each module is expensive.
3244875819cSJake Burkholder.if !defined(NO_XREF)
32599bca506SRuslan Ermilov.MAKEFLAGS+=	-DNO_XREF
3265e82ed7bSRuslan Ermilovafterinstall:
327be1d673dSRuslan Ermilov	@if type kldxref >/dev/null 2>&1; then \
328be1d673dSRuslan Ermilov		${ECHO} kldxref ${DESTDIR}${KMODDIR}; \
329be1d673dSRuslan Ermilov		kldxref ${DESTDIR}${KMODDIR}; \
330be1d673dSRuslan Ermilov	fi
3315e82ed7bSRuslan Ermilov.endif
3325e82ed7bSRuslan Ermilov
3330eec3684SGarrett Wollman.include <bsd.subdir.mk>
334