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