xref: /freebsd/sys/modules/Makefile (revision 5e74264452c44b6d88fd9b5f1133aa24ce16d4c1)
1c3aac50fSPeter Wemm# $FreeBSD$
20eec3684SGarrett Wollman
3df3394b3SWarner LoshSYSDIR?=${.CURDIR}/..
4df3394b3SWarner Losh.include "${SYSDIR}/conf/kern.opts.mk"
5e1fe3dbaSRuslan Ermilov
641bc2b72SIan LeporeSUBDIR_PARALLEL=
741bc2b72SIan Lepore
84a47892cSRobert Millan# Modules that include binary-only blobs of microcode should be selectable by
94a47892cSRobert Millan# MK_SOURCELESS_UCODE option (see below).
104a47892cSRobert Millan
1179785bbfSEnji Cooper.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES)
1279785bbfSEnji CooperSUBDIR=${MODULES_OVERRIDE}
1379785bbfSEnji Cooper.else
1498663aa0SDavid E. O'BrienSUBDIR=	\
1598663aa0SDavid E. O'Brien	${_3dfx} \
16375ce679SYaroslav Tykhiy	${_3dfx_linux} \
17b8eaa978SRuslan Ermilov	${_aac} \
18dce93cd0SAchim Leubner	${_aacraid} \
19b8eaa978SRuslan Ermilov	accf_data \
20744eaff7SDavid Malone	accf_dns \
2109261c4fSBrooks Davis	accf_http \
229124ddebSAdrian Chadd	acl_nfs4 \
239124ddebSAdrian Chadd	acl_posix1e \
24b8eaa978SRuslan Ermilov	${_acpi} \
25ba26d470SStanislav Sedov	ae \
265f270659SKonstantin Belousov	${_aesni} \
27cfef026aSPyun YongHyeon	age \
28b8eaa978SRuslan Ermilov	${_agp} \
2909261c4fSBrooks Davis	aha \
301c534adaSWarner Losh	${_ahb} \
3152c9ce25SScott Long	ahci \
32b8eaa978SRuslan Ermilov	${_aic} \
33fb404d6fSScott Long	aic7xxx \
3421d56e9cSAlfred Perlstein	aio \
35d68875ebSPyun YongHyeon	alc \
363c6e15bcSPyun YongHyeon	ale \
37d28f42f9SLawrence Stewart	alq \
385022f21bSAndriy Gapon	${_amdsbwd} \
392b201a17SAndriy Gapon	${_amdtemp} \
4009261c4fSBrooks Davis	amr \
41d87076c8SWarner Losh	${_an} \
42b8eaa978SRuslan Ermilov	${_aout} \
43b8eaa978SRuslan Ermilov	${_apm} \
44d0885ac3SScott Long	${_arcmsr} \
45b8eaa978SRuslan Ermilov	${_arcnet} \
46e702bc74SRui Paulo	${_asmc} \
478ca4df32SSøren Schmidt	ata \
4833644623SSam Leffler	ath \
49dba9c859SAdrian Chadd	ath_pci \
50b3590423SEnji Cooper	${_autofs} \
51e60fc88fSPyun YongHyeon	${_auxio} \
524a47892cSRobert Millan	${_bce} \
53b9f78d2bSBill Paul	bfe \
5495d67482SBill Paul	bge \
55102657cbSDavid Christensen	${_bxe} \
56b8eaa978SRuslan Ermilov	${_bios} \
57b8eaa978SRuslan Ermilov	${_bktr} \
58cf99524aSMarcel Moolenaar	${_bm} \
598a33eee1SAndrew Thompson	bridgestp \
60215da5ecSWarner Losh	bwi \
61215da5ecSWarner Losh	bwn \
62aa980888SJake Burkholder	cam \
63b8eaa978SRuslan Ermilov	${_canbepm} \
64b8eaa978SRuslan Ermilov	${_canbus} \
65b8eaa978SRuslan Ermilov	${_cardbus} \
66663222f1SGleb Smirnoff	${_carp} \
67119051cbSMarius Strobl	cas \
68b8eaa978SRuslan Ermilov	${_cbb} \
69ad4e3b96SLawrence Stewart	cc \
70aa980888SJake Burkholder	cd9660 \
71c4f02a89SMax Khon	cd9660_iconv \
72f2ca64caSRoman Kurakin	${_ce} \
732064b86fSMarcel Moolenaar	${_cfi} \
74b8eaa978SRuslan Ermilov	${_ciss} \
758bc78518SEd Schouten	cloudabi \
768bc78518SEd Schouten	${_cloudabi64} \
77b8eaa978SRuslan Ermilov	${_cm} \
78603d67aeSRink Springer	${_cmx} \
79b8eaa978SRuslan Ermilov	${_coff} \
8083d18f22SDag-Erling Smørgrav	${_coretemp} \
814dba35d1SRoman Kurakin	${_cp} \
82e53470feSOleksandr Tymoshenko	${_cpsw} \
83e085f869SStanislav Sedov	${_cpuctl} \
846ab93acaSScott Long	${_cpufreq} \
85f544a528SMark Murray	${_crypto} \
86f544a528SMark Murray	${_cryptodev} \
8717d56bddSWarner Losh	${_cs} \
882a6ce61aSJohn Baldwin	${_ct} \
896ca77a6fSRoman Kurakin	${_ctau} \
9032562145SEdward Tomasz Napierala	ctl \
91c99255b8SWarner Losh	${_cxgb} \
924310207eSRobert Millan	${_cxgbe} \
9309261c4fSBrooks Davis	dc \
94869093b1SHidetoshi Shimokawa	dcons \
95869093b1SHidetoshi Shimokawa	dcons_crom \
9609261c4fSBrooks Davis	de \
97aa7c1c05SJohn Baldwin	${_dpms} \
98b8eaa978SRuslan Ermilov	${_dpt} \
99b8eaa978SRuslan Ermilov	${_drm} \
100ccc00630SKonstantin Belousov	${_drm2} \
1018c4026b5SPaul Saab	dummynet \
102b8eaa978SRuslan Ermilov	${_ed} \
103b8eaa978SRuslan Ermilov	${_elink} \
104b8eaa978SRuslan Ermilov	${_em} \
1057d361237SHartmut Brandt	en \
106b8eaa978SRuslan Ermilov	${_ep} \
107319570f9SMarius Strobl	${_epic} \
108a9ab459bSMarius Strobl	esp \
1094d52a575SXin LI	${_et} \
110b8eaa978SRuslan Ermilov	${_ex} \
111b8eaa978SRuslan Ermilov	${_exca} \
1124be7e5f8SJustin Hibbits	ext2fs \
1134a47892cSRobert Millan	${_fatm} \
11409261c4fSBrooks Davis	fdc \
11542d6ed03SBruce Evans	fdescfs \
116b8eaa978SRuslan Ermilov	${_fe} \
1170d773745SDavid E. O'Brien	${_filemon} \
1187d2ba89bSJohn Baldwin	firewire \
1196aec1278SMax Laier	firmware \
1205fe58019SAttilio Rao	fuse \
1214a47892cSRobert Millan	${_fxp} \
1221ed3fed7SMarius Strobl	gem \
1235d9bef64SPoul-Henning Kamp	geom \
124149d1c89SHenrik Brix Andersen	${_glxiic} \
125a51aa5d1SPhilip Paeps	${_glxsb} \
126c594298bSHartmut Brandt	hatm \
1278b7ce2ffSSam Leffler	hifn \
128ac341582SMarius Strobl	hme \
12981966bceSXin LI	${_hpt27xx} \
130f73e86c3SScott Long	${_hptiop} \
131085f35d6SScott Long	${_hptmv} \
1321fdeb165SXin LI	${_hptnr} \
133b063a422SScott Long	${_hptrr} \
1349c3a1281SMarcel Moolenaar	hwpmc \
1357d99ab9fSPeter Grehan	${_hyperv} \
1364be7e5f8SJustin Hibbits	i2c \
137c9f432b7SAlfred Perlstein        ${_ibcore} \
138b8eaa978SRuslan Ermilov	${_ibcs2} \
139cae8da61SDag-Erling Smørgrav	${_ichwd} \
140b8eaa978SRuslan Ermilov	${_ida} \
141b8eaa978SRuslan Ermilov	${_ie} \
1427afc53b8SAndrew Thompson	if_bridge \
14309261c4fSBrooks Davis	if_disc \
14463518eccSYaroslav Tykhiy	if_edsc \
145d0ea4743SBjoern A. Zeeb	if_epair \
146f325335cSAndrey V. Elsukov	${_if_gif} \
147af8a927eSBjoern A. Zeeb	${_if_gre} \
148f325335cSAndrey V. Elsukov	${_if_me} \
14918242d3bSAndrew Thompson	if_lagg \
15096b50ea3SBill Paul	${_if_ndis} \
151a5965d15SAndrey V. Elsukov	${_if_stf} \
15209261c4fSBrooks Davis	if_tap \
15309261c4fSBrooks Davis	if_tun \
154214bfc97SBrooks Davis	if_vlan \
155007054f0SBryan Venteicher	if_vxlan \
1566f48e680SJack F Vogel	${_igb} \
157b8eaa978SRuslan Ermilov	${_iir} \
15881e3caafSJustin Hibbits	imgact_binmisc \
1598ab2f5ecSMark Murray	${_io} \
160e974f91cSConrad Meyer	${_ioat} \
161c9f432b7SAlfred Perlstein        ${_ipoib} \
162aa57e971SBjoern A. Zeeb	${_ipdivert} \
163b8eaa978SRuslan Ermilov	${_ipfilter} \
1648813217aSBjoern A. Zeeb	${_ipfw} \
165755d3f8aSPaolo Pisati	ipfw_nat \
1661c204a57SDoug Ambrisko	${_ipmi} \
167d5c0af17SAndrey V. Elsukov	ip6_mroute_mod \
1688c11b231SRuslan Ermilov	ip_mroute_mod \
169b8eaa978SRuslan Ermilov	${_ips} \
170b4c31113SDamien Bergamini	${_ipw} \
1717bd6fde3SFlorent Thoumie	${_ipwfw} \
172f11c7f63SJim Harris	${_isci} \
17397af632bSJohn Baldwin	isp \
1744a47892cSRobert Millan	${_ispfw} \
175b4c31113SDamien Bergamini	${_iwi} \
1767bd6fde3SFlorent Thoumie	${_iwifw} \
177444e7e3dSRui Paulo	${_iwm} \
178444e7e3dSRui Paulo	${_iwmfw} \
1793971d07bSSam Leffler	${_iwn} \
1803971d07bSSam Leffler	${_iwnfw} \
181bc2e8d79SJack F Vogel	${_ix} \
182bc2e8d79SJack F Vogel	${_ixv} \
1831f6c33acSEric Joyner	${_ixgb} \
184d502eb6dSJack F Vogel	${_ixl} \
185d502eb6dSJack F Vogel	${_ixlv} \
18675a1bf5fSPyun YongHyeon	jme \
18709261c4fSBrooks Davis	joy \
188f9e56677SMaksim Yevmenkin	kbdmux \
1897e7fd7d1SRick Macklem	kgssapi \
1907e7fd7d1SRick Macklem	kgssapi_krb5 \
1916987b09fSLawrence Stewart	khelp \
192fa9d9930SDoug Rabson	krpc \
19300a5db46SStacey Son	ksyms \
19444ac0964SMarius Strobl	le \
19509261c4fSBrooks Davis	lge \
1966cd047a0SGleb Smirnoff	libalias \
1970e3b6d50SSheldon Hearn	libiconv \
1987e9024cdSHartmut Brandt	libmbpool \
19909261c4fSBrooks Davis	libmchain \
200b8eaa978SRuslan Ermilov	${_linprocfs} \
20132397ce0SDoug Ambrisko	${_linsysfs} \
202b8eaa978SRuslan Ermilov	${_linux} \
20367d39748SDmitry Chagin	${_linux_common} \
204c0fe996dSDmitry Chagin	${_linux64} \
2052da3897dSHans Petter Selasky	${_linuxkpi} \
2062bc6081cSScott Long	lmc \
2071b6c2589SPoul-Henning Kamp	lpt \
208ebbd4fa8SRobert Watson	mac_biba \
209ebbd4fa8SRobert Watson	mac_bsdextended \
210ebbd4fa8SRobert Watson	mac_ifoff \
2115773cccfSRobert Watson	mac_lomac \
212ebbd4fa8SRobert Watson	mac_mls \
213ebbd4fa8SRobert Watson	mac_none \
21451363000SRobert Watson	mac_partition \
21503d03162SRobert Watson	mac_portacl \
216ebbd4fa8SRobert Watson	mac_seeotheruids \
217782f7255SRobert Watson	mac_stub \
218ebbd4fa8SRobert Watson	mac_test \
219e76ee875SWeongyo Jeong	malo \
220e73b093aSMatthew N. Dodd	mcd \
22109261c4fSBrooks Davis	md \
2229004f894SDavid E. O'Brien	mem \
223215da5ecSWarner Losh	mfi \
22409261c4fSBrooks Davis	mii \
22509261c4fSBrooks Davis	mlx \
2263b1f0b5dSJeff Roberson	${_mlx4} \
2273b1f0b5dSJeff Roberson	${_mlx4ib} \
2283b1f0b5dSJeff Roberson	${_mlxen} \
229b8eaa978SRuslan Ermilov	${_mly} \
230831f5dcfSAlexander Motin	mmc \
231831f5dcfSAlexander Motin	mmcsd \
232991554f2SKenneth D. Merry	mpr \
233d3c7b9a0SKenneth D. Merry	mps \
234215da5ecSWarner Losh	mpt \
2356c597554SDavid Xu	mqueue \
236665484d8SDoug Ambrisko	mrsas \
23786597d47SMaxime Henrion	msdosfs \
238c4f02a89SMax Khon	msdosfs_iconv \
239d4df4850SRuslan Ermilov	${_mse} \
240c9d21ce9SPyun YongHyeon	msk \
2413b1f0b5dSJeff Roberson	${_mthca} \
242dd48af36SAlexander Motin	mvs \
243cf4c5a53SSam Leffler	mwl \
2444a47892cSRobert Millan	${_mwlfw} \
245f9ae0280SAndrew Gallatin	mxge \
246e4de92ceSRuslan Ermilov	my \
2477f725bcdSGrzegorz Bernacki	${_nandfs} \
2487f725bcdSGrzegorz Bernacki	${_nandsim} \
2493355bd61SRui Paulo	${_ncr} \
250b8eaa978SRuslan Ermilov	${_ncv} \
251b8eaa978SRuslan Ermilov	${_ndis} \
2524a9af7d5SBjoern A. Zeeb	netfpga10g \
253abae4e8aSAntoine Brodin	${_netgraph} \
254bfc788c2SDavid E. O'Brien	${_nfe} \
255bcbdacddSRick Macklem	nfscl \
256bcbdacddSRick Macklem	nfscommon \
257bcbdacddSRick Macklem	nfsd \
258f92bbff2SRick Macklem	nfslock \
259fa9d9930SDoug Rabson	nfslockd \
26045452edcSRick Macklem	nfssvc \
26109261c4fSBrooks Davis	nge \
26209261c4fSBrooks Davis	nmdm \
263b8eaa978SRuslan Ermilov	${_nsp} \
26409261c4fSBrooks Davis	nullfs \
265e47937d1SCarl Delsey	${_ntb} \
266eb85d44fSJim Harris	${_nvd} \
267eb85d44fSJim Harris	${_nvme} \
268d5566384SPeter Wemm	${_nvram} \
2698c11b231SRuslan Ermilov	${_nxge} \
2702f345d8eSLuigi Rizzo	oce \
271a9fcb51fSAdrian Chadd	otus \
272a9fcb51fSAdrian Chadd	otusfw \
273ae1f3df4SWarner Losh	ow \
274ef0a6e20SPawel Jakub Dawidek	${_padlock} \
27510cb2424SMark Murray	${_padlock_rng} \
2768dd4275cSHartmut Brandt	patm \
277b8eaa978SRuslan Ermilov	${_pccard} \
278b8eaa978SRuslan Ermilov	${_pcfclock} \
27909261c4fSBrooks Davis	pcn \
2808d69c48bSMax Laier	${_pf} \
2815bba2114SMax Laier	${_pflog} \
282e0bfbfceSBjoern A. Zeeb	${_pfsync} \
2831b6c2589SPoul-Henning Kamp	plip \
284b8eaa978SRuslan Ermilov	${_pmc} \
285a650d869SBenno Rice	${_pms} \
2861b6c2589SPoul-Henning Kamp	ppbus \
287c69e06b1SMarcel Moolenaar	ppc \
2881b6c2589SPoul-Henning Kamp	ppi \
2891b6c2589SPoul-Henning Kamp	pps \
2903fd18735SDag-Erling Smørgrav	procfs \
29167fb10f3SMarcel Moolenaar	proto \
2923fd18735SDag-Erling Smørgrav	pseudofs \
2934f05e3faSRuslan Ermilov	${_pst} \
294f105c8beSEd Schouten	pty  \
295c69e06b1SMarcel Moolenaar	puc \
296711bcba0SDavid C Somayajulu	${_qlxge} \
2970bc7cf6fSBjoern A. Zeeb	${_qlxgb} \
298f10a77bbSDavid C Somayajulu	${_qlxgbe} \
299ceaec73dSDamien Bergamini	ral \
3004a47892cSRobert Millan	${_ralfw} \
301646041a8SMark Murray	${_random_fortuna} \
302646041a8SMark Murray	${_random_yarrow} \
303646041a8SMark Murray	${_random_other} \
3040ac19bd5SSam Leffler	rc4 \
30553d68f00SKip Macy	${_rdma} \
30610cb2424SMark Murray	${_rdrand_rng} \
307a94100faSBill Paul	re \
308e0afbb58SJean-Sébastien Pédron	reiserfs \
30909261c4fSBrooks Davis	rl \
310b8eaa978SRuslan Ermilov	${_s3} \
311b8eaa978SRuslan Ermilov	${_safe} \
31226e46883SJohn Baldwin	${_sbni} \
313af2e25a6SMarcel Moolenaar	scc \
31426a9ce3eSMatthew N. Dodd	scd \
315b8eaa978SRuslan Ermilov	${_scsi_low} \
316831f5dcfSAlexander Motin	sdhci \
317d6b3aaf8SOleksandr Tymoshenko	sdhci_pci \
3185416cda8STom Rhodes	sem \
3191db8d1f8SAna Kukec	send \
3204a47892cSRobert Millan	${_sf} \
3215bd64b65SPhilip Paeps	${_sfxge} \
322d193ed0bSPyun YongHyeon	sge \
323e6e57451SJohn Baldwin	${_si} \
3240bdee1faSWarner Losh	siba_bwn \
325a5548bf6SLawrence Stewart	siftr \
32667b87e44SAlexander Motin	siis \
32709261c4fSBrooks Davis	sis \
32809261c4fSBrooks Davis	sk \
3294be7e5f8SJustin Hibbits	smbfs \
330eac107b8SWarner Losh	sn \
331b8eaa978SRuslan Ermilov	${_snc} \
332932ef5b5SEd Schouten	snp \
3334be7e5f8SJustin Hibbits	sound \
334b8eaa978SRuslan Ermilov	${_speaker} \
335b8eaa978SRuslan Ermilov	${_splash} \
336b8eaa978SRuslan Ermilov	${_sppp} \
33709261c4fSBrooks Davis	ste \
338b8eaa978SRuslan Ermilov	${_stg} \
339d497bdf1SPyun YongHyeon	stge \
340b8eaa978SRuslan Ermilov	${_streams} \
3415c07a171SOlivier Houchard	${_svr4} \
342c99255b8SWarner Losh	${_sym} \
343b8eaa978SRuslan Ermilov	${_syscons} \
34409261c4fSBrooks Davis	sysvipc \
3454a47892cSRobert Millan	${_ti} \
34609261c4fSBrooks Davis	tl \
347d319cc96SNathan Whitehorn	tmpfs \
34809fe6320SNavdeep Parhar	${_toecore} \
349c02b5042SWarner Losh	${_tpm} \
350f3d92b26SOlivier Houchard	trm \
3513c12ea23SVinod Kashyap	${_twa} \
35242d6ed03SBruce Evans	twe \
353db1fda10SXin LI	tws \
35409261c4fSBrooks Davis	tx \
3554a47892cSRobert Millan	${_txp} \
356b74668b1SWarner Losh	uart \
3578b7ce2ffSSam Leffler	ubsec \
358df263cbdSScott Long	udf \
35977730021SScott Long	udf_iconv \
360b16af7f1SEdward Tomasz Napierala	ufs \
36109261c4fSBrooks Davis	unionfs \
3627d0d268bSAndrew Thompson	usb \
363591f4054SHartmut Brandt	utopia \
364b8eaa978SRuslan Ermilov	${_vesa} \
36510b59a9bSPeter Grehan	${_virtio} \
366a07bd003SBill Paul	vge \
36761af1d13SFabien Thomas	${_viawd} \
368a7ff99ccSHans Petter Selasky	videomode \
3696e81ac21SMaksim Yevmenkin	vkbd \
370366f6083SPeter Grehan	${_vmm} \
371e3c97c2cSBryan Venteicher	${_vmware} \
372042bbe55SPeter Grehan	${_vpo} \
37309261c4fSBrooks Davis	vr \
3742608aefcSPyun YongHyeon	vte \
37509261c4fSBrooks Davis	vx \
3762304f22dSChristian Brueffer	${_vxge} \
37709261c4fSBrooks Davis	wb \
3780566170fSBjoern A. Zeeb	${_wbwd} \
379e6e57451SJohn Baldwin	${_wds} \
380b8eaa978SRuslan Ermilov	${_wi} \
381e6e57451SJohn Baldwin	${_wl} \
3820ac19bd5SSam Leffler	wlan \
38395ef8c71SSam Leffler	wlan_acl \
38474828f25SSam Leffler	wlan_amrr \
38563f9a4cbSSam Leffler	wlan_ccmp \
386b032f27cSSam Leffler	wlan_rssadapt \
38763f9a4cbSSam Leffler	wlan_tkip \
38863f9a4cbSSam Leffler	wlan_wep \
38963f9a4cbSSam Leffler	wlan_xauth \
39003734771SBenjamin Close	${_wpi} \
39103734771SBenjamin Close	${_wpifw} \
392a57707e7SXin LI	${_x86bios} \
393b8eaa978SRuslan Ermilov	${_xe} \
394cf62a08fSWojciech A. Koszek	xl \
395513798ccSYoshihiro Takahashi	zlib
3964310207eSRobert Millan
397b3590423SEnji Cooper.if ${MK_AUTOFS} != "no" || defined(ALL_MODULES)
398b3590423SEnji Cooper_autofs=	autofs
399b3590423SEnji Cooper.endif
400b3590423SEnji Cooper
401*5e742644SEd Maste.if ${MK_CDDL} != "no" || defined(ALL_MODULES)
402*5e742644SEd Maste.if ${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "mips" && \
403*5e742644SEd Maste	${MACHINE_CPUARCH} != "sparc64"
404*5e742644SEd MasteSUBDIR+=	dtrace
405*5e742644SEd Maste.endif
406*5e742644SEd MasteSUBDIR+=	opensolaris
407*5e742644SEd Maste.endif
408*5e742644SEd Maste
409e1fe3dbaSRuslan Ermilov.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
410b8eaa978SRuslan Ermilov.if exists(${.CURDIR}/../opencrypto)
411b8eaa978SRuslan Ermilov_crypto=	crypto
412b8eaa978SRuslan Ermilov_cryptodev=	cryptodev
413646041a8SMark Murray_random_fortuna=random_fortuna
414646041a8SMark Murray_random_yarrow=	random_yarrow
415646041a8SMark Murray_random_other=	random_other
416b8eaa978SRuslan Ermilov.endif
4177a07b896SIan Dowse.endif
418aa980888SJake Burkholder
419e3d1e0f6SEnji Cooper.if ${MK_CUSE} != "no" || defined(ALL_MODULES)
420e3d1e0f6SEnji CooperSUBDIR+=	cuse
421e3d1e0f6SEnji Cooper.endif
422e3d1e0f6SEnji Cooper
423af8a927eSBjoern A. Zeeb.if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \
424af8a927eSBjoern A. Zeeb	defined(ALL_MODULES)
425663222f1SGleb Smirnoff_carp=		carp
42609fe6320SNavdeep Parhar_toecore=	toecore
427f325335cSAndrey V. Elsukov_if_gif=	if_gif
428f325335cSAndrey V. Elsukov_if_gre=	if_gre
429af8a927eSBjoern A. Zeeb.endif
430af8a927eSBjoern A. Zeeb
431a5965d15SAndrey V. Elsukov.if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \
432a5965d15SAndrey V. Elsukov	defined(ALL_MODULES)
433a5965d15SAndrey V. Elsukov_if_stf=	if_stf
434a5965d15SAndrey V. Elsukov.endif
435a5965d15SAndrey V. Elsukov
436aa57e971SBjoern A. Zeeb.if ${MK_INET_SUPPORT} != "no" || defined(ALL_MODULES)
437f325335cSAndrey V. Elsukov_if_me=		if_me
438513798ccSYoshihiro Takahashi_ipdivert=	ipdivert
439513798ccSYoshihiro Takahashi_ipfw=		ipfw
440aa57e971SBjoern A. Zeeb.endif
441aa57e971SBjoern A. Zeeb
442e1fe3dbaSRuslan Ermilov.if ${MK_IPFILTER} != "no" || defined(ALL_MODULES)
443b8eaa978SRuslan Ermilov_ipfilter=	ipfilter
4447a43a96aSRuslan Ermilov.endif
4457a43a96aSRuslan Ermilov
446b29d6977SEnji Cooper.if ${MK_ISCSI} != "no" || defined(ALL_MODULES)
447b29d6977SEnji CooperSUBDIR+=	iscsi
448b29d6977SEnji CooperSUBDIR+=	iscsi_initiator
449b29d6977SEnji Cooper.endif
450b29d6977SEnji Cooper
4517f725bcdSGrzegorz Bernacki.if ${MK_NAND} != "no" || defined(ALL_MODULES)
4527f725bcdSGrzegorz Bernacki_nandfs=	nandfs
4537f725bcdSGrzegorz Bernacki_nandsim=	nandsim
4547f725bcdSGrzegorz Bernacki.endif
4557f725bcdSGrzegorz Bernacki
456abae4e8aSAntoine Brodin.if ${MK_NETGRAPH} != "no" || defined(ALL_MODULES)
457abae4e8aSAntoine Brodin_netgraph=	netgraph
458abae4e8aSAntoine Brodin.endif
459abae4e8aSAntoine Brodin
460af8a927eSBjoern A. Zeeb.if (${MK_PF} != "no" && (${MK_INET_SUPPORT} != "no" || \
461af8a927eSBjoern A. Zeeb	${MK_INET6_SUPPORT} != "no")) || defined(ALL_MODULES)
4628d69c48bSMax Laier_pf=		pf
4635bba2114SMax Laier_pflog=		pflog
464e0bfbfceSBjoern A. Zeeb.if ${MK_INET_SUPPORT} != "no"
465e0bfbfceSBjoern A. Zeeb_pfsync=	pfsync
466e0bfbfceSBjoern A. Zeeb.endif
4678d69c48bSMax Laier.endif
4688d69c48bSMax Laier
4694a47892cSRobert Millan.if ${MK_SOURCELESS_UCODE} != "no"
4704a47892cSRobert Millan_bce=		bce
4714a47892cSRobert Millan_fatm=		fatm
4724a47892cSRobert Millan_fxp=		fxp
4734a47892cSRobert Millan_ispfw=		ispfw
4744a47892cSRobert Millan_mwlfw=		mwlfw
4754a47892cSRobert Millan_ralfw=		ralfw
4764a47892cSRobert Millan_sf=		sf
4774a47892cSRobert Millan_ti=		ti
4784a47892cSRobert Millan_txp=		txp
4794a47892cSRobert Millan.endif
4804a47892cSRobert Millan
481ca7fe84aSNavdeep Parhar.if ${MK_SOURCELESS_UCODE} != "no" && ${MACHINE_CPUARCH} != "arm" && \
4828ff01f5dSEd Maste	${MACHINE_ARCH:C/mips(el)?/mips/} != "mips" && \
483b7d3aa11SNavdeep Parhar	${MACHINE_ARCH} != "powerpc"
484183dc986SNavdeep Parhar_cxgbe=		cxgbe
485183dc986SNavdeep Parhar.endif
486513798ccSYoshihiro Takahashi
487*5e742644SEd Maste.if ${MK_ZFS} != "no" || defined(ALL_MODULES)
488*5e742644SEd MasteSUBDIR+=	zfs
489*5e742644SEd Maste.endif
490*5e742644SEd Maste
49132b6c6ecSKonstantin Belousov.if ${MACHINE_CPUARCH} != "aarch64" && ${MACHINE_CPUARCH} != "arm" && \
49232b6c6ecSKonstantin Belousov	${MACHINE_CPUARCH} != "mips" && ${MACHINE_CPUARCH} != "powerpc"
493513798ccSYoshihiro Takahashi_syscons=	syscons
494513798ccSYoshihiro Takahashi_vpo=		vpo
495513798ccSYoshihiro Takahashi.endif
496513798ccSYoshihiro Takahashi
497e2b58d84SWarner Losh.if ${MACHINE_CPUARCH} != "mips"
498513798ccSYoshihiro Takahashi# no BUS_SPACE_UNSPECIFIED
499513798ccSYoshihiro Takahashi# No barrier instruction support (specific to this driver)
500513798ccSYoshihiro Takahashi_sym=		sym
501513798ccSYoshihiro Takahashi# intr_disable() is a macro, causes problems
502513798ccSYoshihiro Takahashi.if ${MK_SOURCELESS_UCODE} != "no"
503513798ccSYoshihiro Takahashi_cxgb=		cxgb
504513798ccSYoshihiro Takahashi.endif
505513798ccSYoshihiro Takahashi.endif
506513798ccSYoshihiro Takahashi
507513798ccSYoshihiro Takahashi.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
508513798ccSYoshihiro Takahashi_agp=		agp
509513798ccSYoshihiro Takahashi_an=		an
510513798ccSYoshihiro Takahashi_aout=		aout
511513798ccSYoshihiro Takahashi_bktr=		bktr
512513798ccSYoshihiro Takahashi_bxe=		bxe
513513798ccSYoshihiro Takahashi_cardbus=	cardbus
514513798ccSYoshihiro Takahashi_cbb=		cbb
515513798ccSYoshihiro Takahashi_cpuctl=	cpuctl
516513798ccSYoshihiro Takahashi_cpufreq=	cpufreq
5171acffcc4SWarner Losh_cs=		cs
518513798ccSYoshihiro Takahashi_dpms=		dpms
519513798ccSYoshihiro Takahashi_drm=		drm
520513798ccSYoshihiro Takahashi_drm2=		drm2
521513798ccSYoshihiro Takahashi_ed=		ed
522513798ccSYoshihiro Takahashi_em=		em
5231acffcc4SWarner Losh_ep=		ep
524513798ccSYoshihiro Takahashi_et=		et
525513798ccSYoshihiro Takahashi_exca=		exca
5261acffcc4SWarner Losh_fe=		fe
527513798ccSYoshihiro Takahashi_filemon=	filemon
528513798ccSYoshihiro Takahashi.if ${MK_OFED} != "no" || defined(ALL_MODULES)
529513798ccSYoshihiro Takahashi_ibcore=        ibcore
530513798ccSYoshihiro Takahashi.endif
531513798ccSYoshihiro Takahashi_if_ndis=	if_ndis
532513798ccSYoshihiro Takahashi_igb=		igb
533513798ccSYoshihiro Takahashi_io=		io
534513798ccSYoshihiro Takahashi.if ${MK_OFED} != "no" || defined(ALL_MODULES)
535513798ccSYoshihiro Takahashi_ipoib=         ipoib
536513798ccSYoshihiro Takahashi.endif
5371f6c33acSEric Joyner_ix=		ix
5381aa7c60cSJack F Vogel_ixv=		ixv
539513798ccSYoshihiro Takahashi_linprocfs=	linprocfs
540513798ccSYoshihiro Takahashi_linsysfs=	linsysfs
541513798ccSYoshihiro Takahashi_linux=		linux
542673d1626SHans Petter Selasky.if ${MK_OFED} != "no"
5432da3897dSHans Petter Selasky_linuxkpi=	linuxkpi
544673d1626SHans Petter Selasky.endif
545513798ccSYoshihiro Takahashi_ndis=		ndis
546513798ccSYoshihiro Takahashi_pccard=	pccard
547513798ccSYoshihiro Takahashi.if ${MK_OFED} != "no" || defined(ALL_MODULES)
548513798ccSYoshihiro Takahashi_rdma=		rdma
549513798ccSYoshihiro Takahashi.endif
550513798ccSYoshihiro Takahashi_safe=		safe
551513798ccSYoshihiro Takahashi_scsi_low=	scsi_low
552513798ccSYoshihiro Takahashi_si=		si
553513798ccSYoshihiro Takahashi_speaker=	speaker
554513798ccSYoshihiro Takahashi_splash=	splash
555513798ccSYoshihiro Takahashi_sppp=		sppp
556513798ccSYoshihiro Takahashi_vmware=	vmware
557513798ccSYoshihiro Takahashi_vxge=  	vxge
558513798ccSYoshihiro Takahashi_wbwd=		wbwd
559513798ccSYoshihiro Takahashi_wi=		wi
5601acffcc4SWarner Losh_xe=		xe
561513798ccSYoshihiro Takahashi.if ${MACHINE} != "pc98"
562513798ccSYoshihiro Takahashi_aac=		aac
563513798ccSYoshihiro Takahashi_aacraid=	aacraid
564513798ccSYoshihiro Takahashi_acpi=		acpi
565513798ccSYoshihiro Takahashi.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
566513798ccSYoshihiro Takahashi_aesni=		aesni
567513798ccSYoshihiro Takahashi.endif
568513798ccSYoshihiro Takahashi_amdsbwd=	amdsbwd
569513798ccSYoshihiro Takahashi_amdtemp=	amdtemp
570513798ccSYoshihiro Takahashi_arcmsr=	arcmsr
571513798ccSYoshihiro Takahashi_asmc=		asmc
572513798ccSYoshihiro Takahashi_ciss=		ciss
573513798ccSYoshihiro Takahashi_cmx=		cmx
574513798ccSYoshihiro Takahashi_coretemp=	coretemp
575513798ccSYoshihiro Takahashi.if ${MK_SOURCELESS_HOST} != "no"
576513798ccSYoshihiro Takahashi_hpt27xx=	hpt27xx
577513798ccSYoshihiro Takahashi.endif
578513798ccSYoshihiro Takahashi_hptiop=	hptiop
579513798ccSYoshihiro Takahashi.if ${MK_SOURCELESS_HOST} != "no"
580513798ccSYoshihiro Takahashi_hptmv=		hptmv
581513798ccSYoshihiro Takahashi_hptnr=		hptnr
582513798ccSYoshihiro Takahashi_hptrr=		hptrr
583513798ccSYoshihiro Takahashi.endif
584513798ccSYoshihiro Takahashi_hyperv=	hyperv
585513798ccSYoshihiro Takahashi_ichwd=		ichwd
586513798ccSYoshihiro Takahashi_ida=		ida
587513798ccSYoshihiro Takahashi_iir=		iir
588513798ccSYoshihiro Takahashi_ipmi=		ipmi
589513798ccSYoshihiro Takahashi_ips=		ips
590444e7e3dSRui Paulo_isci=		isci
591513798ccSYoshihiro Takahashi_ipw=		ipw
592444e7e3dSRui Paulo_iwi=		iwi
593444e7e3dSRui Paulo_iwm=		iwm
594444e7e3dSRui Paulo_iwn=		iwn
595444e7e3dSRui Paulo_ixgb=		ixgb
596513798ccSYoshihiro Takahashi.if ${MK_SOURCELESS_UCODE} != "no"
597513798ccSYoshihiro Takahashi_ipwfw=		ipwfw
598513798ccSYoshihiro Takahashi_iwifw=		iwifw
599444e7e3dSRui Paulo_iwmfw=		iwmfw
600513798ccSYoshihiro Takahashi_iwnfw=		iwnfw
601513798ccSYoshihiro Takahashi.endif
602513798ccSYoshihiro Takahashi.if ${MK_OFED} != "no" || defined(ALL_MODULES)
603513798ccSYoshihiro Takahashi_mlx4=		mlx4
604513798ccSYoshihiro Takahashi_mlx4ib=	mlx4ib
605513798ccSYoshihiro Takahashi_mlxen=		mlxen
606513798ccSYoshihiro Takahashi.endif
607513798ccSYoshihiro Takahashi_mly=		mly
608513798ccSYoshihiro Takahashi.if ${MK_OFED} != "no" || defined(ALL_MODULES)
609513798ccSYoshihiro Takahashi_mthca=		mthca
610513798ccSYoshihiro Takahashi.endif
611513798ccSYoshihiro Takahashi_nfe=		nfe
612513798ccSYoshihiro Takahashi_nvd=		nvd
613513798ccSYoshihiro Takahashi_nvme=		nvme
614513798ccSYoshihiro Takahashi_nvram=		nvram
615513798ccSYoshihiro Takahashi_nxge=		nxge
616513798ccSYoshihiro Takahashi.if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
617513798ccSYoshihiro Takahashi_padlock=	padlock
61810cb2424SMark Murray_padlock_rng=	padlock_rng
61910cb2424SMark Murray_rdrand_rng=	rdrand_rng
620513798ccSYoshihiro Takahashi.endif
621513798ccSYoshihiro Takahashi_s3=		s3
622513798ccSYoshihiro Takahashi_tpm=		tpm
623513798ccSYoshihiro Takahashi_twa=		twa
624513798ccSYoshihiro Takahashi_vesa=		vesa
625513798ccSYoshihiro Takahashi_viawd=		viawd
626513798ccSYoshihiro Takahashi_virtio=	virtio
627513798ccSYoshihiro Takahashi_wpi=		wpi
628513798ccSYoshihiro Takahashi.if ${MK_SOURCELESS_UCODE} != "no"
629513798ccSYoshihiro Takahashi_wpifw=		wpifw
630513798ccSYoshihiro Takahashi.endif
631513798ccSYoshihiro Takahashi_x86bios=	x86bios
632513798ccSYoshihiro Takahashi.endif
633513798ccSYoshihiro Takahashi.endif
634513798ccSYoshihiro Takahashi
635513798ccSYoshihiro Takahashi.if ${MACHINE_CPUARCH} == "amd64"
636e974f91cSConrad Meyer_ioat=		ioat
637513798ccSYoshihiro Takahashi_ixl=		ixl
638513798ccSYoshihiro Takahashi_ixlv=		ixlv
639506bd395SDmitry Chagin_linux64=	linux64
6400b6ce4efSDmitry Chagin_linux_common=	linux_common
641513798ccSYoshihiro Takahashi_ntb=		ntb
642a650d869SBenno Rice_pms=		pms
643513798ccSYoshihiro Takahashi_qlxge=		qlxge
644513798ccSYoshihiro Takahashi_qlxgb=		qlxgb
645513798ccSYoshihiro Takahashi_qlxgbe=	qlxgbe
646513798ccSYoshihiro Takahashi_sfxge=		sfxge
64702629e46SEnji Cooper
64802629e46SEnji Cooper.if ${MK_BHYVE} != "no" || defined(ALL_MODULES)
649513798ccSYoshihiro Takahashi_vmm=		vmm
650513798ccSYoshihiro Takahashi.endif
65102629e46SEnji Cooper.endif
652513798ccSYoshihiro Takahashi
653c09808d0SWarner Losh.if ${MACHINE_CPUARCH} == "i386"
65428cc91d8SMike Smith# XXX some of these can move to the general case when de-i386'ed
6554e54e04eSWarner Losh# XXX some of these can move now, but are untested on other architectures.
656b8eaa978SRuslan Ermilov_3dfx=		3dfx
657375ce679SYaroslav Tykhiy_3dfx_linux=	3dfx_linux
658b8eaa978SRuslan Ermilov_aic=		aic
659b8eaa978SRuslan Ermilov_apm=		apm
660b8eaa978SRuslan Ermilov_arcnet=	arcnet
6614a47892cSRobert Millan.if ${MK_SOURCELESS_UCODE} != "no"
662f2ca64caSRoman Kurakin_ce=		ce
6634a47892cSRobert Millan.endif
664b8eaa978SRuslan Ermilov_coff=		coff
6654a47892cSRobert Millan.if ${MK_SOURCELESS_UCODE} != "no"
6664dba35d1SRoman Kurakin_cp=		cp
6674a47892cSRobert Millan.endif
668b8eaa978SRuslan Ermilov_elink=		elink
669149d1c89SHenrik Brix Andersen_glxiic=	glxiic
670a51aa5d1SPhilip Paeps_glxsb=		glxsb
671b8eaa978SRuslan Ermilov_ibcs2=		ibcs2
672b8eaa978SRuslan Ermilov_ie=		ie
6736c5c0a5aSWarner Losh_mse=		mse
6743355bd61SRui Paulo_ncr=		ncr
675b8eaa978SRuslan Ermilov_ncv=		ncv
676b8eaa978SRuslan Ermilov_nsp=		nsp
677b8eaa978SRuslan Ermilov_pcfclock=	pcfclock
6784f05e3faSRuslan Ermilov_pst=		pst
67926e46883SJohn Baldwin_sbni=		sbni
680b8eaa978SRuslan Ermilov_streams=	streams
681513798ccSYoshihiro Takahashi_stg=		stg
6825c07a171SOlivier Houchard_svr4=		svr4
683e6e57451SJohn Baldwin_wds=		wds
684b8eaa978SRuslan Ermilov.if ${MACHINE} == "i386"
68577667fecSWarner Losh.if ${MK_EISA} != "no"
6861f00798bSYoshihiro Takahashi_ahb=		ahb
68777667fecSWarner Losh.endif
688b8eaa978SRuslan Ermilov_bios=		bios
689b8eaa978SRuslan Ermilov_cm=		cm
6904a47892cSRobert Millan.if ${MK_SOURCELESS_UCODE} != "no"
6916ca77a6fSRoman Kurakin_ctau=		ctau
6924a47892cSRobert Millan.endif
693b8eaa978SRuslan Ermilov_dpt=		dpt
694b8eaa978SRuslan Ermilov_ex=		ex
695e6e57451SJohn Baldwin_wl=		wl
696b8eaa978SRuslan Ermilov.elif ${MACHINE} == "pc98"
697b8eaa978SRuslan Ermilov_canbepm=	canbepm
698b8eaa978SRuslan Ermilov_canbus=	canbus
6992a6ce61aSJohn Baldwin_ct=		ct
700b8eaa978SRuslan Ermilov_pmc=		pmc
701b8eaa978SRuslan Ermilov_snc=		snc
702b8eaa978SRuslan Ermilov.endif
703b8eaa978SRuslan Ermilov.endif
704b8eaa978SRuslan Ermilov
7052064b86fSMarcel Moolenaar.if ${MACHINE_CPUARCH} == "arm"
7062064b86fSMarcel Moolenaar_cfi=		cfi
707e53470feSOleksandr Tymoshenko_cpsw=		cpsw
7082064b86fSMarcel Moolenaar.endif
7092064b86fSMarcel Moolenaar
710a393ae13SNathan Whitehorn.if ${MACHINE_CPUARCH} == "powerpc"
71150fd2a5bSNathan Whitehorn_agp=		agp
712d87076c8SWarner Losh_an=		an
713cf99524aSMarcel Moolenaar_bm=		bm
714363e589aSJustin Hibbits_cardbus=	cardbus
715363e589aSJustin Hibbits_cbb=		cbb
7162064b86fSMarcel Moolenaar_cfi=		cfi
7179eb9db93SNathan Whitehorn_cpufreq=	cpufreq
71886b32c08SNathan Whitehorn_drm=		drm
719fb6d9e60SJustin Hibbits_exca=		exca
720d5566384SPeter Wemm_nvram=		powermac_nvram
721513798ccSYoshihiro Takahashi_pccard=	pccard
72284cd55bbSJustin Hibbits_wi=		wi
7238e2ad3d7SJustin Hibbits.endif
72473badb24SDavid E. O'Brien
7252785677dSNathan Whitehorn.if ${MACHINE_ARCH} == "powerpc64"
726455fa651SJean-Sébastien Pédron_drm2=		drm2
7272785677dSNathan Whitehorn.endif
7282785677dSNathan Whitehorn
729c09808d0SWarner Losh.if ${MACHINE_CPUARCH} == "sparc64"
730e60fc88fSPyun YongHyeon_auxio=		auxio
7318baab09eSPyun YongHyeon_em=		em
732319570f9SMarius Strobl_epic=		epic
73357158a06SJack F Vogel_igb=		igb
734ce3ae5c7SIan Dowse.endif
735513798ccSYoshihiro Takahashi
7362ff069a7SEd Schouten.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64"
7372ff069a7SEd Schouten_cloudabi64=	cloudabi64
7382ff069a7SEd Schouten.endif
7392ff069a7SEd Schouten
740581a68a2SWarner Losh.endif
741581a68a2SWarner Losh
742854739a4SWarner LoshSUBDIR+=${MODULES_EXTRA}
743854739a4SWarner Losh
744ba2e5903SWes Peters.for reject in ${WITHOUT_MODULES}
745ba2e5903SWes PetersSUBDIR:= ${SUBDIR:N${reject}}
746ba2e5903SWes Peters.endfor
747ba2e5903SWes Peters
7485e82ed7bSRuslan Ermilov# Calling kldxref(8) for each module is expensive.
7494875819cSJake Burkholder.if !defined(NO_XREF)
75099bca506SRuslan Ermilov.MAKEFLAGS+=	-DNO_XREF
7515e82ed7bSRuslan Ermilovafterinstall:
752be1d673dSRuslan Ermilov	@if type kldxref >/dev/null 2>&1; then \
753be1d673dSRuslan Ermilov		${ECHO} kldxref ${DESTDIR}${KMODDIR}; \
754be1d673dSRuslan Ermilov		kldxref ${DESTDIR}${KMODDIR}; \
755be1d673dSRuslan Ermilov	fi
7565e82ed7bSRuslan Ermilov.endif
7575e82ed7bSRuslan Ermilov
75835c4406dSWarner Losh.include "${SYSDIR}/conf/config.mk"
75935c4406dSWarner Losh
76035c4406dSWarner LoshSUBDIR:= ${SUBDIR:u:O}
76135c4406dSWarner Losh
7620eec3684SGarrett Wollman.include <bsd.subdir.mk>
763