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 ${_neta} \ 268 ${_netgraph} \ 269 ${_nfe} \ 270 nfscl \ 271 nfscommon \ 272 nfsd \ 273 nfslockd \ 274 nfssvc \ 275 nge \ 276 nmdm \ 277 nullfs \ 278 ${_ntb} \ 279 ${_nvd} \ 280 ${_nvdimm} \ 281 ${_nvme} \ 282 ${_nvram} \ 283 oce \ 284 ${_ocs_fc} \ 285 ${_ossl} \ 286 otus \ 287 ${_otusfw} \ 288 ow \ 289 ${_padlock} \ 290 ${_padlock_rng} \ 291 ${_pchtherm} \ 292 ${_pcfclock} \ 293 ${_pf} \ 294 ${_pflog} \ 295 ${_pfsync} \ 296 plip \ 297 ${_pms} \ 298 ppbus \ 299 ppc \ 300 ppi \ 301 pps \ 302 procfs \ 303 proto \ 304 pseudofs \ 305 ${_pst} \ 306 pty \ 307 puc \ 308 pwm \ 309 ${_qat} \ 310 ${_qatfw} \ 311 ${_qlxge} \ 312 ${_qlxgb} \ 313 ${_qlxgbe} \ 314 ${_qlnx} \ 315 ral \ 316 ${_ralfw} \ 317 ${_random_fortuna} \ 318 ${_random_other} \ 319 rc4 \ 320 ${_rdma} \ 321 ${_rdrand_rng} \ 322 re \ 323 rl \ 324 ${_rockchip} \ 325 rtsx \ 326 rtwn \ 327 rtwn_pci \ 328 rtwn_usb \ 329 ${_rtwnfw} \ 330 ${_s3} \ 331 ${_safe} \ 332 safexcel \ 333 ${_sbni} \ 334 scc \ 335 ${_sctp} \ 336 sdhci \ 337 ${_sdhci_acpi} \ 338 ${_sdhci_fdt} \ 339 sdhci_pci \ 340 sdio \ 341 sem \ 342 send \ 343 ${_sfxge} \ 344 sge \ 345 ${_sgx} \ 346 ${_sgx_linux} \ 347 siftr \ 348 siis \ 349 sis \ 350 sk \ 351 ${_smartpqi} \ 352 smbfs \ 353 snp \ 354 sound \ 355 ${_speaker} \ 356 spi \ 357 ${_splash} \ 358 ${_sppp} \ 359 ste \ 360 stge \ 361 ${_sume} \ 362 ${_superio} \ 363 ${_p2sb} \ 364 ${_sym} \ 365 ${_syscons} \ 366 sysvipc \ 367 tcp \ 368 ${_ti} \ 369 tmpfs \ 370 ${_toecore} \ 371 ${_tpm} \ 372 ${_twa} \ 373 twe \ 374 tws \ 375 uart \ 376 udf \ 377 udf_iconv \ 378 ufs \ 379 uinput \ 380 unionfs \ 381 usb \ 382 ${_vesa} \ 383 virtio \ 384 vge \ 385 ${_viawd} \ 386 videomode \ 387 vkbd \ 388 ${_vmd} \ 389 ${_vmm} \ 390 ${_vmware} \ 391 vr \ 392 vte \ 393 ${_wbwd} \ 394 wlan \ 395 wlan_acl \ 396 wlan_amrr \ 397 wlan_ccmp \ 398 wlan_rssadapt \ 399 wlan_tkip \ 400 wlan_wep \ 401 wlan_xauth \ 402 ${_wpi} \ 403 ${_wpifw} \ 404 ${_x86bios} \ 405 xdr \ 406 xl \ 407 xz \ 408 zlib 409 410.if ${MK_AUTOFS} != "no" || defined(ALL_MODULES) 411_autofs= autofs 412.endif 413 414.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 415.if (${MACHINE_CPUARCH} != "arm" || ${MACHINE_ARCH:Marmv[67]*} != "") && \ 416 ${MACHINE_CPUARCH} != "mips" 417.if ${KERN_OPTS:MKDTRACE_HOOKS} 418SUBDIR+= dtrace 419.endif 420.endif 421SUBDIR+= opensolaris 422.endif 423 424.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 425.if exists(${SRCTOP}/sys/opencrypto) 426_crypto= crypto 427_cryptodev= cryptodev 428_random_fortuna=random_fortuna 429_random_other= random_other 430.endif 431.endif 432 433.if ${MK_CUSE} != "no" || defined(ALL_MODULES) 434SUBDIR+= cuse 435.endif 436 437.if ${MK_EFI} != "no" 438.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" 439_efirt= efirt 440.endif 441.endif 442 443.if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \ 444 defined(ALL_MODULES) 445_carp= carp 446_toecore= toecore 447_if_enc= if_enc 448_if_gif= if_gif 449_if_gre= if_gre 450_ipfw_pmod= ipfw_pmod 451.if ${KERN_OPTS:MIPSEC_SUPPORT} && !${KERN_OPTS:MIPSEC} 452_ipsec= ipsec 453.endif 454.if ${KERN_OPTS:MSCTP_SUPPORT} || ${KERN_OPTS:MSCTP} 455_sctp= sctp 456.endif 457.endif 458 459.if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \ 460 defined(ALL_MODULES) 461_if_stf= if_stf 462.endif 463 464.if ${MK_INET_SUPPORT} != "no" || defined(ALL_MODULES) 465_if_me= if_me 466_ipdivert= ipdivert 467_ipfw= ipfw 468.if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES) 469_ipfw_nat64= ipfw_nat64 470.endif 471.endif 472 473.if ${MK_INET6_SUPPORT} != "no" || defined(ALL_MODULES) 474_ipfw_nptv6= ipfw_nptv6 475.endif 476 477.if ${MK_IPFILTER} != "no" || defined(ALL_MODULES) 478_ipfilter= ipfilter 479.endif 480 481.if ${MK_INET_SUPPORT} != "no" && ${KERN_OPTS:MFIB_ALGO} 482_dpdk_lpm4= dpdk_lpm4 483_fib_dxr= fib_dxr 484.endif 485 486.if ${MK_INET6_SUPPORT} != "no" && ${KERN_OPTS:MFIB_ALGO} 487_dpdk_lpm6= dpdk_lpm6 488.endif 489 490.if ${MK_ISCSI} != "no" || defined(ALL_MODULES) 491SUBDIR+= cfiscsi 492SUBDIR+= iscsi 493SUBDIR+= iscsi_initiator 494.endif 495 496.if !empty(OPT_FDT) 497SUBDIR+= fdt 498.endif 499 500# Linuxulator 501.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 502 ${MACHINE_CPUARCH} == "i386" 503SUBDIR+= linprocfs 504SUBDIR+= linsysfs 505.endif 506.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" 507SUBDIR+= linux 508.endif 509.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" 510SUBDIR+= linux64 511SUBDIR+= linux_common 512.endif 513 514.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 515 ${MACHINE_CPUARCH} == "i386" 516_ena= ena 517.if ${MK_OFED} != "no" || defined(ALL_MODULES) 518_ibcore= ibcore 519_ipoib= ipoib 520_iser= iser 521.endif 522_ipmi= ipmi 523_mlx4= mlx4 524_mlx5= mlx5 525.if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \ 526 defined(ALL_MODULES) 527_mlx4en= mlx4en 528_mlx5en= mlx5en 529.endif 530.if ${MK_OFED} != "no" || defined(ALL_MODULES) 531_mthca= mthca 532_mlx4ib= mlx4ib 533_mlx5ib= mlx5ib 534.endif 535_ossl= ossl 536_vmware= vmware 537.endif 538 539.if ${MK_NETGRAPH} != "no" || defined(ALL_MODULES) 540_netgraph= netgraph 541.endif 542 543.if (${MK_PF} != "no" && (${MK_INET_SUPPORT} != "no" || \ 544 ${MK_INET6_SUPPORT} != "no")) || defined(ALL_MODULES) 545_pf= pf 546_pflog= pflog 547.if ${MK_INET_SUPPORT} != "no" 548_pfsync= pfsync 549.endif 550.endif 551 552.if ${MK_SOURCELESS_UCODE} != "no" 553_bce= bce 554_fxp= fxp 555_ispfw= ispfw 556_ti= ti 557 558.if ${MACHINE_CPUARCH} != "mips" 559_mwlfw= mwlfw 560_otusfw= otusfw 561_ralfw= ralfw 562_rtwnfw= rtwnfw 563.endif 564.endif 565 566.if ${MK_SOURCELESS_UCODE} != "no" && ${MACHINE_CPUARCH} != "arm" && \ 567 ${MACHINE_CPUARCH} != "mips" && \ 568 ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "powerpcspe" && \ 569 ${MACHINE_CPUARCH} != "riscv" 570_cxgbe= cxgbe 571.endif 572 573.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "arm64" 574_ice= ice 575.if ${MK_SOURCELESS_UCODE} != "no" 576_ice_ddp= ice_ddp 577.endif 578.endif 579 580# These rely on 64bit atomics 581.if ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "powerpcspe" && \ 582 ${MACHINE_CPUARCH} != "mips" 583_mps= mps 584_mpr= mpr 585.endif 586 587.if ${MK_TESTS} != "no" || defined(ALL_MODULES) 588SUBDIR+= tests 589.endif 590 591.if ${MK_ZFS} != "no" || (defined(ALL_MODULES) && ${MACHINE_CPUARCH} != "powerpc") 592SUBDIR+= zfs 593.endif 594 595.if (${MACHINE_CPUARCH} == "mips" && ${MACHINE_ARCH:Mmips64} == "") 596_hwpmc_mips24k= hwpmc_mips24k 597_hwpmc_mips74k= hwpmc_mips74k 598.endif 599 600.if ${MACHINE_CPUARCH} != "aarch64" && ${MACHINE_CPUARCH} != "arm" && \ 601 ${MACHINE_CPUARCH} != "mips" && ${MACHINE_CPUARCH} != "powerpc" && \ 602 ${MACHINE_CPUARCH} != "riscv" 603_syscons= syscons 604.endif 605 606.if ${MACHINE_CPUARCH} != "mips" 607# no BUS_SPACE_UNSPECIFIED 608# No barrier instruction support (specific to this driver) 609_sym= sym 610# intr_disable() is a macro, causes problems 611.if ${MK_SOURCELESS_UCODE} != "no" 612_cxgb= cxgb 613.endif 614.endif 615 616.if ${MACHINE_CPUARCH} == "aarch64" 617_allwinner= allwinner 618_armv8crypto= armv8crypto 619_dwwdt= dwwdt 620_em= em 621_enetc= enetc 622_enetc_mdio= enetc_mdio 623_felix= felix 624_rockchip= rockchip 625.endif 626 627.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" 628_sdhci_fdt= sdhci_fdt 629_e6000sw= e6000sw 630_neta= neta 631.endif 632 633.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 634_agp= agp 635_aout= aout 636_bios= bios 637.if ${MK_SOURCELESS_UCODE} != "no" 638_bxe= bxe 639.endif 640_cardbus= cardbus 641_cbb= cbb 642_cpuctl= cpuctl 643_cpufreq= cpufreq 644_dpms= dpms 645_em= em 646_et= et 647_ftwd= ftwd 648_exca= exca 649_igc= igc 650_io= io 651_itwd= itwd 652_ix= ix 653_ixv= ixv 654.if ${MK_SOURCELESS_UCODE} != "no" 655_lio= lio 656.endif 657_mana= mana 658_nctgpio= nctgpio 659_ntb= ntb 660_ocs_fc= ocs_fc 661_qat= qat 662_qatfw= qatfw 663.if ${MK_OFED} != "no" || defined(ALL_MODULES) 664_rdma= rdma 665.endif 666_safe= safe 667_speaker= speaker 668_splash= splash 669_sppp= sppp 670_p2sb= p2sb 671_wbwd= wbwd 672 673_aac= aac 674_aacraid= aacraid 675_acpi= acpi 676.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 677_aesni= aesni 678.endif 679_amd_ecc_inject=amd_ecc_inject 680_amdsbwd= amdsbwd 681_amdsmn= amdsmn 682_amdtemp= amdtemp 683_arcmsr= arcmsr 684_asmc= asmc 685.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 686_blake2= blake2 687.endif 688_bytgpio= bytgpio 689_chvgpio= chvgpio 690_ciss= ciss 691_chromebook_platform= chromebook_platform 692_coretemp= coretemp 693.if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED) 694_hpt27xx= hpt27xx 695.endif 696_hptiop= hptiop 697.if ${MK_SOURCELESS_HOST} != "no" && empty(KCSAN_ENABLED) 698_hptmv= hptmv 699_hptnr= hptnr 700_hptrr= hptrr 701.endif 702_hyperv= hyperv 703_ichwd= ichwd 704_ida= ida 705_iir= iir 706_intelspi= intelspi 707_ips= ips 708_isci= isci 709_ipw= ipw 710_iwi= iwi 711_iwm= iwm 712_iwn= iwn 713.if ${MK_SOURCELESS_UCODE} != "no" 714_ipwfw= ipwfw 715_iwifw= iwifw 716_iwmfw= iwmfw 717_iwnfw= iwnfw 718.endif 719_mly= mly 720_nfe= nfe 721_nvd= nvd 722_nvme= nvme 723_nvram= nvram 724.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 725_padlock= padlock 726_padlock_rng= padlock_rng 727_rdrand_rng= rdrand_rng 728.endif 729_pchtherm = pchtherm 730_s3= s3 731_sdhci_acpi= sdhci_acpi 732_superio= superio 733_tpm= tpm 734_twa= twa 735_vesa= vesa 736_viawd= viawd 737_vmd= vmd 738_wpi= wpi 739.if ${MK_SOURCELESS_UCODE} != "no" 740_wpifw= wpifw 741.endif 742_x86bios= x86bios 743.endif 744 745.if ${MACHINE_CPUARCH} == "amd64" 746_amdgpio= amdgpio 747_ccp= ccp 748_iavf= iavf 749_ioat= ioat 750_ixl= ixl 751_nvdimm= nvdimm 752_pms= pms 753_qlxge= qlxge 754_qlxgb= qlxgb 755_sume= sume 756.if ${MK_SOURCELESS_UCODE} != "no" 757_qlxgbe= qlxgbe 758_qlnx= qlnx 759.endif 760_sfxge= sfxge 761_sgx= sgx 762_sgx_linux= sgx_linux 763_smartpqi= smartpqi 764_p2sb= p2sb 765 766.if ${MK_BHYVE} != "no" || defined(ALL_MODULES) 767.if ${KERN_OPTS:MSMP} 768_vmm= vmm 769.endif 770.endif 771.endif 772 773.if ${MACHINE_CPUARCH} == "i386" 774# XXX some of these can move to the general case when de-i386'ed 775# XXX some of these can move now, but are untested on other architectures. 776_3dfx= 3dfx 777_3dfx_linux= 3dfx_linux 778.if ${MK_SOURCELESS_HOST} != "no" 779_ce= ce 780.endif 781.if ${MK_SOURCELESS_HOST} != "no" 782_cp= cp 783.endif 784_glxiic= glxiic 785_glxsb= glxsb 786_pcfclock= pcfclock 787_pst= pst 788_sbni= sbni 789.endif 790 791.if ${MACHINE_ARCH} == "armv7" 792_cfi= cfi 793_cpsw= cpsw 794.endif 795 796.if ${MACHINE_CPUARCH} == "powerpc" 797_aacraid= aacraid 798_agp= agp 799_an= an 800_cardbus= cardbus 801_cbb= cbb 802_cfi= cfi 803_cpufreq= cpufreq 804_exca= exca 805_ffec= ffec 806_nvd= nvd 807_nvme= nvme 808.endif 809 810.if ${MACHINE_ARCH:Mpowerpc64*} != "" 811_ipmi= ipmi 812_ixl= ixl 813_nvram= opal_nvram 814.endif 815.if ${MACHINE_CPUARCH} == "powerpc" && ${MACHINE_ARCH} != "powerpcspe" 816# Don't build powermac_nvram for powerpcspe, it's never supported. 817_nvram+= powermac_nvram 818.endif 819 820.if (${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 821 ${MACHINE_ARCH:Marmv[67]*} != "" || ${MACHINE_CPUARCH} == "i386") 822_cloudabi32= cloudabi32 823.endif 824.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" 825_cloudabi64= cloudabi64 826.endif 827 828.endif 829 830.if ${MACHINE_ARCH:Marmv[67]*} != "" || ${MACHINE_CPUARCH} == "aarch64" 831_bcm283x_clkman= bcm283x_clkman 832_bcm283x_pwm= bcm283x_pwm 833.endif 834 835.if !(${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} < 110000) 836# LLVM 10 crashes when building if_malo_pci.c, fixed in LLVM11: 837# https://bugs.llvm.org/show_bug.cgi?id=44351 838_malo= malo 839.endif 840 841SUBDIR+=${MODULES_EXTRA} 842 843.for reject in ${WITHOUT_MODULES} 844SUBDIR:= ${SUBDIR:N${reject}} 845.endfor 846 847# Calling kldxref(8) for each module is expensive. 848.if !defined(NO_XREF) 849.MAKEFLAGS+= -DNO_XREF 850afterinstall: .PHONY 851 @if type kldxref >/dev/null 2>&1; then \ 852 ${ECHO} ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \ 853 ${KLDXREF_CMD} ${DESTDIR}${KMODDIR}; \ 854 fi 855.endif 856 857SUBDIR:= ${SUBDIR:u:O} 858 859.include <bsd.subdir.mk> 860