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