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 ${_an} \ 43 ${_aout} \ 44 ${_arcmsr} \ 45 ${_allwinner} \ 46 ${_armv8crypto} \ 47 ${_asmc} \ 48 ata \ 49 ath \ 50 ath_dfs \ 51 ath_hal \ 52 ath_hal_ar5210 \ 53 ath_hal_ar5211 \ 54 ath_hal_ar5212 \ 55 ath_hal_ar5416 \ 56 ath_hal_ar9300 \ 57 ath_main \ 58 ath_rate \ 59 ath_pci \ 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 ${_ce} \ 88 ${_cfi} \ 89 ${_chromebook_platform} \ 90 ${_ciss} \ 91 cloudabi \ 92 ${_cloudabi32} \ 93 ${_cloudabi64} \ 94 ${_coretemp} \ 95 ${_cp} \ 96 ${_cpsw} \ 97 ${_cpuctl} \ 98 ${_cpufreq} \ 99 ${_crypto} \ 100 ${_cryptodev} \ 101 ctl \ 102 ${_cxgb} \ 103 ${_cxgbe} \ 104 dc \ 105 dcons \ 106 dcons_crom \ 107 ${_dpdk_lpm4} \ 108 ${_dpdk_lpm6} \ 109 ${_dpms} \ 110 dummynet \ 111 ${_dwwdt} \ 112 ${_efirt} \ 113 ${_em} \ 114 ${_ena} \ 115 esp \ 116 ${_et} \ 117 evdev \ 118 ${_exca} \ 119 ext2fs \ 120 fdc \ 121 fdescfs \ 122 ${_ffec} \ 123 ${_fib_dxr} \ 124 filemon \ 125 firewire \ 126 firmware \ 127 ${_ftwd} \ 128 fusefs \ 129 ${_fxp} \ 130 gem \ 131 geom \ 132 ${_glxiic} \ 133 ${_glxsb} \ 134 gpio \ 135 hid \ 136 hifn \ 137 ${_hpt27xx} \ 138 ${_hptiop} \ 139 ${_hptmv} \ 140 ${_hptnr} \ 141 ${_hptrr} \ 142 hwpmc \ 143 ${_hwpmc_mips24k} \ 144 ${_hwpmc_mips74k} \ 145 ${_hyperv} \ 146 i2c \ 147 ${_iavf} \ 148 ${_ibcore} \ 149 ${_ichwd} \ 150 ${_ice} \ 151 ${_ice_ddp} \ 152 ${_ida} \ 153 if_bridge \ 154 if_disc \ 155 if_edsc \ 156 ${_if_enc} \ 157 if_epair \ 158 ${_if_gif} \ 159 ${_if_gre} \ 160 ${_if_me} \ 161 if_infiniband \ 162 if_lagg \ 163 ${_if_ndis} \ 164 ${_if_stf} \ 165 if_tuntap \ 166 if_vlan \ 167 if_vxlan \ 168 iflib \ 169 ${_igc} \ 170 ${_iir} \ 171 imgact_binmisc \ 172 ${_intelspi} \ 173 ${_io} \ 174 ${_ioat} \ 175 ${_ipoib} \ 176 ${_ipdivert} \ 177 ${_ipfilter} \ 178 ${_ipfw} \ 179 ipfw_nat \ 180 ${_ipfw_nat64} \ 181 ${_ipfw_nptv6} \ 182 ${_ipfw_pmod} \ 183 ${_ipmi} \ 184 ip6_mroute_mod \ 185 ip_mroute_mod \ 186 ${_ips} \ 187 ${_ipsec} \ 188 ${_ipw} \ 189 ${_ipwfw} \ 190 ${_isci} \ 191 ${_iser} \ 192 isp \ 193 ${_ispfw} \ 194 ${_itwd} \ 195 ${_iwi} \ 196 ${_iwifw} \ 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 ${_ktls_ocf} \ 212 le \ 213 lge \ 214 libalias \ 215 libiconv \ 216 libmchain \ 217 lindebugfs \ 218 linuxkpi \ 219 ${_lio} \ 220 lpt \ 221 mac_biba \ 222 mac_bsdextended \ 223 mac_ifoff \ 224 mac_lomac \ 225 mac_mls \ 226 mac_none \ 227 mac_ntpd \ 228 mac_partition \ 229 mac_portacl \ 230 mac_seeotheruids \ 231 mac_stub \ 232 mac_test \ 233 ${_malo} \ 234 md \ 235 mdio \ 236 mem \ 237 mfi \ 238 mii \ 239 mlx \ 240 mlxfw \ 241 ${_mlx4} \ 242 ${_mlx4ib} \ 243 ${_mlx4en} \ 244 ${_mlx5} \ 245 ${_mlx5en} \ 246 ${_mlx5ib} \ 247 ${_mly} \ 248 mmc \ 249 mmcsd \ 250 ${_mpr} \ 251 ${_mps} \ 252 mpt \ 253 mqueue \ 254 mrsas \ 255 msdosfs \ 256 msdosfs_iconv \ 257 msk \ 258 ${_mthca} \ 259 mvs \ 260 mwl \ 261 ${_mwlfw} \ 262 mxge \ 263 my \ 264 ${_nctgpio} \ 265 ${_ndis} \ 266 ${_netgraph} \ 267 ${_nfe} \ 268 nfscl \ 269 nfscommon \ 270 nfsd \ 271 nfslockd \ 272 nfssvc \ 273 nge \ 274 nmdm \ 275 nullfs \ 276 ${_ntb} \ 277 ${_nvd} \ 278 ${_nvdimm} \ 279 ${_nvme} \ 280 ${_nvram} \ 281 oce \ 282 ${_ocs_fc} \ 283 ${_ossl} \ 284 otus \ 285 ${_otusfw} \ 286 ow \ 287 ${_padlock} \ 288 ${_padlock_rng} \ 289 ${_pccard} \ 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 ${_sym} \ 363 ${_syscons} \ 364 sysvipc \ 365 tcp \ 366 ${_ti} \ 367 tmpfs \ 368 ${_toecore} \ 369 ${_tpm} \ 370 ${_twa} \ 371 twe \ 372 tws \ 373 uart \ 374 udf \ 375 udf_iconv \ 376 ufs \ 377 uinput \ 378 unionfs \ 379 usb \ 380 ${_vesa} \ 381 virtio \ 382 vge \ 383 ${_viawd} \ 384 videomode \ 385 vkbd \ 386 ${_vmd} \ 387 ${_vmm} \ 388 ${_vmware} \ 389 vr \ 390 vte \ 391 ${_wbwd} \ 392 wlan \ 393 wlan_acl \ 394 wlan_amrr \ 395 wlan_ccmp \ 396 wlan_rssadapt \ 397 wlan_tkip \ 398 wlan_wep \ 399 wlan_xauth \ 400 ${_wpi} \ 401 ${_wpifw} \ 402 ${_x86bios} \ 403 xdr \ 404 xl \ 405 xz \ 406 zlib 407 408.if ${MK_AUTOFS} != "no" || defined(ALL_MODULES) 409_autofs= autofs 410.endif 411 412.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 413.if (${MACHINE_CPUARCH} != "arm" || ${MACHINE_ARCH:Marmv[67]*} != "") && \ 414 ${MACHINE_CPUARCH} != "mips" 415.if ${KERN_OPTS:MKDTRACE_HOOKS} 416SUBDIR+= dtrace 417.endif 418.endif 419SUBDIR+= opensolaris 420.endif 421 422.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 423.if exists(${SRCTOP}/sys/opencrypto) 424_crypto= crypto 425_cryptodev= cryptodev 426_random_fortuna=random_fortuna 427_random_other= random_other 428_ktls_ocf= ktls_ocf 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_rockchip= rockchip 621.endif 622 623.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" 624_sdhci_fdt= sdhci_fdt 625.endif 626 627.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 628_agp= agp 629_an= an 630.if ${MACHINE_CPUARCH} == "i386" || !empty(COMPAT_FREEBSD32_ENABLED) 631_aout= aout 632.endif 633_bios= bios 634.if ${MK_SOURCELESS_UCODE} != "no" 635_bxe= bxe 636.endif 637_cardbus= cardbus 638_cbb= cbb 639_cpuctl= cpuctl 640_cpufreq= cpufreq 641_dpms= dpms 642_em= em 643_et= et 644_ftwd= ftwd 645_exca= exca 646_if_ndis= if_ndis 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_nctgpio= nctgpio 656_ndis= ndis 657_ntb= ntb 658_ocs_fc= ocs_fc 659_pccard= pccard 660_qat= qat 661_qatfw= qatfw 662.if ${MK_OFED} != "no" || defined(ALL_MODULES) 663_rdma= rdma 664.endif 665_safe= safe 666_speaker= speaker 667_splash= splash 668_sppp= sppp 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 763.if ${MK_BHYVE} != "no" || defined(ALL_MODULES) 764.if ${KERN_OPTS:MSMP} 765_vmm= vmm 766.endif 767.endif 768.endif 769 770.if ${MACHINE_CPUARCH} == "i386" 771# XXX some of these can move to the general case when de-i386'ed 772# XXX some of these can move now, but are untested on other architectures. 773_3dfx= 3dfx 774_3dfx_linux= 3dfx_linux 775.if ${MK_SOURCELESS_HOST} != "no" 776_ce= ce 777.endif 778.if ${MK_SOURCELESS_HOST} != "no" 779_cp= cp 780.endif 781_glxiic= glxiic 782_glxsb= glxsb 783_pcfclock= pcfclock 784_pst= pst 785_sbni= sbni 786.endif 787 788.if ${MACHINE_ARCH} == "armv7" 789_cfi= cfi 790_cpsw= cpsw 791.endif 792 793.if ${MACHINE_CPUARCH} == "powerpc" 794_aacraid= aacraid 795_agp= agp 796_an= an 797_cardbus= cardbus 798_cbb= cbb 799_cfi= cfi 800_cpufreq= cpufreq 801_exca= exca 802_ffec= ffec 803_nvd= nvd 804_nvme= nvme 805_pccard= pccard 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