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