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