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 ${_tglhgpio} \ 407 ${_thunderbolt} \ 408 ${_ti} \ 409 tmpfs \ 410 ${_toecore} \ 411 tpm \ 412 tws \ 413 uart \ 414 udf \ 415 udf_iconv \ 416 ufs \ 417 ${_ufshci} \ 418 uinput \ 419 unionfs \ 420 ${_usb} \ 421 ${_vesa} \ 422 ${_vf_i2c} \ 423 virtio \ 424 vge \ 425 ${_viawd} \ 426 video \ 427 videomode \ 428 vkbd \ 429 ${_vmd} \ 430 ${_vmm} \ 431 ${_vmware} \ 432 vr \ 433 vte \ 434 ${_wbwd} \ 435 ${_wdatwd} \ 436 wlan \ 437 wlan_acl \ 438 wlan_amrr \ 439 wlan_ccmp \ 440 wlan_gcmp \ 441 wlan_rssadapt \ 442 wlan_tkip \ 443 wlan_wep \ 444 wlan_xauth \ 445 ${_wpi} \ 446 ${_wpifw} \ 447 ${_wtap} \ 448 ${_x86bios} \ 449 xdr \ 450 xl \ 451 xz \ 452 zlib 453 454.if ${MK_AUTOFS} != "no" || defined(ALL_MODULES) 455_autofs= autofs 456.endif 457 458.if ${MK_DTRACE} != "no" || defined(ALL_MODULES) 459.if ${KERN_OPTS:MKDTRACE_HOOKS} 460SUBDIR+= dtrace 461.endif 462SUBDIR+= opensolaris 463.endif 464 465.if !${MACHINE_ABI:Mlong32} 466_bnxt= bnxt 467.endif 468 469.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 470.if exists(${SRCTOP}/sys/opencrypto) 471_crypto= crypto 472_cryptodev= cryptodev 473_random_fortuna=random_fortuna 474_random_other= random_other 475.endif 476.endif 477 478.if ${MK_CUSE} != "no" || defined(ALL_MODULES) 479SUBDIR+= cuse 480.endif 481 482.if ${MK_EFI} != "no" 483.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" 484_efirt= efirt 485.endif 486.endif 487 488.if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \ 489 defined(ALL_MODULES) 490_carp= carp 491_toecore= toecore 492_if_enc= if_enc 493_if_gif= if_gif 494_if_gre= if_gre 495.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 496_if_wg= if_wg 497.endif 498_ipfw_pmod= ipfw_pmod 499.if ${KERN_OPTS:MIPSEC_SUPPORT} && !${KERN_OPTS:MIPSEC} 500_ipsec= ipsec 501.endif 502.if ${KERN_OPTS:MSCTP_SUPPORT} || ${KERN_OPTS:MSCTP} 503_sctp= sctp 504.endif 505.endif 506 507.if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \ 508 defined(ALL_MODULES) 509_if_stf= if_stf 510.endif 511 512.if (${KERN_OPTS:MINET} && ${MK_INET_SUPPORT} != "no") || defined(ALL_MODULES) 513_if_me= if_me 514_ipfw= ipfw 515.if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES) 516_ipfw_nat64= ipfw_nat64 517.endif 518.endif 519 520.if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES) 521_ipfw_nptv6= ipfw_nptv6 522.endif 523 524.if ${MK_IPFILTER} != "no" || defined(ALL_MODULES) 525_ipfilter= ipfilter 526.endif 527 528.if ${MK_INET_SUPPORT} != "no" && ${KERN_OPTS:MFIB_ALGO} && ${KERN_OPTS:MINET} 529_dpdk_lpm4= dpdk_lpm4 530_fib_dxr= fib_dxr 531.endif 532 533.if ${MK_INET6_SUPPORT} != "no" && ${KERN_OPTS:MFIB_ALGO} 534_dpdk_lpm6= dpdk_lpm6 535.endif 536 537.if ${MK_ISCSI} != "no" || defined(ALL_MODULES) 538SUBDIR+= cfiscsi 539SUBDIR+= iscsi 540.endif 541 542.if !empty(OPT_FDT) 543SUBDIR+= fdt 544.endif 545 546# Linuxulator 547.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 548 ${MACHINE_CPUARCH} == "i386" 549SUBDIR+= linprocfs 550SUBDIR+= linsysfs 551SUBDIR+= linux_ntsync 552.endif 553.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" 554SUBDIR+= linux 555.endif 556.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" 557SUBDIR+= linux64 558SUBDIR+= linux_common 559.endif 560 561# LinuxKPI based wireless drivers. 562.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 563 ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "riscv" 564_iwlwifi= iwlwifi 565_rtw88= rtw88 566# rtw89 currently cannot be compiled without ACPI (seems also broken in Linux). 567.if ${KERN_OPTS:MDEV_ACPI} 568_rtw89= rtw89 569.endif 570.endif 571 572.if ${MACHINE_CPUARCH} != "arm" 573.if ${MK_OFED} != "no" || defined(ALL_MODULES) 574_ibcore= ibcore 575_ipoib= ipoib 576_iser= iser 577_mthca= mthca 578_rdma= rdma 579.endif 580.endif 581 582.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 583 ${MACHINE_CPUARCH} == "i386" || ${MACHINE_ARCH:Mpowerpc64*} != "" 584_ipmi= ipmi 585_mlx4= mlx4 586_mlx5= mlx5 587.if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \ 588 defined(ALL_MODULES) 589_mlx4en= mlx4en 590_mlx5en= mlx5en 591.endif 592.if ${MK_OFED} != "no" || defined(ALL_MODULES) 593_mlx4ib= mlx4ib 594_mlx5ib= mlx5ib 595.endif 596.endif 597 598.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 599 ${MACHINE_CPUARCH} == "i386" 600_acpi= acpi 601_ena= ena 602_gve= gve 603_igc= igc 604_vmware= vmware 605.endif 606 607.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 608 ${MACHINE_CPUARCH} == "i386" || ${MACHINE_ARCH} == "armv7" || \ 609 ${MACHINE_ARCH:Mpowerpc64*} != "" 610_ossl= ossl 611.endif 612 613# MAC framework 614.if ${KERN_OPTS:MMAC} || defined(ALL_MODULES) 615_mac_biba= mac_biba 616_mac_bsdextended= mac_bsdextended 617.if ${KERN_OPTS:MDDB} || defined(ALL_MODULES) 618_mac_ddb= mac_ddb 619.endif 620_mac_do= mac_do 621_mac_ifoff= mac_ifoff 622_mac_ipacl= mac_ipacl 623_mac_lomac= mac_lomac 624_mac_mls= mac_mls 625_mac_none= mac_none 626_mac_ntpd= mac_ntpd 627_mac_partition= mac_partition 628_mac_pimd= mac_pimd 629_mac_portacl= mac_portacl 630_mac_priority= mac_priority 631_mac_seeotheruids= mac_seeotheruids 632_mac_stub= mac_stub 633_mac_test= mac_test 634.if ${MK_VERIEXEC} != "no" || defined(ALL_MODULES) 635_mac_veriexec= mac_veriexec 636_mac_veriexec_sha1= mac_veriexec_sha1 637_mac_veriexec_sha256= mac_veriexec_sha256 638_mac_veriexec_sha384= mac_veriexec_sha384 639_mac_veriexec_sha512= mac_veriexec_sha512 640.endif 641.endif 642 643.if ${MK_NETGRAPH} != "no" || defined(ALL_MODULES) 644_netgraph= netgraph 645.endif 646 647.if (${MK_PF} != "no" && (${MK_INET_SUPPORT} != "no" || \ 648 ${MK_INET6_SUPPORT} != "no")) || defined(ALL_MODULES) 649_pf= pf 650_pflog= pflog 651_pflow= pflow 652.if ${MK_INET_SUPPORT} != "no" 653_pfsync= pfsync 654.endif 655.endif 656 657.if ${MK_SOURCELESS_UCODE} != "no" 658_bce= bce 659_fxp= fxp 660_ispfw= ispfw 661_ti= ti 662_mwlfw= mwlfw 663_otusfw= otusfw 664_ralfw= ralfw 665_rtwnfw= rtwnfw 666.endif 667 668.if ${MK_SOURCELESS_UCODE} != "no" && ${MACHINE_CPUARCH} != "arm" && \ 669 ${MACHINE_ARCH} != "powerpc" && ${MACHINE_CPUARCH} != "riscv" 670_cxgbe= cxgbe 671.endif 672 673# This has only been tested on amd64 and arm64 674.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "aarch64" 675_mpi3mr=mpi3mr 676.endif 677 678# Specific to the Raspberry Pi. 679.if ${MACHINE_CPUARCH} == "aarch64" 680_genet= genet 681.endif 682 683.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "aarch64" || \ 684 ${MACHINE_ARCH:Mpowerpc64*} != "" 685_ice= ice 686.if ${MK_SOURCELESS_UCODE} != "no" 687_ice_ddp= ice_ddp 688.endif 689.if ${MK_OFED} != "no" || defined(ALL_MODULES) 690.if ${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no" 691_irdma= irdma 692.endif 693.endif 694_ixl= ixl 695.endif 696 697.if ${MACHINE_CPUARCH} == "aarch64" 698_spe= spe 699.endif 700 701.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" || \ 702 ${MACHINE_CPUARCH} == "riscv" 703.if !empty(OPT_FDT) 704_allwinner= allwinner 705_if_cgem= if_cgem 706_sdhci_fdt= sdhci_fdt 707.endif 708.endif 709 710# These rely on 64bit atomics 711.if ${MACHINE_ARCH} != "powerpc" 712_mps= mps 713_mpr= mpr 714.endif 715 716.if ${MK_TESTS} != "no" || defined(ALL_MODULES) 717SUBDIR+= ktest 718SUBDIR+= tests 719.endif 720 721.if ${MK_USB} != "no" || defined(ALL_MODULES) 722_rtwn_usb= rtwn_usb 723_usb= usb 724. if ${MACHINE_CPUARCH} == "amd64" 725_thunderbolt= thunderbolt 726. endif 727.endif 728 729.if ${MK_ZFS} != "no" || defined(ALL_MODULES) 730SUBDIR+= zfs 731.endif 732 733.if ${MK_SOURCELESS_UCODE} != "no" 734_cxgb= cxgb 735.endif 736 737.if ${MACHINE_CPUARCH} == "aarch64" 738_armv8crypto= armv8crypto 739_armv8_rng= armv8_rng 740_dpaa2= dpaa2 741_sff= sff 742_em= em 743_hyperv= hyperv 744_vf_i2c= vf_i2c 745 746.if !empty(OPT_FDT) 747_dwwdt= dwwdt 748_enetc= enetc 749_felix= felix 750_rockchip= rockchip 751.endif 752.endif 753 754.if ${MACHINE_CPUARCH} == "arm" 755_imx= imx 756.endif 757 758.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 759_aq= aq 760_agp= agp 761.if ${MACHINE_CPUARCH} == "i386" || !empty(COMPAT_FREEBSD32_ENABLED) 762_aout= aout 763.endif 764_bios= bios 765.if ${MK_SOURCELESS_UCODE} != "no" 766_bxe= bxe 767.endif 768_cardbus= cardbus 769_cbb= cbb 770_cpuctl= cpuctl 771_cpufreq= cpufreq 772_dpms= dpms 773_em= em 774_et= et 775_ftgpio= ftgpio 776_ftwd= ftwd 777_exca= exca 778_io= io 779_itwd= itwd 780_ix= ix 781_ixv= ixv 782.if ${MK_SOURCELESS_UCODE} != "no" 783_lio= lio 784.endif 785_mana= mana 786_mgb= mgb 787_nctgpio= nctgpio 788_ncthwm= ncthwm 789_ntb= ntb 790_ocs_fc= ocs_fc 791_p2sb= p2sb 792_qat_c2xxx= qat_c2xxx 793_qat_c2xxxfw= qat_c2xxxfw 794_safe= safe 795_speaker= speaker 796_splash= splash 797_syscons= syscons 798_wbwd= wbwd 799_wdatwd= wdatwd 800 801_aac= aac 802_aacraid= aacraid 803_adlngpio= adlngpio 804.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 805_aesni= aesni 806.endif 807_amd_ecc_inject=amd_ecc_inject 808_amdsmu= amdsmu 809_amdsbwd= amdsbwd 810_amdsmn= amdsmn 811_amdtemp= amdtemp 812_arcmsr= arcmsr 813.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 814_blake2= blake2 815.endif 816_bytgpio= bytgpio 817_chvgpio= chvgpio 818_ciss= ciss 819_chromebook_platform= chromebook_platform 820_coreboot= coreboot 821_coretemp= coretemp 822.if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED) 823_hpt27xx= hpt27xx 824.endif 825_hptiop= hptiop 826.if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED) 827_hptmv= hptmv 828_hptnr= hptnr 829_hptrr= hptrr 830.endif 831_hyperv= hyperv 832_ichwd= ichwd 833_ida= ida 834_intelspi= intelspi 835_ips= ips 836_isci= isci 837_ipw= ipw 838_iwi= iwi 839_iwm= iwm 840_iwn= iwn 841.if ${MK_SOURCELESS_UCODE} != "no" 842_ipwfw= ipwfw 843_iwifw= iwifw 844_iwnfw= iwnfw 845.endif 846_nfe= nfe 847_nvram= nvram 848.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 849_padlock= padlock 850_padlock_rng= padlock_rng 851_rdrand_rng= rdrand_rng 852_rdseed_rng= rdseed_rng 853.endif 854_pchtherm = pchtherm 855_s3= s3 856_sdhci_acpi= sdhci_acpi 857_superio= superio 858_tglhgpio= tglhgpio 859_vesa= vesa 860_viawd= viawd 861_vmd= vmd 862_wpi= wpi 863.if ${MK_SOURCELESS_UCODE} != "no" 864_wpifw= wpifw 865.endif 866.if ${KERN_OPTS:MVIMAGE} 867_wtap= wtap 868.endif 869_x86bios= x86bios 870.endif 871 872.if ${MACHINE_CPUARCH} == "amd64" 873_amdgpio= amdgpio 874_apple_bce= apple_bce 875_asmc= asmc 876_ccp= ccp 877_enic= enic 878_iavf= iavf 879_ioat= ioat 880_iwx= iwx 881_ixl= ixl 882_nvdimm= nvdimm 883_pms= pms 884_pt= pt 885_qat= qat 886.if ${MK_SOURCELESS_UCODE} != "no" 887_qatfw= qatfw 888.endif 889_qlxge= qlxge 890_qlxgb= qlxgb 891_sume= sume 892.if ${MK_SOURCELESS_UCODE} != "no" 893_qlxgbe= qlxgbe 894_qlnx= qlnx 895.endif 896_sfxge= sfxge 897_sgx= sgx 898_sgx_linux= sgx_linux 899_smartpqi= smartpqi 900_p2sb= p2sb 901.endif 902 903.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" 904_hwt= hwt 905.endif 906 907.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 908 ${MACHINE_CPUARCH} == "riscv" 909.if ${MK_BHYVE} != "no" || defined(ALL_MODULES) 910.if ${KERN_OPTS:MSMP} 911_vmm= vmm 912.endif 913.endif 914.endif 915 916.if ${MACHINE_CPUARCH} == "i386" 917# XXX some of these can move to the general case when de-i386'ed 918# XXX some of these can move now, but are untested on other architectures. 919_3dfx= 3dfx 920_3dfx_linux= 3dfx_linux 921_glxiic= glxiic 922_glxsb= glxsb 923_pcfclock= pcfclock 924_pst= pst 925_sbni= sbni 926.endif 927 928.if ${MACHINE_ARCH} == "armv7" 929_cfi= cfi 930_cpsw= cpsw 931.endif 932 933.if ${MACHINE_CPUARCH} == "powerpc" 934_aacraid= aacraid 935_agp= agp 936_an= an 937_cardbus= cardbus 938_cbb= cbb 939_cfi= cfi 940_cpufreq= cpufreq 941_exca= exca 942_ffec= ffec 943.endif 944 945.if ${MACHINE_ARCH:Mpowerpc64*} != "" 946_nvram= opal_nvram 947.endif 948 949.if ${MACHINE_CPUARCH} == "powerpc" 950_nvram+= powermac_nvram 951.endif 952 953.if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "aarch64" 954_bcm283x_clkman= bcm283x_clkman 955_bcm283x_pwm= bcm283x_pwm 956_neta= neta 957.endif 958 959.if !(${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} < 110000) 960# LLVM 10 crashes when building if_malo_pci.c, fixed in LLVM11: 961# https://bugs.llvm.org/show_bug.cgi?id=44351 962_malo= malo 963.endif 964 965.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "aarch64" 966_ufshci=ufshci 967.endif 968 969SUBDIR+=${MODULES_EXTRA} 970 971.for reject in ${WITHOUT_MODULES} 972SUBDIR:= ${SUBDIR:N${reject}} 973.endfor 974 975.endif # MODULES_OVERRIDE -- Keep last 976 977# Calling kldxref(8) for each module is expensive. 978.if !defined(NO_XREF) 979.MAKEFLAGS+= -DNO_XREF 980afterinstall: .PHONY 981 ${KLDXREF_CMD} ${DESTDIR}${KMODDIR} 982.if defined(NO_ROOT) && defined(METALOG) 983 echo ".${DISTBASE}${KMODDIR}/linker.hints type=file uname=root gname=wheel mode=0644" | \ 984 cat -l >> ${METALOG} 985.endif 986.endif 987 988SUBDIR:= ${SUBDIR:u:O} 989 990.include <bsd.subdir.mk> 991