1c3aac50fSPeter Wemm# $FreeBSD$ 20eec3684SGarrett Wollman 3193d9e76SEnji CooperSYSDIR?=${SRCTOP}/sys 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 112ec8d574SKonstantin Belousov.include "${SYSDIR}/conf/config.mk" 122ec8d574SKonstantin Belousov 1379785bbfSEnji Cooper.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES) 1479785bbfSEnji CooperSUBDIR=${MODULES_OVERRIDE} 1579785bbfSEnji Cooper.else 1698663aa0SDavid E. O'BrienSUBDIR= \ 1798663aa0SDavid E. O'Brien ${_3dfx} \ 18375ce679SYaroslav Tykhiy ${_3dfx_linux} \ 19b8eaa978SRuslan Ermilov ${_aac} \ 20dce93cd0SAchim Leubner ${_aacraid} \ 21b8eaa978SRuslan Ermilov accf_data \ 22744eaff7SDavid Malone accf_dns \ 2309261c4fSBrooks Davis accf_http \ 249124ddebSAdrian Chadd acl_nfs4 \ 259124ddebSAdrian Chadd acl_posix1e \ 26b8eaa978SRuslan Ermilov ${_acpi} \ 27ba26d470SStanislav Sedov ae \ 285f270659SKonstantin Belousov ${_aesni} \ 29cfef026aSPyun YongHyeon age \ 30b8eaa978SRuslan Ermilov ${_agp} \ 3152c9ce25SScott Long ahci \ 32fb404d6fSScott Long aic7xxx \ 33d68875ebSPyun YongHyeon alc \ 343c6e15bcSPyun YongHyeon ale \ 35d28f42f9SLawrence Stewart alq \ 36f5aac907SAndriy Gapon ${_amd_ecc_inject} \ 378ce574deSOleksandr Tymoshenko ${_amdgpio} \ 385022f21bSAndriy Gapon ${_amdsbwd} \ 39907f50feSConrad Meyer ${_amdsmn} \ 402b201a17SAndriy Gapon ${_amdtemp} \ 41b8eaa978SRuslan Ermilov ${_aout} \ 42d0885ac3SScott Long ${_arcmsr} \ 433076898aSEmmanuel Vadot ${_allwinner} \ 44d6699d29SAndrew Turner ${_armv8crypto} \ 45e702bc74SRui Paulo ${_asmc} \ 468ca4df32SSøren Schmidt ata \ 4733644623SSam Leffler ath \ 4841059135SAdrian Chadd ath_dfs \ 4941059135SAdrian Chadd ath_hal \ 5041059135SAdrian Chadd ath_hal_ar5210 \ 5141059135SAdrian Chadd ath_hal_ar5211 \ 5241059135SAdrian Chadd ath_hal_ar5212 \ 5341059135SAdrian Chadd ath_hal_ar5416 \ 5441059135SAdrian Chadd ath_hal_ar9300 \ 5541059135SAdrian Chadd ath_main \ 5641059135SAdrian Chadd ath_rate \ 57dba9c859SAdrian Chadd ath_pci \ 58b3590423SEnji Cooper ${_autofs} \ 597113afc8SEmmanuel Vadot axgbe \ 60675aae73SEmmanuel Vadot backlight \ 614a47892cSRobert Millan ${_bce} \ 62fc62b7e5SPoul-Henning Kamp ${_bcm283x_clkman} \ 63137a344cSPoul-Henning Kamp ${_bcm283x_pwm} \ 64b9f78d2bSBill Paul bfe \ 6595d67482SBill Paul bge \ 66148ed571SAdrian Chadd bhnd \ 67102657cbSDavid Christensen ${_bxe} \ 68b8eaa978SRuslan Ermilov ${_bios} \ 690e33efe4SConrad Meyer ${_blake2} \ 7075217c2bSWarner Losh ${_bnxt} \ 718a33eee1SAndrew Thompson bridgestp \ 72215da5ecSWarner Losh bwi \ 73215da5ecSWarner Losh bwn \ 745370c80eSOleksandr Tymoshenko ${_bytgpio} \ 7594b8a54aSOleksandr Tymoshenko ${_chvgpio} \ 76aa980888SJake Burkholder cam \ 77b8eaa978SRuslan Ermilov ${_cardbus} \ 78663222f1SGleb Smirnoff ${_carp} \ 79119051cbSMarius Strobl cas \ 80b8eaa978SRuslan Ermilov ${_cbb} \ 81ad4e3b96SLawrence Stewart cc \ 82844d9543SConrad Meyer ${_ccp} \ 83aa980888SJake Burkholder cd9660 \ 84c4f02a89SMax Khon cd9660_iconv \ 852064b86fSMarcel Moolenaar ${_cfi} \ 86448897d3SAndriy Gapon ${_chromebook_platform} \ 87b8eaa978SRuslan Ermilov ${_ciss} \ 8883d18f22SDag-Erling Smørgrav ${_coretemp} \ 89e53470feSOleksandr Tymoshenko ${_cpsw} \ 90e085f869SStanislav Sedov ${_cpuctl} \ 916ab93acaSScott Long ${_cpufreq} \ 92f544a528SMark Murray ${_crypto} \ 93f544a528SMark Murray ${_cryptodev} \ 9432562145SEdward Tomasz Napierala ctl \ 95c99255b8SWarner Losh ${_cxgb} \ 964310207eSRobert Millan ${_cxgbe} \ 9709261c4fSBrooks Davis dc \ 98869093b1SHidetoshi Shimokawa dcons \ 99869093b1SHidetoshi Shimokawa dcons_crom \ 100ba7319e9SDmitry Salychev ${_dpaa2} \ 101537d1343SAlexander V. Chernikov ${_dpdk_lpm4} \ 102537d1343SAlexander V. Chernikov ${_dpdk_lpm6} \ 103aa7c1c05SJohn Baldwin ${_dpms} \ 1048c4026b5SPaul Saab dummynet \ 1050a05676bSEmmanuel Vadot ${_dwwdt} \ 106ee1b7811SHubert Mazur ${_e6000sw} \ 107bc3ad3a1SKonstantin Belousov ${_efirt} \ 108b8eaa978SRuslan Ermilov ${_em} \ 1099b8d05b8SZbigniew Bodek ${_ena} \ 1109c067b84SDoug Ambrisko ${_enic} \ 1115ad6d28cSKornel Duleba ${_enetc} \ 1124d52a575SXin LI ${_et} \ 113a6b15a34SOleksandr Tymoshenko evdev \ 114b8eaa978SRuslan Ermilov ${_exca} \ 1154be7e5f8SJustin Hibbits ext2fs \ 11609261c4fSBrooks Davis fdc \ 11742d6ed03SBruce Evans fdescfs \ 118451bcf1bSMarcin Wojtas ${_felix} \ 119f5c49e5cSIan Lepore ${_ffec} \ 1202aca58e1SMarko Zec ${_fib_dxr} \ 12124862f22SBryan Drewery filemon \ 1227d2ba89bSJohn Baldwin firewire \ 1236aec1278SMax Laier firmware \ 12494e25b7aSWojciech Macek flash \ 1251b10e191SStéphane Rochoy ${_ftgpio} \ 1265667729fSPoul-Henning Kamp ${_ftwd} \ 127123af6ecSAlan Somers fusefs \ 1284a47892cSRobert Millan ${_fxp} \ 1291ed3fed7SMarius Strobl gem \ 1305d9bef64SPoul-Henning Kamp geom \ 131149d1c89SHenrik Brix Andersen ${_glxiic} \ 132a51aa5d1SPhilip Paeps ${_glxsb} \ 1331e45d04bSIan Lepore gpio \ 13467de2db2SVladimir Kondratyev hid \ 1358b7ce2ffSSam Leffler hifn \ 13681966bceSXin LI ${_hpt27xx} \ 137f73e86c3SScott Long ${_hptiop} \ 138085f35d6SScott Long ${_hptmv} \ 1391fdeb165SXin LI ${_hptnr} \ 140b063a422SScott Long ${_hptrr} \ 1419c3a1281SMarcel Moolenaar hwpmc \ 1427d99ab9fSPeter Grehan ${_hyperv} \ 1434be7e5f8SJustin Hibbits i2c \ 14477c1fcecSEric Joyner ${_iavf} \ 145c9f432b7SAlfred Perlstein ${_ibcore} \ 146cae8da61SDag-Erling Smørgrav ${_ichwd} \ 14771d10453SEric Joyner ${_ice} \ 14871d10453SEric Joyner ${_ice_ddp} \ 149cdcd52d4SBartosz Sobczak ${_irdma} \ 150b8eaa978SRuslan Ermilov ${_ida} \ 1517afc53b8SAndrew Thompson if_bridge \ 152242cd60aSMilan Obuch ${_if_cgem} \ 15309261c4fSBrooks Davis if_disc \ 15463518eccSYaroslav Tykhiy if_edsc \ 155ef91a976SAndrey V. Elsukov ${_if_enc} \ 156d0ea4743SBjoern A. Zeeb if_epair \ 157f325335cSAndrey V. Elsukov ${_if_gif} \ 158af8a927eSBjoern A. Zeeb ${_if_gre} \ 159f325335cSAndrey V. Elsukov ${_if_me} \ 1609d40cf60SHans Petter Selasky if_infiniband \ 16118242d3bSAndrew Thompson if_lagg \ 162ab91feabSKristof Provost if_ovpn \ 163a5965d15SAndrey V. Elsukov ${_if_stf} \ 164251a32b5SKyle Evans if_tuntap \ 165214bfc97SBrooks Davis if_vlan \ 166007054f0SBryan Venteicher if_vxlan \ 167744bfb21SJohn Baldwin ${_if_wg} \ 168c75f49f7SKonstantin Belousov iflib \ 169517904deSPeter Grehan ${_igc} \ 17081e3caafSJustin Hibbits imgact_binmisc \ 171d786719dSOleksandr Tymoshenko ${_intelspi} \ 1728ab2f5ecSMark Murray ${_io} \ 173e974f91cSConrad Meyer ${_ioat} \ 174c9f432b7SAlfred Perlstein ${_ipoib} \ 175aa74cc6dSGleb Smirnoff ipdivert \ 176b8eaa978SRuslan Ermilov ${_ipfilter} \ 1778813217aSBjoern A. Zeeb ${_ipfw} \ 178755d3f8aSPaolo Pisati ipfw_nat \ 179d8caf56eSAndrey V. Elsukov ${_ipfw_nat64} \ 180b867e84eSAndrey V. Elsukov ${_ipfw_nptv6} \ 181aac74aeaSAndrey V. Elsukov ${_ipfw_pmod} \ 1821c204a57SDoug Ambrisko ${_ipmi} \ 183d5c0af17SAndrey V. Elsukov ip6_mroute_mod \ 1848c11b231SRuslan Ermilov ip_mroute_mod \ 185b8eaa978SRuslan Ermilov ${_ips} \ 186fcf59617SAndrey V. Elsukov ${_ipsec} \ 187b4c31113SDamien Bergamini ${_ipw} \ 1887bd6fde3SFlorent Thoumie ${_ipwfw} \ 189f11c7f63SJim Harris ${_isci} \ 1901b4b226bSEdward Tomasz Napierala ${_iser} \ 19197af632bSJohn Baldwin isp \ 1924a47892cSRobert Millan ${_ispfw} \ 19388f8e098SAndriy Gapon ${_itwd} \ 194b4c31113SDamien Bergamini ${_iwi} \ 1957bd6fde3SFlorent Thoumie ${_iwifw} \ 1967d4394cbSBjoern A. Zeeb ${_iwlwifi} \ 1977d4394cbSBjoern A. Zeeb ${_iwlwififw} \ 198444e7e3dSRui Paulo ${_iwm} \ 199444e7e3dSRui Paulo ${_iwmfw} \ 2003971d07bSSam Leffler ${_iwn} \ 2013971d07bSSam Leffler ${_iwnfw} \ 202bc2e8d79SJack F Vogel ${_ix} \ 203bc2e8d79SJack F Vogel ${_ixv} \ 204d502eb6dSJack F Vogel ${_ixl} \ 20575a1bf5fSPyun YongHyeon jme \ 206f9e56677SMaksim Yevmenkin kbdmux \ 2077e7fd7d1SRick Macklem kgssapi \ 2087e7fd7d1SRick Macklem kgssapi_krb5 \ 2096987b09fSLawrence Stewart khelp \ 210fa9d9930SDoug Rabson krpc \ 21100a5db46SStacey Son ksyms \ 21244ac0964SMarius Strobl le \ 21309261c4fSBrooks Davis lge \ 2146cd047a0SGleb Smirnoff libalias \ 2150e3b6d50SSheldon Hearn libiconv \ 21609261c4fSBrooks Davis libmchain \ 21703f1cf9fSJohannes Lundberg lindebugfs \ 21824ef40deSHans Petter Selasky linuxkpi \ 219f1d7ae31SEmmanuel Vadot linuxkpi_hdmi \ 2206b4cac81SBjoern A. Zeeb linuxkpi_wlan \ 221f173c2b7SSean Bruno ${_lio} \ 2221b6c2589SPoul-Henning Kamp lpt \ 223648a47b8SMitchell Horne ${_mac_biba} \ 224648a47b8SMitchell Horne ${_mac_bsdextended} \ 225287d467cSMitchell Horne ${_mac_ddb} \ 226648a47b8SMitchell Horne ${_mac_ifoff} \ 227648a47b8SMitchell Horne ${_mac_lomac} \ 228648a47b8SMitchell Horne ${_mac_mls} \ 229648a47b8SMitchell Horne ${_mac_none} \ 230648a47b8SMitchell Horne ${_mac_ntpd} \ 231648a47b8SMitchell Horne ${_mac_partition} \ 232648a47b8SMitchell Horne ${_mac_pimd} \ 233648a47b8SMitchell Horne ${_mac_portacl} \ 234648a47b8SMitchell Horne ${_mac_priority} \ 235648a47b8SMitchell Horne ${_mac_seeotheruids} \ 236648a47b8SMitchell Horne ${_mac_stub} \ 237648a47b8SMitchell Horne ${_mac_test} \ 2388050e0a4SStephen J. Kiernan ${_mac_veriexec} \ 2398050e0a4SStephen J. Kiernan ${_mac_veriexec_sha1} \ 2408050e0a4SStephen J. Kiernan ${_mac_veriexec_sha256} \ 2418050e0a4SStephen J. Kiernan ${_mac_veriexec_sha384} \ 2428050e0a4SStephen J. Kiernan ${_mac_veriexec_sha512} \ 243a31993feSAlex Richardson ${_malo} \ 244ce110ea1SWei Hu ${_mana} \ 24509261c4fSBrooks Davis md \ 24671e8eac4SAdrian Chadd mdio \ 247543df609SEd Maste ${_mgb} \ 2489004f894SDavid E. O'Brien mem \ 249215da5ecSWarner Losh mfi \ 25009261c4fSBrooks Davis mii \ 25109261c4fSBrooks Davis mlx \ 2523b2324c3SHans Petter Selasky mlxfw \ 2533b1f0b5dSJeff Roberson ${_mlx4} \ 2543b1f0b5dSJeff Roberson ${_mlx4ib} \ 25597549c34SHans Petter Selasky ${_mlx4en} \ 25622f2c49aSHans Petter Selasky ${_mlx5} \ 25722f2c49aSHans Petter Selasky ${_mlx5en} \ 25812515907SHans Petter Selasky ${_mlx5ib} \ 2591a97aaebSWarner Losh mmc \ 2601a97aaebSWarner Losh mmcsd \ 26144f299a3SScott Long ${_mpr} \ 26244f299a3SScott Long ${_mps} \ 263215da5ecSWarner Losh mpt \ 2646c597554SDavid Xu mqueue \ 265665484d8SDoug Ambrisko mrsas \ 26686597d47SMaxime Henrion msdosfs \ 267c4f02a89SMax Khon msdosfs_iconv \ 268c9d21ce9SPyun YongHyeon msk \ 26933ec1ccbSHans Petter Selasky ${_mthca} \ 270dd48af36SAlexander Motin mvs \ 271cf4c5a53SSam Leffler mwl \ 2724a47892cSRobert Millan ${_mwlfw} \ 273f9ae0280SAndrew Gallatin mxge \ 274e4de92ceSRuslan Ermilov my \ 2756b7b2d80SAdrian Chadd ${_nctgpio} \ 276b831f9ceSHubert Mazur ${_neta} \ 2777e5bf684SAlexander V. Chernikov netlink \ 278abae4e8aSAntoine Brodin ${_netgraph} \ 279bfc788c2SDavid E. O'Brien ${_nfe} \ 280bcbdacddSRick Macklem nfscl \ 281bcbdacddSRick Macklem nfscommon \ 282bcbdacddSRick Macklem nfsd \ 283fa9d9930SDoug Rabson nfslockd \ 28445452edcSRick Macklem nfssvc \ 28509261c4fSBrooks Davis nge \ 28609261c4fSBrooks Davis nmdm \ 28709261c4fSBrooks Davis nullfs \ 288e47937d1SCarl Delsey ${_ntb} \ 289eb85d44fSJim Harris ${_nvd} \ 2906db7f8e5SKonstantin Belousov ${_nvdimm} \ 291eb85d44fSJim Harris ${_nvme} \ 292d5566384SPeter Wemm ${_nvram} \ 2932f345d8eSLuigi Rizzo oce \ 294ef270ab1SKenneth D. Merry ${_ocs_fc} \ 295ba610be9SJohn Baldwin ${_ossl} \ 296a9fcb51fSAdrian Chadd otus \ 2978485a1f6SEd Maste ${_otusfw} \ 298ae1f3df4SWarner Losh ow \ 299ef0a6e20SPawel Jakub Dawidek ${_padlock} \ 30010cb2424SMark Murray ${_padlock_rng} \ 301c3079787STakanori Watanabe ${_pchtherm} \ 302b8eaa978SRuslan Ermilov ${_pcfclock} \ 3038d69c48bSMax Laier ${_pf} \ 3045bba2114SMax Laier ${_pflog} \ 305e0bfbfceSBjoern A. Zeeb ${_pfsync} \ 3061b6c2589SPoul-Henning Kamp plip \ 307a650d869SBenno Rice ${_pms} \ 3081b6c2589SPoul-Henning Kamp ppbus \ 309c69e06b1SMarcel Moolenaar ppc \ 3101b6c2589SPoul-Henning Kamp ppi \ 3111b6c2589SPoul-Henning Kamp pps \ 3123fd18735SDag-Erling Smørgrav procfs \ 31367fb10f3SMarcel Moolenaar proto \ 3143fd18735SDag-Erling Smørgrav pseudofs \ 3154f05e3faSRuslan Ermilov ${_pst} \ 316f105c8beSEd Schouten pty \ 317c69e06b1SMarcel Moolenaar puc \ 318e108c3dfSIan Lepore pwm \ 31978ee8d1cSJulian Grajkowski ${_qat} \ 320f078c492SMark Johnston ${_qatfw} \ 321100ddf89SMark Johnston ${_qat_c2xxx} \ 322100ddf89SMark Johnston ${_qat_c2xxxfw} \ 323711bcba0SDavid C Somayajulu ${_qlxge} \ 3240bc7cf6fSBjoern A. Zeeb ${_qlxgb} \ 325f10a77bbSDavid C Somayajulu ${_qlxgbe} \ 32611e25f0dSDavid C Somayajulu ${_qlnx} \ 327ceaec73dSDamien Bergamini ral \ 3284a47892cSRobert Millan ${_ralfw} \ 329646041a8SMark Murray ${_random_fortuna} \ 330646041a8SMark Murray ${_random_other} \ 3310ac19bd5SSam Leffler rc4 \ 33253d68f00SKip Macy ${_rdma} \ 33310cb2424SMark Murray ${_rdrand_rng} \ 334a94100faSBill Paul re \ 33509261c4fSBrooks Davis rl \ 336c0fc4047SEmmanuel Vadot ${_rockchip} \ 337926ce35aSJung-uk Kim rtsx \ 33820eeed68SBjoern A. Zeeb ${_rtw88} \ 33920eeed68SBjoern A. Zeeb ${_rtw88fw} \ 340b6ac0e65SAdrian Chadd rtwn \ 3417453645fSAndriy Voskoboinyk rtwn_pci \ 3427453645fSAndriy Voskoboinyk rtwn_usb \ 343783da314SChristian Brueffer ${_rtwnfw} \ 344b8eaa978SRuslan Ermilov ${_s3} \ 345b8eaa978SRuslan Ermilov ${_safe} \ 346b356ddf0SMark Johnston safexcel \ 34726e46883SJohn Baldwin ${_sbni} \ 348af2e25a6SMarcel Moolenaar scc \ 349052c5ec4SMark Johnston ${_sctp} \ 350831f5dcfSAlexander Motin sdhci \ 351e5d519fdSOleksandr Tymoshenko ${_sdhci_acpi} \ 3529e08f820SEmmanuel Vadot ${_sdhci_fdt} \ 353d6b3aaf8SOleksandr Tymoshenko sdhci_pci \ 35467ca7330SBjoern A. Zeeb sdio \ 3555416cda8STom Rhodes sem \ 3561db8d1f8SAna Kukec send \ 3575bd64b65SPhilip Paeps ${_sfxge} \ 358d193ed0bSPyun YongHyeon sge \ 3592164af29SRuslan Bukin ${_sgx} \ 3602164af29SRuslan Bukin ${_sgx_linux} \ 361a5548bf6SLawrence Stewart siftr \ 36267b87e44SAlexander Motin siis \ 36309261c4fSBrooks Davis sis \ 36409261c4fSBrooks Davis sk \ 3651e66f787SSean Bruno ${_smartpqi} \ 3664be7e5f8SJustin Hibbits smbfs \ 367932ef5b5SEd Schouten snp \ 3684be7e5f8SJustin Hibbits sound \ 369b8eaa978SRuslan Ermilov ${_speaker} \ 3702aa5d9c4SIan Lepore spi \ 371b8eaa978SRuslan Ermilov ${_splash} \ 37209261c4fSBrooks Davis ste \ 373d497bdf1SPyun YongHyeon stge \ 374bd368728SMarko Zec ${_sume} \ 375e3722b78SAndriy Gapon ${_superio} \ 3763706af42SArnaud Ysmal ${_p2sb} \ 377f9bf8876SWarner Losh sym \ 378b8eaa978SRuslan Ermilov ${_syscons} \ 37909261c4fSBrooks Davis sysvipc \ 38069d94f4cSDag-Erling Smørgrav tarfs \ 3814222f968SMichael Tuexen tcp \ 3824a47892cSRobert Millan ${_ti} \ 383d319cc96SNathan Whitehorn tmpfs \ 38409fe6320SNavdeep Parhar ${_toecore} \ 385c02b5042SWarner Losh ${_tpm} \ 38642d6ed03SBruce Evans twe \ 387db1fda10SXin LI tws \ 388b74668b1SWarner Losh uart \ 389df263cbdSScott Long udf \ 39077730021SScott Long udf_iconv \ 391b16af7f1SEdward Tomasz Napierala ufs \ 392a6b15a34SOleksandr Tymoshenko uinput \ 39309261c4fSBrooks Davis unionfs \ 3947d0d268bSAndrew Thompson usb \ 395b8eaa978SRuslan Ermilov ${_vesa} \ 39632cb85d0SJessica Clarke virtio \ 397a07bd003SBill Paul vge \ 39861af1d13SFabien Thomas ${_viawd} \ 399a7ff99ccSHans Petter Selasky videomode \ 4006e81ac21SMaksim Yevmenkin vkbd \ 401f2521a76SDoug Ambrisko ${_vmd} \ 402366f6083SPeter Grehan ${_vmm} \ 403e3c97c2cSBryan Venteicher ${_vmware} \ 40409261c4fSBrooks Davis vr \ 4052608aefcSPyun YongHyeon vte \ 4060566170fSBjoern A. Zeeb ${_wbwd} \ 40799aeb219STakanori Watanabe ${_wdatwd} \ 4080ac19bd5SSam Leffler wlan \ 40995ef8c71SSam Leffler wlan_acl \ 41074828f25SSam Leffler wlan_amrr \ 41163f9a4cbSSam Leffler wlan_ccmp \ 412b032f27cSSam Leffler wlan_rssadapt \ 41363f9a4cbSSam Leffler wlan_tkip \ 41463f9a4cbSSam Leffler wlan_wep \ 41563f9a4cbSSam Leffler wlan_xauth \ 41603734771SBenjamin Close ${_wpi} \ 41703734771SBenjamin Close ${_wpifw} \ 418a57707e7SXin LI ${_x86bios} \ 419732a02b4SGleb Smirnoff xdr \ 420cf62a08fSWojciech A. Koszek xl \ 421e8643b01SKonstantin Belousov xz \ 422513798ccSYoshihiro Takahashi zlib 4234310207eSRobert Millan 424b3590423SEnji Cooper.if ${MK_AUTOFS} != "no" || defined(ALL_MODULES) 425b3590423SEnji Cooper_autofs= autofs 426b3590423SEnji Cooper.endif 427b3590423SEnji Cooper 4283bf66365SBrooks Davis.if ${MK_DTRACE} != "no" || defined(ALL_MODULES) 4292ec8d574SKonstantin Belousov.if ${KERN_OPTS:MKDTRACE_HOOKS} 4305e742644SEd MasteSUBDIR+= dtrace 4315e742644SEd Maste.endif 4325e742644SEd MasteSUBDIR+= opensolaris 4335e742644SEd Maste.endif 4345e742644SEd Maste 43575217c2bSWarner Losh# Requires bus_space_read_8 436eb40e3e7SWarner Losh.if ${MACHINE_ARCH} != "i386" 43775217c2bSWarner Losh_bnxt= bnxt 43875217c2bSWarner Losh.endif 43975217c2bSWarner Losh 440e1fe3dbaSRuslan Ermilov.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 441193d9e76SEnji Cooper.if exists(${SRCTOP}/sys/opencrypto) 442b8eaa978SRuslan Ermilov_crypto= crypto 443b8eaa978SRuslan Ermilov_cryptodev= cryptodev 444646041a8SMark Murray_random_fortuna=random_fortuna 445646041a8SMark Murray_random_other= random_other 446b8eaa978SRuslan Ermilov.endif 4477a07b896SIan Dowse.endif 448aa980888SJake Burkholder 449e3d1e0f6SEnji Cooper.if ${MK_CUSE} != "no" || defined(ALL_MODULES) 450e3d1e0f6SEnji CooperSUBDIR+= cuse 451e3d1e0f6SEnji Cooper.endif 452e3d1e0f6SEnji Cooper 453bd8f09ebSMitchell Horne.if ${MK_EFI} != "no" 454bd8f09ebSMitchell Horne.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" 455bd8f09ebSMitchell Horne_efirt= efirt 456bd8f09ebSMitchell Horne.endif 457bd8f09ebSMitchell Horne.endif 458bd8f09ebSMitchell Horne 459af8a927eSBjoern A. Zeeb.if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \ 460af8a927eSBjoern A. Zeeb defined(ALL_MODULES) 461663222f1SGleb Smirnoff_carp= carp 46209fe6320SNavdeep Parhar_toecore= toecore 463ef91a976SAndrey V. Elsukov_if_enc= if_enc 464f325335cSAndrey V. Elsukov_if_gif= if_gif 465f325335cSAndrey V. Elsukov_if_gre= if_gre 466744bfb21SJohn Baldwin.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 467744bfb21SJohn Baldwin_if_wg= if_wg 468744bfb21SJohn Baldwin.endif 469aac74aeaSAndrey V. Elsukov_ipfw_pmod= ipfw_pmod 470f45b1312SKyle Evans.if ${KERN_OPTS:MIPSEC_SUPPORT} && !${KERN_OPTS:MIPSEC} 471fcf59617SAndrey V. Elsukov_ipsec= ipsec 472fcf59617SAndrey V. Elsukov.endif 473052c5ec4SMark Johnston.if ${KERN_OPTS:MSCTP_SUPPORT} || ${KERN_OPTS:MSCTP} 474052c5ec4SMark Johnston_sctp= sctp 475052c5ec4SMark Johnston.endif 476af8a927eSBjoern A. Zeeb.endif 477af8a927eSBjoern A. Zeeb 478a5965d15SAndrey V. Elsukov.if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \ 479a5965d15SAndrey V. Elsukov defined(ALL_MODULES) 480a5965d15SAndrey V. Elsukov_if_stf= if_stf 481a5965d15SAndrey V. Elsukov.endif 482a5965d15SAndrey V. Elsukov 483aa57e971SBjoern A. Zeeb.if ${MK_INET_SUPPORT} != "no" || defined(ALL_MODULES) 484f325335cSAndrey V. Elsukov_if_me= if_me 485513798ccSYoshihiro Takahashi_ipfw= ipfw 486d8caf56eSAndrey V. Elsukov.if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES) 487d8caf56eSAndrey V. Elsukov_ipfw_nat64= ipfw_nat64 488d8caf56eSAndrey V. Elsukov.endif 489aa57e971SBjoern A. Zeeb.endif 490aa57e971SBjoern A. Zeeb 491b867e84eSAndrey V. Elsukov.if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES) 492b867e84eSAndrey V. Elsukov_ipfw_nptv6= ipfw_nptv6 493b867e84eSAndrey V. Elsukov.endif 494b867e84eSAndrey V. Elsukov 495e1fe3dbaSRuslan Ermilov.if ${MK_IPFILTER} != "no" || defined(ALL_MODULES) 496b8eaa978SRuslan Ermilov_ipfilter= ipfilter 4977a43a96aSRuslan Ermilov.endif 4987a43a96aSRuslan Ermilov 499537d1343SAlexander V. Chernikov.if ${MK_INET_SUPPORT} != "no" && ${KERN_OPTS:MFIB_ALGO} 500537d1343SAlexander V. Chernikov_dpdk_lpm4= dpdk_lpm4 5012aca58e1SMarko Zec_fib_dxr= fib_dxr 502537d1343SAlexander V. Chernikov.endif 503537d1343SAlexander V. Chernikov 504537d1343SAlexander V. Chernikov.if ${MK_INET6_SUPPORT} != "no" && ${KERN_OPTS:MFIB_ALGO} 505537d1343SAlexander V. Chernikov_dpdk_lpm6= dpdk_lpm6 506537d1343SAlexander V. Chernikov.endif 507537d1343SAlexander V. Chernikov 508b29d6977SEnji Cooper.if ${MK_ISCSI} != "no" || defined(ALL_MODULES) 509653e7d63SEnji CooperSUBDIR+= cfiscsi 510b29d6977SEnji CooperSUBDIR+= iscsi 511b29d6977SEnji Cooper.endif 512b29d6977SEnji Cooper 513238eb01bSIan Lepore.if !empty(OPT_FDT) 514238eb01bSIan LeporeSUBDIR+= fdt 515238eb01bSIan Lepore.endif 516238eb01bSIan Lepore 5176659d8e7SEd Maste# Linuxulator 518408ab1bdSEd Maste.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 51996fa5386SEd Maste ${MACHINE_CPUARCH} == "i386" 52096fa5386SEd MasteSUBDIR+= linprocfs 52196fa5386SEd MasteSUBDIR+= linsysfs 5226659d8e7SEd Maste.endif 5236659d8e7SEd Maste.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" 5246659d8e7SEd MasteSUBDIR+= linux 5256659d8e7SEd Maste.endif 5266659d8e7SEd Maste.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" 5276659d8e7SEd MasteSUBDIR+= linux64 5286659d8e7SEd MasteSUBDIR+= linux_common 5296659d8e7SEd Maste.endif 5306659d8e7SEd Maste 531fe0f6950SJohn Baldwin.if ${MACHINE_CPUARCH} != "arm" 532e53f0338SEd Maste.if ${MK_OFED} != "no" || defined(ALL_MODULES) 533e53f0338SEd Maste_ibcore= ibcore 534e53f0338SEd Maste_ipoib= ipoib 535e53f0338SEd Maste_iser= iser 536fe0f6950SJohn Baldwin_mthca= mthca 537fe0f6950SJohn Baldwin_rdma= rdma 538e53f0338SEd Maste.endif 539fe0f6950SJohn Baldwin.endif 540fe0f6950SJohn Baldwin 541fe0f6950SJohn Baldwin.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 5423140e27eSJohn Baldwin ${MACHINE_CPUARCH} == "i386" || ${MACHINE_ARCH:Mpowerpc64*} != "" 54340d0971bSMitchell Horne_ipmi= ipmi 544e53f0338SEd Maste_mlx4= mlx4 545e53f0338SEd Maste_mlx5= mlx5 546e53f0338SEd Maste.if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \ 547e53f0338SEd Maste defined(ALL_MODULES) 548e53f0338SEd Maste_mlx4en= mlx4en 549e53f0338SEd Maste_mlx5en= mlx5en 550e53f0338SEd Maste.endif 551e53f0338SEd Maste.if ${MK_OFED} != "no" || defined(ALL_MODULES) 552e53f0338SEd Maste_mlx4ib= mlx4ib 553e53f0338SEd Maste_mlx5ib= mlx5ib 554e53f0338SEd Maste.endif 5553140e27eSJohn Baldwin.endif 5563140e27eSJohn Baldwin 5573140e27eSJohn Baldwin.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 5583140e27eSJohn Baldwin ${MACHINE_CPUARCH} == "i386" 5593140e27eSJohn Baldwin_ena= ena 5603140e27eSJohn Baldwin_iwlwifi= iwlwifi 5613140e27eSJohn Baldwin.if ${MK_SOURCELESS_UCODE} != "no" 5623140e27eSJohn Baldwin_iwlwififw= iwlwififw 5633140e27eSJohn Baldwin.endif 56422bd0c97SMitchell Horne_ossl= ossl 56520eeed68SBjoern A. Zeeb_rtw88= rtw88 56620eeed68SBjoern A. Zeeb.if ${MK_SOURCELESS_UCODE} != "no" 56720eeed68SBjoern A. Zeeb_rtw88fw= rtw88fw 56820eeed68SBjoern A. Zeeb.endif 5692c19e8edSEd Maste_vmware= vmware 57096fa5386SEd Maste.endif 57196fa5386SEd Maste 572648a47b8SMitchell Horne# MAC framework 573648a47b8SMitchell Horne.if ${KERN_OPTS:MMAC} || defined(ALL_MODULES) 574648a47b8SMitchell Horne_mac_biba= mac_biba 575648a47b8SMitchell Horne_mac_bsdextended= mac_bsdextended 576287d467cSMitchell Horne.if ${KERN_OPTS:MDDB} || defined(ALL_MODULES) 577287d467cSMitchell Horne_mac_ddb= mac_ddb 578287d467cSMitchell Horne.endif 579648a47b8SMitchell Horne_mac_ifoff= mac_ifoff 580648a47b8SMitchell Horne_mac_lomac= mac_lomac 581648a47b8SMitchell Horne_mac_mls= mac_mls 582648a47b8SMitchell Horne_mac_none= mac_none 583648a47b8SMitchell Horne_mac_ntpd= mac_ntpd 584648a47b8SMitchell Horne_mac_partition= mac_partition 585648a47b8SMitchell Horne_mac_pimd= mac_pimd 586648a47b8SMitchell Horne_mac_portacl= mac_portacl 587648a47b8SMitchell Horne_mac_priority= mac_priority 588648a47b8SMitchell Horne_mac_seeotheruids= mac_seeotheruids 589648a47b8SMitchell Horne_mac_stub= mac_stub 590648a47b8SMitchell Horne_mac_test= mac_test 591*894bcc87SStephen J. Kiernan.if ${MK_VERIEXEC} != "no" || defined(ALL_MODULES) 5928050e0a4SStephen J. Kiernan_mac_veriexec= mac_veriexec 5938050e0a4SStephen J. Kiernan_mac_veriexec_sha1= mac_veriexec_sha1 5948050e0a4SStephen J. Kiernan_mac_veriexec_sha256= mac_veriexec_sha256 5958050e0a4SStephen J. Kiernan_mac_veriexec_sha384= mac_veriexec_sha384 5968050e0a4SStephen J. Kiernan_mac_veriexec_sha512= mac_veriexec_sha512 597648a47b8SMitchell Horne.endif 598*894bcc87SStephen J. Kiernan.endif 599648a47b8SMitchell Horne 600abae4e8aSAntoine Brodin.if ${MK_NETGRAPH} != "no" || defined(ALL_MODULES) 601abae4e8aSAntoine Brodin_netgraph= netgraph 602abae4e8aSAntoine Brodin.endif 603abae4e8aSAntoine Brodin 604af8a927eSBjoern A. Zeeb.if (${MK_PF} != "no" && (${MK_INET_SUPPORT} != "no" || \ 605af8a927eSBjoern A. Zeeb ${MK_INET6_SUPPORT} != "no")) || defined(ALL_MODULES) 6068d69c48bSMax Laier_pf= pf 6075bba2114SMax Laier_pflog= pflog 608e0bfbfceSBjoern A. Zeeb.if ${MK_INET_SUPPORT} != "no" 609e0bfbfceSBjoern A. Zeeb_pfsync= pfsync 610e0bfbfceSBjoern A. Zeeb.endif 6118d69c48bSMax Laier.endif 6128d69c48bSMax Laier 6134a47892cSRobert Millan.if ${MK_SOURCELESS_UCODE} != "no" 6144a47892cSRobert Millan_bce= bce 6154a47892cSRobert Millan_fxp= fxp 6164a47892cSRobert Millan_ispfw= ispfw 6177b523f05SEd Maste_ti= ti 6184a47892cSRobert Millan_mwlfw= mwlfw 6198485a1f6SEd Maste_otusfw= otusfw 6204a47892cSRobert Millan_ralfw= ralfw 621783da314SChristian Brueffer_rtwnfw= rtwnfw 6227b523f05SEd Maste.endif 6234a47892cSRobert Millan 624ca7fe84aSNavdeep Parhar.if ${MK_SOURCELESS_UCODE} != "no" && ${MACHINE_CPUARCH} != "arm" && \ 625dc9b124dSJustin Hibbits ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "powerpcspe" && \ 626dc9b124dSJustin Hibbits ${MACHINE_CPUARCH} != "riscv" 627183dc986SNavdeep Parhar_cxgbe= cxgbe 628183dc986SNavdeep Parhar.endif 629513798ccSYoshihiro Takahashi 630a0f3abb0SPiotr Kubaj.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "arm64" || ${MACHINE_ARCH:Mpowerpc64*} 63171d10453SEric Joyner_ice= ice 63271d10453SEric Joyner.if ${MK_SOURCELESS_UCODE} != "no" 63371d10453SEric Joyner_ice_ddp= ice_ddp 63471d10453SEric Joyner.endif 635cdcd52d4SBartosz Sobczak.if ${MK_OFED} != "no" || defined(ALL_MODULES) 636acdfbc6cSMitchell Horne.if ${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no" 637cdcd52d4SBartosz Sobczak_irdma= irdma 638cdcd52d4SBartosz Sobczak.endif 63971d10453SEric Joyner.endif 640acdfbc6cSMitchell Horne.endif 64171d10453SEric Joyner 642242cd60aSMilan Obuch.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" || \ 643242cd60aSMilan Obuch ${MACHINE_CPUARCH} == "riscv" 644701ab6dbSAndrew Turner.if !empty(OPT_FDT) 645242cd60aSMilan Obuch_if_cgem= if_cgem 646242cd60aSMilan Obuch.endif 647701ab6dbSAndrew Turner.endif 648242cd60aSMilan Obuch 64944f299a3SScott Long# These rely on 64bit atomics 650f9bf8876SWarner Losh.if ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "powerpcspe" 65144f299a3SScott Long_mps= mps 65244f299a3SScott Long_mpr= mpr 65344f299a3SScott Long.endif 65444f299a3SScott Long 655a3d929a7SEnji Cooper.if ${MK_TESTS} != "no" || defined(ALL_MODULES) 656a3d929a7SEnji CooperSUBDIR+= tests 657a3d929a7SEnji Cooper.endif 658a3d929a7SEnji Cooper 65963715498SAlfredo Dal'Ava Junior.if ${MK_ZFS} != "no" || defined(ALL_MODULES) 6605e742644SEd MasteSUBDIR+= zfs 6615e742644SEd Maste.endif 6625e742644SEd Maste 663513798ccSYoshihiro Takahashi.if ${MK_SOURCELESS_UCODE} != "no" 664513798ccSYoshihiro Takahashi_cxgb= cxgb 665513798ccSYoshihiro Takahashi.endif 666513798ccSYoshihiro Takahashi 667fa32340bSEd Maste.if ${MACHINE_CPUARCH} == "aarch64" 668d6699d29SAndrew Turner_armv8crypto= armv8crypto 669ba7319e9SDmitry Salychev_dpaa2= dpaa2 670fa32340bSEd Maste_em= em 671445875aeSWarner Losh_hyperv= hyperv 672701ab6dbSAndrew Turner 673701ab6dbSAndrew Turner.if !empty(OPT_FDT) 674701ab6dbSAndrew Turner_allwinner= allwinner 675701ab6dbSAndrew Turner_dwwdt= dwwdt 6765ad6d28cSKornel Duleba_enetc= enetc 677451bcf1bSMarcin Wojtas_felix= felix 678c0fc4047SEmmanuel Vadot_rockchip= rockchip 679fa32340bSEd Maste.endif 680701ab6dbSAndrew Turner.endif 681fa32340bSEd Maste 6820b426a1cSEmmanuel Vadot.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" 683701ab6dbSAndrew Turner.if !empty(OPT_FDT) 6840b426a1cSEmmanuel Vadot_sdhci_fdt= sdhci_fdt 685701ab6dbSAndrew Turner.endif 686ee1b7811SHubert Mazur_e6000sw= e6000sw 687b831f9ceSHubert Mazur_neta= neta 6888e9a651aSWarner Losh.endif 6890b426a1cSEmmanuel Vadot 690513798ccSYoshihiro Takahashi.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 691513798ccSYoshihiro Takahashi_agp= agp 6920f2d88d1SKonstantin Belousov.if ${MACHINE_CPUARCH} == "i386" || !empty(COMPAT_FREEBSD32_ENABLED) 693513798ccSYoshihiro Takahashi_aout= aout 6940f2d88d1SKonstantin Belousov.endif 6954d12189bSRavi Pokala_bios= bios 696722f80aeSEd Maste.if ${MK_SOURCELESS_UCODE} != "no" 697513798ccSYoshihiro Takahashi_bxe= bxe 698722f80aeSEd Maste.endif 699513798ccSYoshihiro Takahashi_cardbus= cardbus 700513798ccSYoshihiro Takahashi_cbb= cbb 701513798ccSYoshihiro Takahashi_cpuctl= cpuctl 702513798ccSYoshihiro Takahashi_cpufreq= cpufreq 703513798ccSYoshihiro Takahashi_dpms= dpms 704513798ccSYoshihiro Takahashi_em= em 705513798ccSYoshihiro Takahashi_et= et 7061b10e191SStéphane Rochoy_ftgpio= ftgpio 7075667729fSPoul-Henning Kamp_ftwd= ftwd 708513798ccSYoshihiro Takahashi_exca= exca 709517904deSPeter Grehan_igc= igc 710513798ccSYoshihiro Takahashi_io= io 71188f8e098SAndriy Gapon_itwd= itwd 7121f6c33acSEric Joyner_ix= ix 7131aa7c60cSJack F Vogel_ixv= ixv 7143de0952fSSean Bruno.if ${MK_SOURCELESS_UCODE} != "no" 7153de0952fSSean Bruno_lio= lio 7163de0952fSSean Bruno.endif 717ce110ea1SWei Hu_mana= mana 718543df609SEd Maste_mgb= mgb 7196b7b2d80SAdrian Chadd_nctgpio= nctgpio 72063ac15abSAlexander Motin_ntb= ntb 721ef270ab1SKenneth D. Merry_ocs_fc= ocs_fc 722ba9f71ddSWarner Losh_p2sb= p2sb 72378ee8d1cSJulian Grajkowski_qat= qat 724f078c492SMark Johnston_qatfw= qatfw 725100ddf89SMark Johnston_qat_c2xxx= qat_c2xxx 726100ddf89SMark Johnston_qat_c2xxxfw= qat_c2xxxfw 727513798ccSYoshihiro Takahashi_safe= safe 728513798ccSYoshihiro Takahashi_speaker= speaker 729513798ccSYoshihiro Takahashi_splash= splash 730ba9f71ddSWarner Losh_syscons= syscons 731513798ccSYoshihiro Takahashi_wbwd= wbwd 73299aeb219STakanori Watanabe_wdatwd= wdatwd 7332b375b4eSYoshihiro Takahashi 734513798ccSYoshihiro Takahashi_aac= aac 735513798ccSYoshihiro Takahashi_aacraid= aacraid 736513798ccSYoshihiro Takahashi_acpi= acpi 737513798ccSYoshihiro Takahashi.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 738513798ccSYoshihiro Takahashi_aesni= aesni 739513798ccSYoshihiro Takahashi.endif 740f5aac907SAndriy Gapon_amd_ecc_inject=amd_ecc_inject 741513798ccSYoshihiro Takahashi_amdsbwd= amdsbwd 742907f50feSConrad Meyer_amdsmn= amdsmn 743513798ccSYoshihiro Takahashi_amdtemp= amdtemp 744513798ccSYoshihiro Takahashi_arcmsr= arcmsr 745513798ccSYoshihiro Takahashi_asmc= asmc 7460e33efe4SConrad Meyer.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 7470e33efe4SConrad Meyer_blake2= blake2 7480e33efe4SConrad Meyer.endif 749c5d1ccc2SOleksandr Tymoshenko_bytgpio= bytgpio 75094b8a54aSOleksandr Tymoshenko_chvgpio= chvgpio 751513798ccSYoshihiro Takahashi_ciss= ciss 752448897d3SAndriy Gapon_chromebook_platform= chromebook_platform 753513798ccSYoshihiro Takahashi_coretemp= coretemp 754849aef49SAndrew Turner.if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED) 755513798ccSYoshihiro Takahashi_hpt27xx= hpt27xx 756513798ccSYoshihiro Takahashi.endif 757513798ccSYoshihiro Takahashi_hptiop= hptiop 758849aef49SAndrew Turner.if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED) 759513798ccSYoshihiro Takahashi_hptmv= hptmv 760513798ccSYoshihiro Takahashi_hptnr= hptnr 761513798ccSYoshihiro Takahashi_hptrr= hptrr 762513798ccSYoshihiro Takahashi.endif 763513798ccSYoshihiro Takahashi_hyperv= hyperv 764513798ccSYoshihiro Takahashi_ichwd= ichwd 765513798ccSYoshihiro Takahashi_ida= ida 766d786719dSOleksandr Tymoshenko_intelspi= intelspi 767513798ccSYoshihiro Takahashi_ips= ips 768444e7e3dSRui Paulo_isci= isci 769513798ccSYoshihiro Takahashi_ipw= ipw 770444e7e3dSRui Paulo_iwi= iwi 771444e7e3dSRui Paulo_iwm= iwm 772444e7e3dSRui Paulo_iwn= iwn 773513798ccSYoshihiro Takahashi.if ${MK_SOURCELESS_UCODE} != "no" 774513798ccSYoshihiro Takahashi_ipwfw= ipwfw 775513798ccSYoshihiro Takahashi_iwifw= iwifw 776444e7e3dSRui Paulo_iwmfw= iwmfw 777513798ccSYoshihiro Takahashi_iwnfw= iwnfw 778513798ccSYoshihiro Takahashi.endif 779513798ccSYoshihiro Takahashi_nfe= nfe 780513798ccSYoshihiro Takahashi_nvd= nvd 781513798ccSYoshihiro Takahashi_nvme= nvme 782513798ccSYoshihiro Takahashi_nvram= nvram 783513798ccSYoshihiro Takahashi.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 784513798ccSYoshihiro Takahashi_padlock= padlock 78510cb2424SMark Murray_padlock_rng= padlock_rng 78610cb2424SMark Murray_rdrand_rng= rdrand_rng 787513798ccSYoshihiro Takahashi.endif 788c3079787STakanori Watanabe_pchtherm = pchtherm 789513798ccSYoshihiro Takahashi_s3= s3 790e5d519fdSOleksandr Tymoshenko_sdhci_acpi= sdhci_acpi 791e3722b78SAndriy Gapon_superio= superio 792513798ccSYoshihiro Takahashi_tpm= tpm 793513798ccSYoshihiro Takahashi_vesa= vesa 794513798ccSYoshihiro Takahashi_viawd= viawd 7957af4475aSAlexander Motin_vmd= vmd 796513798ccSYoshihiro Takahashi_wpi= wpi 797513798ccSYoshihiro Takahashi.if ${MK_SOURCELESS_UCODE} != "no" 798513798ccSYoshihiro Takahashi_wpifw= wpifw 799513798ccSYoshihiro Takahashi.endif 800513798ccSYoshihiro Takahashi_x86bios= x86bios 801513798ccSYoshihiro Takahashi.endif 802513798ccSYoshihiro Takahashi 803513798ccSYoshihiro Takahashi.if ${MACHINE_CPUARCH} == "amd64" 8048ce574deSOleksandr Tymoshenko_amdgpio= amdgpio 805d3f8974aSConrad Meyer_ccp= ccp 8069c067b84SDoug Ambrisko_enic= enic 80777c1fcecSEric Joyner_iavf= iavf 808e974f91cSConrad Meyer_ioat= ioat 809513798ccSYoshihiro Takahashi_ixl= ixl 8106db7f8e5SKonstantin Belousov_nvdimm= nvdimm 811a650d869SBenno Rice_pms= pms 812513798ccSYoshihiro Takahashi_qlxge= qlxge 813513798ccSYoshihiro Takahashi_qlxgb= qlxgb 814bd368728SMarko Zec_sume= sume 81549c6edfcSEd Maste.if ${MK_SOURCELESS_UCODE} != "no" 816513798ccSYoshihiro Takahashi_qlxgbe= qlxgbe 81711e25f0dSDavid C Somayajulu_qlnx= qlnx 818eadaf05dSEd Maste.endif 819513798ccSYoshihiro Takahashi_sfxge= sfxge 8202164af29SRuslan Bukin_sgx= sgx 8212164af29SRuslan Bukin_sgx_linux= sgx_linux 8221e66f787SSean Bruno_smartpqi= smartpqi 8233706af42SArnaud Ysmal_p2sb= p2sb 82402629e46SEnji Cooper 82502629e46SEnji Cooper.if ${MK_BHYVE} != "no" || defined(ALL_MODULES) 8262ec8d574SKonstantin Belousov.if ${KERN_OPTS:MSMP} 827513798ccSYoshihiro Takahashi_vmm= vmm 828513798ccSYoshihiro Takahashi.endif 82902629e46SEnji Cooper.endif 8302ec8d574SKonstantin Belousov.endif 831513798ccSYoshihiro Takahashi 832c09808d0SWarner Losh.if ${MACHINE_CPUARCH} == "i386" 83328cc91d8SMike Smith# XXX some of these can move to the general case when de-i386'ed 8344e54e04eSWarner Losh# XXX some of these can move now, but are untested on other architectures. 835b8eaa978SRuslan Ermilov_3dfx= 3dfx 836375ce679SYaroslav Tykhiy_3dfx_linux= 3dfx_linux 837149d1c89SHenrik Brix Andersen_glxiic= glxiic 838a51aa5d1SPhilip Paeps_glxsb= glxsb 839b8eaa978SRuslan Ermilov_pcfclock= pcfclock 8404f05e3faSRuslan Ermilov_pst= pst 84126e46883SJohn Baldwin_sbni= sbni 842b8eaa978SRuslan Ermilov.endif 843b8eaa978SRuslan Ermilov 8440050ea24SMichal Meloun.if ${MACHINE_ARCH} == "armv7" 8452064b86fSMarcel Moolenaar_cfi= cfi 846e53470feSOleksandr Tymoshenko_cpsw= cpsw 8472064b86fSMarcel Moolenaar.endif 8482064b86fSMarcel Moolenaar 849a393ae13SNathan Whitehorn.if ${MACHINE_CPUARCH} == "powerpc" 850d8c51c6fSLeandro Lupori_aacraid= aacraid 85150fd2a5bSNathan Whitehorn_agp= agp 852d87076c8SWarner Losh_an= an 853363e589aSJustin Hibbits_cardbus= cardbus 854363e589aSJustin Hibbits_cbb= cbb 8552064b86fSMarcel Moolenaar_cfi= cfi 8569eb9db93SNathan Whitehorn_cpufreq= cpufreq 857fb6d9e60SJustin Hibbits_exca= exca 858f5c49e5cSIan Lepore_ffec= ffec 859b5e08a60SJustin Hibbits_nvd= nvd 860b5e08a60SJustin Hibbits_nvme= nvme 8618e2ad3d7SJustin Hibbits.endif 86273badb24SDavid E. O'Brien 863b75abea4SBrandon Bergren.if ${MACHINE_ARCH:Mpowerpc64*} != "" 864c5568ba0SLeandro Lupori_ixl= ixl 8651c56203bSJustin Hibbits_nvram= opal_nvram 866e552cac3SPiotr Kubaj.endif 867e552cac3SPiotr Kubaj 868b963e10dSBrandon Bergren.if ${MACHINE_CPUARCH} == "powerpc" && ${MACHINE_ARCH} != "powerpcspe" 869dc9b124dSJustin Hibbits# Don't build powermac_nvram for powerpcspe, it's never supported. 8701c56203bSJustin Hibbits_nvram+= powermac_nvram 871dc9b124dSJustin Hibbits.endif 8722785677dSNathan Whitehorn 87331bfa278SWarner Losh.if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "aarch64" 874fc62b7e5SPoul-Henning Kamp_bcm283x_clkman= bcm283x_clkman 875137a344cSPoul-Henning Kamp_bcm283x_pwm= bcm283x_pwm 876137a344cSPoul-Henning Kamp.endif 877137a344cSPoul-Henning Kamp 878a31993feSAlex Richardson.if !(${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} < 110000) 879a31993feSAlex Richardson# LLVM 10 crashes when building if_malo_pci.c, fixed in LLVM11: 880a31993feSAlex Richardson# https://bugs.llvm.org/show_bug.cgi?id=44351 881a31993feSAlex Richardson_malo= malo 882a31993feSAlex Richardson.endif 883a31993feSAlex Richardson 884854739a4SWarner LoshSUBDIR+=${MODULES_EXTRA} 885854739a4SWarner Losh 886ba2e5903SWes Peters.for reject in ${WITHOUT_MODULES} 887ba2e5903SWes PetersSUBDIR:= ${SUBDIR:N${reject}} 888ba2e5903SWes Peters.endfor 889ba2e5903SWes Peters 890f7026fbbSWarner Losh.endif # MODULES_OVERRIDE -- Keep last 891f7026fbbSWarner Losh 8925e82ed7bSRuslan Ermilov# Calling kldxref(8) for each module is expensive. 8934875819cSJake Burkholder.if !defined(NO_XREF) 89499bca506SRuslan Ermilov.MAKEFLAGS+= -DNO_XREF 89549773547SBryan Dreweryafterinstall: .PHONY 896be1d673dSRuslan Ermilov @if type kldxref >/dev/null 2>&1; then \ 8975ec57af4SMaxim Sobolev ${ECHO} ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \ 8985ec57af4SMaxim Sobolev ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \ 899be1d673dSRuslan Ermilov fi 9005e82ed7bSRuslan Ermilov.endif 9015e82ed7bSRuslan Ermilov 90235c4406dSWarner LoshSUBDIR:= ${SUBDIR:u:O} 90335c4406dSWarner Losh 9040eec3684SGarrett Wollman.include <bsd.subdir.mk> 905