1SYSDIR?=${SRCTOP}/sys 2.include "${SYSDIR}/conf/kern.opts.mk" 3 4SUBDIR_PARALLEL= 5 6# Modules that include binary-only blobs of microcode should be selectable by 7# MK_SOURCELESS_UCODE option (see below). 8 9.include "${SYSDIR}/conf/config.mk" 10 11.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES) 12SUBDIR=${MODULES_OVERRIDE} 13.else 14SUBDIR= \ 15 ${_3dfx} \ 16 ${_3dfx_linux} \ 17 ${_aac} \ 18 ${_aacraid} \ 19 accf_data \ 20 accf_dns \ 21 accf_http \ 22 accf_tls \ 23 acl_nfs4 \ 24 acl_posix1e \ 25 ${_acpi} \ 26 ae \ 27 ${_aesni} \ 28 age \ 29 ${_agp} \ 30 ahci \ 31 aic7xxx \ 32 alc \ 33 ale \ 34 alq \ 35 ${_amd_ecc_inject} \ 36 ${_amdgpio} \ 37 ${_amdsmu} \ 38 ${_amdsbwd} \ 39 ${_amdsmn} \ 40 ${_amdtemp} \ 41 ${_aout} \ 42 ${_arcmsr} \ 43 ${_allwinner} \ 44 ${_armv8crypto} \ 45 ${_armv8_rng} \ 46 ${_apple_bce} \ 47 ${_asmc} \ 48 ata \ 49 ${_aq} \ 50 ath \ 51 ath_dfs \ 52 ath_hal \ 53 ath_hal_ar5210 \ 54 ath_hal_ar5211 \ 55 ath_hal_ar5212 \ 56 ath_hal_ar5416 \ 57 ath_hal_ar9300 \ 58 ath_main \ 59 ath_rate \ 60 ${_autofs} \ 61 axgbe \ 62 backlight \ 63 ${_bce} \ 64 ${_bcm283x_clkman} \ 65 ${_bcm283x_pwm} \ 66 bfe \ 67 bge \ 68 bhnd \ 69 ${_bxe} \ 70 ${_bios} \ 71 ${_blake2} \ 72 ${_bnxt} \ 73 bridgestp \ 74 bwi \ 75 bwn \ 76 ${_adlngpio} \ 77 ${_bytgpio} \ 78 ${_chvgpio} \ 79 cam \ 80 ${_cardbus} \ 81 ${_carp} \ 82 cas \ 83 ${_cbb} \ 84 cc \ 85 ${_ccp} \ 86 cd9660 \ 87 cd9660_iconv \ 88 ${_cfi} \ 89 ${_chromebook_platform} \ 90 ${_ciss} \ 91 ${_coreboot} \ 92 ${_coretemp} \ 93 ${_cpsw} \ 94 ${_cpuctl} \ 95 ${_cpufreq} \ 96 ${_crypto} \ 97 ${_cryptodev} \ 98 ctl \ 99 ${_cxgb} \ 100 ${_cxgbe} \ 101 dc \ 102 dcons \ 103 dcons_crom \ 104 ${_dpaa2} \ 105 ${_dpdk_lpm4} \ 106 ${_dpdk_lpm6} \ 107 ${_dpms} \ 108 dummymbuf \ 109 dummynet \ 110 ${_dwwdt} \ 111 e6000sw \ 112 ${_efirt} \ 113 ${_em} \ 114 ${_ena} \ 115 ${_enic} \ 116 ${_enetc} \ 117 ${_et} \ 118 etherswitch \ 119 evdev \ 120 ${_exca} \ 121 ext2fs \ 122 fdc \ 123 fdescfs \ 124 ${_felix} \ 125 ${_ffec} \ 126 ${_fib_dxr} \ 127 filemon \ 128 firewire \ 129 firmware \ 130 flash \ 131 ${_ftgpio} \ 132 ${_ftwd} \ 133 fusefs \ 134 ${_fxp} \ 135 gem \ 136 geom \ 137 ${_glxiic} \ 138 ${_glxsb} \ 139 gpio \ 140 ${_gve} \ 141 hid \ 142 ${_hpt27xx} \ 143 ${_hptiop} \ 144 ${_hptmv} \ 145 ${_hptnr} \ 146 ${_hptrr} \ 147 hwpmc \ 148 ${_hwt} \ 149 ${_hyperv} \ 150 i2c \ 151 ${_iavf} \ 152 ${_ibcore} \ 153 ${_ichwd} \ 154 ${_ice} \ 155 ${_ice_ddp} \ 156 ${_irdma} \ 157 ${_ida} \ 158 if_bridge \ 159 ${_if_cgem} \ 160 if_disc \ 161 if_edsc \ 162 ${_if_enc} \ 163 if_epair \ 164 ${_genet} \ 165 ${_if_gif} \ 166 ${_if_gre} \ 167 ${_if_me} \ 168 if_infiniband \ 169 if_lagg \ 170 if_ovpn \ 171 ${_if_stf} \ 172 if_tuntap \ 173 if_vlan \ 174 if_vxlan \ 175 if_geneve \ 176 ${_if_wg} \ 177 iflib \ 178 ${_igc} \ 179 imgact_binmisc \ 180 ${_imx} \ 181 ${_intelspi} \ 182 ${_io} \ 183 ${_ioat} \ 184 ${_ipoib} \ 185 ipdivert \ 186 ${_ipfilter} \ 187 ${_ipfw} \ 188 ipfw_nat \ 189 ${_ipfw_nat64} \ 190 ${_ipfw_nptv6} \ 191 ${_ipfw_pmod} \ 192 ${_ipmi} \ 193 ip6_mroute_mod \ 194 ip_mroute_mod \ 195 ${_ips} \ 196 ${_ipsec} \ 197 ${_ipw} \ 198 ${_ipwfw} \ 199 ${_isci} \ 200 ${_iser} \ 201 isp \ 202 ${_ispfw} \ 203 ${_itwd} \ 204 ${_iwi} \ 205 ${_iwifw} \ 206 ${_iwlwifi} \ 207 ${_iwm} \ 208 ${_iwn} \ 209 ${_iwnfw} \ 210 ${_iwx} \ 211 ${_ix} \ 212 ${_ixv} \ 213 ${_ixl} \ 214 jme \ 215 kbdmux \ 216 kgssapi \ 217 kgssapi_krb5 \ 218 khelp \ 219 krpc \ 220 ksyms \ 221 lge \ 222 libalias \ 223 libiconv \ 224 libmchain \ 225 lindebugfs \ 226 linuxkpi \ 227 linuxkpi_hdmi \ 228 linuxkpi_video \ 229 linuxkpi_wlan \ 230 ${_lio} \ 231 lpt \ 232 ${_mac_biba} \ 233 ${_mac_bsdextended} \ 234 ${_mac_ddb} \ 235 ${_mac_do} \ 236 ${_mac_ifoff} \ 237 ${_mac_ipacl} \ 238 ${_mac_lomac} \ 239 ${_mac_mls} \ 240 ${_mac_none} \ 241 ${_mac_ntpd} \ 242 ${_mac_partition} \ 243 ${_mac_pimd} \ 244 ${_mac_portacl} \ 245 ${_mac_priority} \ 246 ${_mac_seeotheruids} \ 247 ${_mac_stub} \ 248 ${_mac_test} \ 249 ${_mac_veriexec} \ 250 ${_mac_veriexec_sha1} \ 251 ${_mac_veriexec_sha256} \ 252 ${_mac_veriexec_sha384} \ 253 ${_mac_veriexec_sha512} \ 254 ${_malo} \ 255 ${_mana} \ 256 md \ 257 mdio \ 258 ${_mgb} \ 259 mem \ 260 mfi \ 261 mii \ 262 miiproxy \ 263 mlx \ 264 mlxfw \ 265 ${_mlx4} \ 266 ${_mlx4ib} \ 267 ${_mlx4en} \ 268 ${_mlx5} \ 269 ${_mlx5en} \ 270 ${_mlx5ib} \ 271 mmc \ 272 mmcsd \ 273 ${_mpi3mr} \ 274 ${_mpr} \ 275 ${_mps} \ 276 mpt \ 277 mqueue \ 278 mrsas \ 279 msdosfs \ 280 msdosfs_iconv \ 281 msk \ 282 ${_mthca} \ 283 mvs \ 284 mwl \ 285 ${_mwlfw} \ 286 mxge \ 287 my \ 288 ${_nctgpio} \ 289 ${_ncthwm} \ 290 ${_neta} \ 291 netlink \ 292 ${_netgraph} \ 293 ${_nfe} \ 294 nfscl \ 295 nfscommon \ 296 nfsd \ 297 nfslockd \ 298 nfssvc \ 299 nlsysevent \ 300 nge \ 301 nmdm \ 302 ntsync \ 303 nullfs \ 304 ${_ntb} \ 305 nvd \ 306 ${_nvdimm} \ 307 nvme \ 308 nvmf \ 309 ${_nvram} \ 310 oce \ 311 ${_ocs_fc} \ 312 ${_ossl} \ 313 otus \ 314 ${_otusfw} \ 315 ow \ 316 p9fs \ 317 ${_padlock} \ 318 ${_padlock_rng} \ 319 ${_pchtherm} \ 320 ${_pcfclock} \ 321 ${_pf} \ 322 ${_pflog} \ 323 ${_pflow} \ 324 ${_pfsync} \ 325 plip \ 326 ${_pms} \ 327 ppbus \ 328 ppc \ 329 ppi \ 330 pps \ 331 procfs \ 332 proto \ 333 pseudofs \ 334 ${_pst} \ 335 ${_pt} \ 336 pty \ 337 puc \ 338 pwm \ 339 ${_qat} \ 340 ${_qatfw} \ 341 ${_qat_c2xxx} \ 342 ${_qat_c2xxxfw} \ 343 ${_qlxge} \ 344 ${_qlxgb} \ 345 ${_qlxgbe} \ 346 ${_qlnx} \ 347 ral \ 348 ${_ralfw} \ 349 ${_random_fortuna} \ 350 ${_random_other} \ 351 rc4 \ 352 ${_rdma} \ 353 ${_rdrand_rng} \ 354 ${_rdseed_rng} \ 355 re \ 356 rge \ 357 rl \ 358 ${_rockchip} \ 359 rtsx \ 360 ${_rtw88} \ 361 ${_rtw89} \ 362 rtwn \ 363 rtwn_pci \ 364 ${_rtwn_usb} \ 365 ${_rtwnfw} \ 366 ${_s3} \ 367 ${_safe} \ 368 safexcel \ 369 ${_sbni} \ 370 scc \ 371 ${_sctp} \ 372 sdhci \ 373 ${_sdhci_acpi} \ 374 ${_sdhci_fdt} \ 375 sdhci_pci \ 376 sdio \ 377 ${_sff} \ 378 sem \ 379 send \ 380 ${_sfxge} \ 381 sge \ 382 ${_sgx} \ 383 ${_sgx_linux} \ 384 siftr \ 385 siis \ 386 sis \ 387 sk \ 388 ${_smartpqi} \ 389 smbfs \ 390 snp \ 391 sound \ 392 ${_spe} \ 393 ${_speaker} \ 394 spi \ 395 ${_splash} \ 396 ste \ 397 stge \ 398 ${_sume} \ 399 ${_superio} \ 400 ${_p2sb} \ 401 sym \ 402 ${_syscons} \ 403 sysvipc \ 404 tarfs \ 405 tcp \ 406 ${_thunderbolt} \ 407 ${_ti} \ 408 tmpfs \ 409 ${_toecore} \ 410 tpm \ 411 tws \ 412 uart \ 413 udf \ 414 udf_iconv \ 415 ufs \ 416 ${_ufshci} \ 417 uinput \ 418 unionfs \ 419 ${_usb} \ 420 ${_vesa} \ 421 ${_vf_i2c} \ 422 virtio \ 423 vge \ 424 ${_viawd} \ 425 videomode \ 426 vkbd \ 427 ${_vmd} \ 428 ${_vmm} \ 429 ${_vmware} \ 430 vr \ 431 vte \ 432 ${_wbwd} \ 433 ${_wdatwd} \ 434 wlan \ 435 wlan_acl \ 436 wlan_amrr \ 437 wlan_ccmp \ 438 wlan_gcmp \ 439 wlan_rssadapt \ 440 wlan_tkip \ 441 wlan_wep \ 442 wlan_xauth \ 443 ${_wpi} \ 444 ${_wpifw} \ 445 ${_wtap} \ 446 ${_x86bios} \ 447 xdr \ 448 xl \ 449 xz \ 450 zlib 451 452.if ${MK_AUTOFS} != "no" || defined(ALL_MODULES) 453_autofs= autofs 454.endif 455 456.if ${MK_DTRACE} != "no" || defined(ALL_MODULES) 457.if ${KERN_OPTS:MKDTRACE_HOOKS} 458SUBDIR+= dtrace 459.endif 460SUBDIR+= opensolaris 461.endif 462 463.if !${MACHINE_ABI:Mlong32} 464_bnxt= bnxt 465.endif 466 467.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 468.if exists(${SRCTOP}/sys/opencrypto) 469_crypto= crypto 470_cryptodev= cryptodev 471_random_fortuna=random_fortuna 472_random_other= random_other 473.endif 474.endif 475 476.if ${MK_CUSE} != "no" || defined(ALL_MODULES) 477SUBDIR+= cuse 478.endif 479 480.if ${MK_EFI} != "no" 481.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" 482_efirt= efirt 483.endif 484.endif 485 486.if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \ 487 defined(ALL_MODULES) 488_carp= carp 489_toecore= toecore 490_if_enc= if_enc 491_if_gif= if_gif 492_if_gre= if_gre 493.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 494_if_wg= if_wg 495.endif 496_ipfw_pmod= ipfw_pmod 497.if ${KERN_OPTS:MIPSEC_SUPPORT} && !${KERN_OPTS:MIPSEC} 498_ipsec= ipsec 499.endif 500.if ${KERN_OPTS:MSCTP_SUPPORT} || ${KERN_OPTS:MSCTP} 501_sctp= sctp 502.endif 503.endif 504 505.if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \ 506 defined(ALL_MODULES) 507_if_stf= if_stf 508.endif 509 510.if (${KERN_OPTS:MINET} && ${MK_INET_SUPPORT} != "no") || defined(ALL_MODULES) 511_if_me= if_me 512_ipfw= ipfw 513.if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES) 514_ipfw_nat64= ipfw_nat64 515.endif 516.endif 517 518.if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES) 519_ipfw_nptv6= ipfw_nptv6 520.endif 521 522.if ${MK_IPFILTER} != "no" || defined(ALL_MODULES) 523_ipfilter= ipfilter 524.endif 525 526.if ${MK_INET_SUPPORT} != "no" && ${KERN_OPTS:MFIB_ALGO} && ${KERN_OPTS:MINET} 527_dpdk_lpm4= dpdk_lpm4 528_fib_dxr= fib_dxr 529.endif 530 531.if ${MK_INET6_SUPPORT} != "no" && ${KERN_OPTS:MFIB_ALGO} 532_dpdk_lpm6= dpdk_lpm6 533.endif 534 535.if ${MK_ISCSI} != "no" || defined(ALL_MODULES) 536SUBDIR+= cfiscsi 537SUBDIR+= iscsi 538.endif 539 540.if !empty(OPT_FDT) 541SUBDIR+= fdt 542.endif 543 544# Linuxulator 545.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 546 ${MACHINE_CPUARCH} == "i386" 547SUBDIR+= linprocfs 548SUBDIR+= linsysfs 549SUBDIR+= linux_ntsync 550.endif 551.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" 552SUBDIR+= linux 553.endif 554.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" 555SUBDIR+= linux64 556SUBDIR+= linux_common 557.endif 558 559# LinuxKPI based wireless drivers. 560.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 561 ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "riscv" 562_iwlwifi= iwlwifi 563_rtw88= rtw88 564# rtw89 currently cannot be compiled without ACPI (seems also broken in Linux). 565.if ${KERN_OPTS:MDEV_ACPI} 566_rtw89= rtw89 567.endif 568.endif 569 570.if ${MACHINE_CPUARCH} != "arm" 571.if ${MK_OFED} != "no" || defined(ALL_MODULES) 572_ibcore= ibcore 573_ipoib= ipoib 574_iser= iser 575_mthca= mthca 576_rdma= rdma 577.endif 578.endif 579 580.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 581 ${MACHINE_CPUARCH} == "i386" || ${MACHINE_ARCH:Mpowerpc64*} != "" 582_ipmi= ipmi 583_mlx4= mlx4 584_mlx5= mlx5 585.if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \ 586 defined(ALL_MODULES) 587_mlx4en= mlx4en 588_mlx5en= mlx5en 589.endif 590.if ${MK_OFED} != "no" || defined(ALL_MODULES) 591_mlx4ib= mlx4ib 592_mlx5ib= mlx5ib 593.endif 594.endif 595 596.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 597 ${MACHINE_CPUARCH} == "i386" 598_acpi= acpi 599_ena= ena 600_gve= gve 601_igc= igc 602_vmware= vmware 603.endif 604 605.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 606 ${MACHINE_CPUARCH} == "i386" || ${MACHINE_ARCH} == "armv7" || \ 607 ${MACHINE_ARCH:Mpowerpc64*} != "" 608_ossl= ossl 609.endif 610 611# MAC framework 612.if ${KERN_OPTS:MMAC} || defined(ALL_MODULES) 613_mac_biba= mac_biba 614_mac_bsdextended= mac_bsdextended 615.if ${KERN_OPTS:MDDB} || defined(ALL_MODULES) 616_mac_ddb= mac_ddb 617.endif 618_mac_do= mac_do 619_mac_ifoff= mac_ifoff 620_mac_ipacl= mac_ipacl 621_mac_lomac= mac_lomac 622_mac_mls= mac_mls 623_mac_none= mac_none 624_mac_ntpd= mac_ntpd 625_mac_partition= mac_partition 626_mac_pimd= mac_pimd 627_mac_portacl= mac_portacl 628_mac_priority= mac_priority 629_mac_seeotheruids= mac_seeotheruids 630_mac_stub= mac_stub 631_mac_test= mac_test 632.if ${MK_VERIEXEC} != "no" || defined(ALL_MODULES) 633_mac_veriexec= mac_veriexec 634_mac_veriexec_sha1= mac_veriexec_sha1 635_mac_veriexec_sha256= mac_veriexec_sha256 636_mac_veriexec_sha384= mac_veriexec_sha384 637_mac_veriexec_sha512= mac_veriexec_sha512 638.endif 639.endif 640 641.if ${MK_NETGRAPH} != "no" || defined(ALL_MODULES) 642_netgraph= netgraph 643.endif 644 645.if (${MK_PF} != "no" && (${MK_INET_SUPPORT} != "no" || \ 646 ${MK_INET6_SUPPORT} != "no")) || defined(ALL_MODULES) 647_pf= pf 648_pflog= pflog 649_pflow= pflow 650.if ${MK_INET_SUPPORT} != "no" 651_pfsync= pfsync 652.endif 653.endif 654 655.if ${MK_SOURCELESS_UCODE} != "no" 656_bce= bce 657_fxp= fxp 658_ispfw= ispfw 659_ti= ti 660_mwlfw= mwlfw 661_otusfw= otusfw 662_ralfw= ralfw 663_rtwnfw= rtwnfw 664.endif 665 666.if ${MK_SOURCELESS_UCODE} != "no" && ${MACHINE_CPUARCH} != "arm" && \ 667 ${MACHINE_ARCH} != "powerpc" && ${MACHINE_CPUARCH} != "riscv" 668_cxgbe= cxgbe 669.endif 670 671# This has only been tested on amd64 and arm64 672.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "aarch64" 673_mpi3mr=mpi3mr 674.endif 675 676# Specific to the Raspberry Pi. 677.if ${MACHINE_CPUARCH} == "aarch64" 678_genet= genet 679.endif 680 681.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "aarch64" || \ 682 ${MACHINE_ARCH:Mpowerpc64*} != "" 683_ice= ice 684.if ${MK_SOURCELESS_UCODE} != "no" 685_ice_ddp= ice_ddp 686.endif 687.if ${MK_OFED} != "no" || defined(ALL_MODULES) 688.if ${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no" 689_irdma= irdma 690.endif 691.endif 692_ixl= ixl 693.endif 694 695.if ${MACHINE_CPUARCH} == "aarch64" 696_spe= spe 697.endif 698 699.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" || \ 700 ${MACHINE_CPUARCH} == "riscv" 701.if !empty(OPT_FDT) 702_allwinner= allwinner 703_if_cgem= if_cgem 704_sdhci_fdt= sdhci_fdt 705.endif 706.endif 707 708# These rely on 64bit atomics 709.if ${MACHINE_ARCH} != "powerpc" 710_mps= mps 711_mpr= mpr 712.endif 713 714.if ${MK_TESTS} != "no" || defined(ALL_MODULES) 715SUBDIR+= ktest 716SUBDIR+= tests 717.endif 718 719.if ${MK_USB} != "no" || defined(ALL_MODULES) 720_rtwn_usb= rtwn_usb 721_usb= usb 722. if ${MACHINE_CPUARCH} == "amd64" 723_thunderbolt= thunderbolt 724. endif 725.endif 726 727.if ${MK_ZFS} != "no" || defined(ALL_MODULES) 728SUBDIR+= zfs 729.endif 730 731.if ${MK_SOURCELESS_UCODE} != "no" 732_cxgb= cxgb 733.endif 734 735.if ${MACHINE_CPUARCH} == "aarch64" 736_armv8crypto= armv8crypto 737_armv8_rng= armv8_rng 738_dpaa2= dpaa2 739_sff= sff 740_em= em 741_hyperv= hyperv 742_vf_i2c= vf_i2c 743 744.if !empty(OPT_FDT) 745_dwwdt= dwwdt 746_enetc= enetc 747_felix= felix 748_rockchip= rockchip 749.endif 750.endif 751 752.if ${MACHINE_CPUARCH} == "arm" 753_imx= imx 754.endif 755 756.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 757_aq= aq 758_agp= agp 759.if ${MACHINE_CPUARCH} == "i386" || !empty(COMPAT_FREEBSD32_ENABLED) 760_aout= aout 761.endif 762_bios= bios 763.if ${MK_SOURCELESS_UCODE} != "no" 764_bxe= bxe 765.endif 766_cardbus= cardbus 767_cbb= cbb 768_cpuctl= cpuctl 769_cpufreq= cpufreq 770_dpms= dpms 771_em= em 772_et= et 773_ftgpio= ftgpio 774_ftwd= ftwd 775_exca= exca 776_io= io 777_itwd= itwd 778_ix= ix 779_ixv= ixv 780.if ${MK_SOURCELESS_UCODE} != "no" 781_lio= lio 782.endif 783_mana= mana 784_mgb= mgb 785_nctgpio= nctgpio 786_ncthwm= ncthwm 787_ntb= ntb 788_ocs_fc= ocs_fc 789_p2sb= p2sb 790_qat_c2xxx= qat_c2xxx 791_qat_c2xxxfw= qat_c2xxxfw 792_safe= safe 793_speaker= speaker 794_splash= splash 795_syscons= syscons 796_wbwd= wbwd 797_wdatwd= wdatwd 798 799_aac= aac 800_aacraid= aacraid 801_adlngpio= adlngpio 802.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 803_aesni= aesni 804.endif 805_amd_ecc_inject=amd_ecc_inject 806_amdsmu= amdsmu 807_amdsbwd= amdsbwd 808_amdsmn= amdsmn 809_amdtemp= amdtemp 810_arcmsr= arcmsr 811.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 812_blake2= blake2 813.endif 814_bytgpio= bytgpio 815_chvgpio= chvgpio 816_ciss= ciss 817_chromebook_platform= chromebook_platform 818_coreboot= coreboot 819_coretemp= coretemp 820.if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED) 821_hpt27xx= hpt27xx 822.endif 823_hptiop= hptiop 824.if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED) 825_hptmv= hptmv 826_hptnr= hptnr 827_hptrr= hptrr 828.endif 829_hyperv= hyperv 830_ichwd= ichwd 831_ida= ida 832_intelspi= intelspi 833_ips= ips 834_isci= isci 835_ipw= ipw 836_iwi= iwi 837_iwm= iwm 838_iwn= iwn 839.if ${MK_SOURCELESS_UCODE} != "no" 840_ipwfw= ipwfw 841_iwifw= iwifw 842_iwnfw= iwnfw 843.endif 844_nfe= nfe 845_nvram= nvram 846.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 847_padlock= padlock 848_padlock_rng= padlock_rng 849_rdrand_rng= rdrand_rng 850_rdseed_rng= rdseed_rng 851.endif 852_pchtherm = pchtherm 853_s3= s3 854_sdhci_acpi= sdhci_acpi 855_superio= superio 856_vesa= vesa 857_viawd= viawd 858_vmd= vmd 859_wpi= wpi 860.if ${MK_SOURCELESS_UCODE} != "no" 861_wpifw= wpifw 862.endif 863.if ${KERN_OPTS:MVIMAGE} 864_wtap= wtap 865.endif 866_x86bios= x86bios 867.endif 868 869.if ${MACHINE_CPUARCH} == "amd64" 870_amdgpio= amdgpio 871_apple_bce= apple_bce 872_asmc= asmc 873_ccp= ccp 874_enic= enic 875_iavf= iavf 876_ioat= ioat 877_iwx= iwx 878_ixl= ixl 879_nvdimm= nvdimm 880_pms= pms 881_pt= pt 882_qat= qat 883.if ${MK_SOURCELESS_UCODE} != "no" 884_qatfw= qatfw 885.endif 886_qlxge= qlxge 887_qlxgb= qlxgb 888_sume= sume 889.if ${MK_SOURCELESS_UCODE} != "no" 890_qlxgbe= qlxgbe 891_qlnx= qlnx 892.endif 893_sfxge= sfxge 894_sgx= sgx 895_sgx_linux= sgx_linux 896_smartpqi= smartpqi 897_p2sb= p2sb 898.endif 899 900.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" 901_hwt= hwt 902.endif 903 904.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 905 ${MACHINE_CPUARCH} == "riscv" 906.if ${MK_BHYVE} != "no" || defined(ALL_MODULES) 907.if ${KERN_OPTS:MSMP} 908_vmm= vmm 909.endif 910.endif 911.endif 912 913.if ${MACHINE_CPUARCH} == "i386" 914# XXX some of these can move to the general case when de-i386'ed 915# XXX some of these can move now, but are untested on other architectures. 916_3dfx= 3dfx 917_3dfx_linux= 3dfx_linux 918_glxiic= glxiic 919_glxsb= glxsb 920_pcfclock= pcfclock 921_pst= pst 922_sbni= sbni 923.endif 924 925.if ${MACHINE_ARCH} == "armv7" 926_cfi= cfi 927_cpsw= cpsw 928.endif 929 930.if ${MACHINE_CPUARCH} == "powerpc" 931_aacraid= aacraid 932_agp= agp 933_an= an 934_cardbus= cardbus 935_cbb= cbb 936_cfi= cfi 937_cpufreq= cpufreq 938_exca= exca 939_ffec= ffec 940.endif 941 942.if ${MACHINE_ARCH:Mpowerpc64*} != "" 943_nvram= opal_nvram 944.endif 945 946.if ${MACHINE_CPUARCH} == "powerpc" 947_nvram+= powermac_nvram 948.endif 949 950.if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "aarch64" 951_bcm283x_clkman= bcm283x_clkman 952_bcm283x_pwm= bcm283x_pwm 953_neta= neta 954.endif 955 956.if !(${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} < 110000) 957# LLVM 10 crashes when building if_malo_pci.c, fixed in LLVM11: 958# https://bugs.llvm.org/show_bug.cgi?id=44351 959_malo= malo 960.endif 961 962.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "aarch64" 963_ufshci=ufshci 964.endif 965 966SUBDIR+=${MODULES_EXTRA} 967 968.for reject in ${WITHOUT_MODULES} 969SUBDIR:= ${SUBDIR:N${reject}} 970.endfor 971 972.endif # MODULES_OVERRIDE -- Keep last 973 974# Calling kldxref(8) for each module is expensive. 975.if !defined(NO_XREF) 976.MAKEFLAGS+= -DNO_XREF 977afterinstall: .PHONY 978 ${KLDXREF_CMD} ${DESTDIR}${KMODDIR} 979.if defined(NO_ROOT) && defined(METALOG) 980 echo ".${DISTBASE}${KMODDIR}/linker.hints type=file uname=root gname=wheel mode=0644" | \ 981 cat -l >> ${METALOG} 982.endif 983.endif 984 985SUBDIR:= ${SUBDIR:u:O} 986 987.include <bsd.subdir.mk> 988