1# $FreeBSD$ 2 3.include <src.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 10SUBDIR= \ 11 ${_3dfx} \ 12 ${_3dfx_linux} \ 13 ${_aac} \ 14 ${_aacraid} \ 15 accf_data \ 16 accf_dns \ 17 accf_http \ 18 acl_nfs4 \ 19 acl_posix1e \ 20 ${_acpi} \ 21 ae \ 22 ${_aesni} \ 23 age \ 24 ${_agp} \ 25 aha \ 26 ${_ahb} \ 27 ahci \ 28 ${_aic} \ 29 aic7xxx \ 30 aio \ 31 alc \ 32 ale \ 33 alq \ 34 ${_amdsbwd} \ 35 ${_amdtemp} \ 36 amr \ 37 ${_an} \ 38 ${_aout} \ 39 ${_apm} \ 40 ${_arcmsr} \ 41 ${_arcnet} \ 42 ${_asmc} \ 43 ${_asr} \ 44 ata \ 45 ath \ 46 ath_pci \ 47 ${_auxio} \ 48 ${_bce} \ 49 bfe \ 50 bge \ 51 ${_bxe} \ 52 ${_bios} \ 53 ${_bktr} \ 54 ${_bm} \ 55 bridgestp \ 56 bwi \ 57 bwn \ 58 cam \ 59 ${_canbepm} \ 60 ${_canbus} \ 61 ${_cardbus} \ 62 ${_carp} \ 63 cas \ 64 ${_cbb} \ 65 cc \ 66 cd9660 \ 67 cd9660_iconv \ 68 ${_ce} \ 69 ${_cfi} \ 70 ${_ciss} \ 71 ${_cm} \ 72 ${_cmx} \ 73 ${_coff} \ 74 ${_coretemp} \ 75 ${_cp} \ 76 ${_cpsw} \ 77 ${_cpuctl} \ 78 ${_cpufreq} \ 79 ${_crypto} \ 80 ${_cryptodev} \ 81 ${_cs} \ 82 ${_ct} \ 83 ${_ctau} \ 84 ctl \ 85 cuse \ 86 ${_cxgb} \ 87 ${_cxgbe} \ 88 ${_cyclic} \ 89 dc \ 90 dcons \ 91 dcons_crom \ 92 de \ 93 ${_dpms} \ 94 ${_dpt} \ 95 ${_drm} \ 96 ${_drm2} \ 97 ${_dtrace} \ 98 dummynet \ 99 ${_ed} \ 100 ${_elink} \ 101 ${_em} \ 102 en \ 103 ${_ep} \ 104 ${_epic} \ 105 esp \ 106 ${_et} \ 107 ${_ex} \ 108 ${_exca} \ 109 ${_ext2fs} \ 110 ${_fatm} \ 111 fdc \ 112 fdescfs \ 113 ${_fe} \ 114 ${_filemon} \ 115 firewire \ 116 firmware \ 117 fuse \ 118 ${_fxp} \ 119 gem \ 120 geom \ 121 ${_glxiic} \ 122 ${_glxsb} \ 123 hatm \ 124 hifn \ 125 hme \ 126 ${_hpt27xx} \ 127 ${_hptiop} \ 128 ${_hptmv} \ 129 ${_hptnr} \ 130 ${_hptrr} \ 131 hwpmc \ 132 ${_hyperv} \ 133 ${_i2c} \ 134 ${_ibcore} \ 135 ${_ibcs2} \ 136 ${_ichwd} \ 137 ${_ida} \ 138 ${_ie} \ 139 if_bridge \ 140 if_disc \ 141 if_edsc \ 142 if_epair \ 143 if_faith \ 144 if_gif \ 145 ${_if_gre} \ 146 if_lagg \ 147 ${_if_ndis} \ 148 if_stf \ 149 if_tap \ 150 if_tun \ 151 if_vlan \ 152 ${_igb} \ 153 ${_iir} \ 154 imgact_binmisc \ 155 ${_io} \ 156 ${_ipoib} \ 157 ${_ipdivert} \ 158 ${_ipfilter} \ 159 ${_ipfw} \ 160 ipfw_nat \ 161 ${_ipmi} \ 162 ip6_mroute_mod \ 163 ip_mroute_mod \ 164 ${_ips} \ 165 ${_ipw} \ 166 ${_ipwfw} \ 167 ${_isci} \ 168 iscsi \ 169 iscsi_initiator \ 170 isp \ 171 ${_ispfw} \ 172 ${_iwi} \ 173 ${_iwifw} \ 174 ${_iwn} \ 175 ${_iwnfw} \ 176 ${_ixgb} \ 177 ${_ixgbe} \ 178 jme \ 179 joy \ 180 kbdmux \ 181 kgssapi \ 182 kgssapi_krb5 \ 183 khelp \ 184 krpc \ 185 ksyms \ 186 le \ 187 lge \ 188 libalias \ 189 libiconv \ 190 libmbpool \ 191 libmchain \ 192 ${_linprocfs} \ 193 ${_linsysfs} \ 194 ${_linux} \ 195 lmc \ 196 lpt \ 197 mac_biba \ 198 mac_bsdextended \ 199 mac_ifoff \ 200 mac_lomac \ 201 mac_mls \ 202 mac_none \ 203 mac_partition \ 204 mac_portacl \ 205 mac_seeotheruids \ 206 mac_stub \ 207 mac_test \ 208 malo \ 209 mcd \ 210 md \ 211 mem \ 212 mfi \ 213 mii \ 214 mlx \ 215 ${_mlx4} \ 216 ${_mlx4ib} \ 217 ${_mlxen} \ 218 ${_mly} \ 219 mmc \ 220 mmcsd \ 221 mpr \ 222 mps \ 223 mpt \ 224 mqueue \ 225 mrsas \ 226 msdosfs \ 227 msdosfs_iconv \ 228 ${_mse} \ 229 msk \ 230 ${_mthca} \ 231 mvs \ 232 mwl \ 233 ${_mwlfw} \ 234 mxge \ 235 my \ 236 ${_nandfs} \ 237 ${_nandsim} \ 238 ${_ncp} \ 239 ${_ncv} \ 240 ${_ndis} \ 241 netfpga10g \ 242 ${_netgraph} \ 243 ${_nfe} \ 244 nfs_common \ 245 nfscl \ 246 nfsclient \ 247 nfscommon \ 248 nfsd \ 249 nfslock \ 250 nfslockd \ 251 nfsserver \ 252 nfssvc \ 253 nge \ 254 nmdm \ 255 ${_nsp} \ 256 nullfs \ 257 ${_ntb} \ 258 ${_nvd} \ 259 ${_nvme} \ 260 ${_nvram} \ 261 ${_nxge} \ 262 ${_opensolaris} \ 263 oce \ 264 ${_padlock} \ 265 patm \ 266 ${_pccard} \ 267 ${_pcfclock} \ 268 pcn \ 269 ${_pf} \ 270 ${_pflog} \ 271 ${_pfsync} \ 272 plip \ 273 ${_pmc} \ 274 ppbus \ 275 ppc \ 276 ppi \ 277 pps \ 278 procfs \ 279 proto \ 280 pseudofs \ 281 ${_pst} \ 282 pty \ 283 puc \ 284 ${_qlxge} \ 285 ${_qlxgb} \ 286 ${_qlxgbe} \ 287 ral \ 288 ${_ralfw} \ 289 ${_random} \ 290 rc4 \ 291 ${_rdma} \ 292 re \ 293 reiserfs \ 294 rl \ 295 ${_s3} \ 296 ${_safe} \ 297 ${_sbni} \ 298 scc \ 299 scd \ 300 ${_scsi_low} \ 301 sdhci \ 302 sdhci_pci \ 303 sem \ 304 send \ 305 ${_sf} \ 306 ${_sfxge} \ 307 sge \ 308 siba_bwn \ 309 siftr \ 310 siis \ 311 sis \ 312 sk \ 313 ${_smbfs} \ 314 ${_sn} \ 315 ${_snc} \ 316 snp \ 317 ${_sound} \ 318 ${_speaker} \ 319 ${_splash} \ 320 ${_sppp} \ 321 ste \ 322 ${_stg} \ 323 stge \ 324 ${_streams} \ 325 ${_svr4} \ 326 ${_sym} \ 327 ${_syscons} \ 328 sysvipc \ 329 ${_ti} \ 330 tl \ 331 tmpfs \ 332 ${_toecore} \ 333 ${_tpm} \ 334 trm \ 335 ${_twa} \ 336 twe \ 337 tws \ 338 tx \ 339 ${_txp} \ 340 uart \ 341 ubsec \ 342 udf \ 343 udf_iconv \ 344 ufs \ 345 unionfs \ 346 usb \ 347 utopia \ 348 ${_vesa} \ 349 ${_virtio} \ 350 vge \ 351 ${_viawd} \ 352 vkbd \ 353 ${_vmm} \ 354 ${_vmware} \ 355 ${_vpo} \ 356 vr \ 357 vte \ 358 vx \ 359 ${_vxge} \ 360 wb \ 361 ${_wbwd} \ 362 ${_wi} \ 363 wlan \ 364 wlan_acl \ 365 wlan_amrr \ 366 wlan_ccmp \ 367 wlan_rssadapt \ 368 wlan_tkip \ 369 wlan_wep \ 370 wlan_xauth \ 371 ${_wpi} \ 372 ${_wpifw} \ 373 ${_x86bios} \ 374 ${_xe} \ 375 xl \ 376 ${_zfs} \ 377 zlib \ 378 379.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 380_filemon= filemon 381_vmware= vmware 382.endif 383 384.if ${MACHINE_CPUARCH} != "powerpc" && ${MACHINE_CPUARCH} != "arm" && \ 385 ${MACHINE_CPUARCH} != "mips" 386_syscons= syscons 387_vpo= vpo 388.endif 389 390.if ${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "mips" 391# no BUS_SPACE_UNSPECIFIED 392# No barrier instruction support (specific to this driver) 393_sym= sym 394# intr_disable() is a macro, causes problems 395.if ${MK_SOURCELESS_UCODE} != "no" 396_cxgb= cxgb 397.endif 398.endif 399 400.if ${MK_SOURCELESS_UCODE} != "no" 401_cxgbe= cxgbe 402.endif 403 404.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 405.if exists(${.CURDIR}/../opencrypto) 406_crypto= crypto 407_cryptodev= cryptodev 408.endif 409.if exists(${.CURDIR}/../crypto) 410_random= random 411.endif 412.endif 413 414.if (${MK_INET_SUPPORT} != "no" || ${MK_INET6_SUPPORT} != "no") || \ 415 defined(ALL_MODULES) 416_carp= carp 417_toecore= toecore 418.endif 419 420.if ${MK_INET_SUPPORT} != "no" || defined(ALL_MODULES) 421_if_gre= if_gre 422.endif 423 424.if ${MK_IPFILTER} != "no" || defined(ALL_MODULES) 425_ipfilter= ipfilter 426.endif 427 428.if ${MK_INET_SUPPORT} != "no" || defined(ALL_MODULES) 429_ipdivert= ipdivert 430_ipfw= ipfw 431.endif 432 433.if ${MK_NAND} != "no" || defined(ALL_MODULES) 434_nandfs= nandfs 435_nandsim= nandsim 436.endif 437 438.if ${MK_NETGRAPH} != "no" || defined(ALL_MODULES) 439_netgraph= netgraph 440.endif 441 442.if (${MK_PF} != "no" && (${MK_INET_SUPPORT} != "no" || \ 443 ${MK_INET6_SUPPORT} != "no")) || defined(ALL_MODULES) 444_pf= pf 445_pflog= pflog 446.if ${MK_INET_SUPPORT} != "no" 447_pfsync= pfsync 448.endif 449.endif 450 451.if ${MK_SOURCELESS_UCODE} != "no" 452_bce= bce 453_fatm= fatm 454_fxp= fxp 455_ispfw= ispfw 456_mwlfw= mwlfw 457_ralfw= ralfw 458_sf= sf 459_sn= sn 460_ti= ti 461_txp= txp 462.endif 463 464.if ${MACHINE_CPUARCH} == "i386" 465# XXX some of these can move to the general case when de-i386'ed 466# XXX some of these can move now, but are untested on other architectures. 467_3dfx= 3dfx 468_3dfx_linux= 3dfx_linux 469_agp= agp 470_aic= aic 471_an= an 472_aout= aout 473_apm= apm 474_arcnet= arcnet 475_bktr= bktr 476_bxe= bxe 477_cardbus= cardbus 478_cbb= cbb 479.if ${MK_SOURCELESS_UCODE} != "no" 480_ce= ce 481.endif 482_coff= coff 483.if ${MK_SOURCELESS_UCODE} != "no" 484_cp= cp 485.endif 486_cpuctl= cpuctl 487_cpufreq= cpufreq 488_cs= cs 489.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 490_cyclic= cyclic 491.endif 492_dpms= dpms 493_drm= drm 494_drm2= drm2 495.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 496_dtrace= dtrace 497.endif 498_ed= ed 499_elink= elink 500_em= em 501_ep= ep 502_et= et 503_exca= exca 504_ext2fs= ext2fs 505_fe= fe 506_glxiic= glxiic 507_glxsb= glxsb 508_i2c= i2c 509.if ${MK_OFED} != "no" || defined(ALL_MODULES) 510_ibcore= ibcore 511.endif 512_ibcs2= ibcs2 513_ie= ie 514_if_ndis= if_ndis 515_igb= igb 516_io= io 517.if ${MK_OFED} != "no" || defined(ALL_MODULES) 518_ipoib= ipoib 519.endif 520_linprocfs= linprocfs 521_linsysfs= linsysfs 522_linux= linux 523_mse= mse 524.if ${MK_OFED} != "no" || defined(ALL_MODULES) 525_mlx4= mlx4 526_mlx4ib= mlx4ib 527_mlxen= mlxen 528_mthca= mthca 529.endif 530_ncv= ncv 531_ndis= ndis 532_nsp= nsp 533.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 534_opensolaris= opensolaris 535.endif 536_pccard= pccard 537_pcfclock= pcfclock 538_pst= pst 539.if ${MK_OFED} != "no" || defined(ALL_MODULES) 540_rdma= rdma 541.endif 542_safe= safe 543_sbni= sbni 544_scsi_low= scsi_low 545_smbfs= smbfs 546_sound= sound 547_speaker= speaker 548_splash= splash 549_sppp= sppp 550_stg= stg 551_streams= streams 552_svr4= svr4 553_vxge= vxge 554_wbwd= wbwd 555_wi= wi 556_xe= xe 557.if ${MK_ZFS} != "no" || defined(ALL_MODULES) 558_zfs= zfs 559.endif 560.if ${MACHINE} == "i386" 561_aac= aac 562_aacraid= aacraid 563_acpi= acpi 564.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 565_aesni= aesni 566.endif 567.if ${MK_EISA} != "no" 568_ahb= ahb 569.endif 570_amdsbwd= amdsbwd 571_amdtemp= amdtemp 572_arcmsr= arcmsr 573_asmc= asmc 574_asr= asr 575_bios= bios 576_ciss= ciss 577_cm= cm 578_cmx= cmx 579_coretemp= coretemp 580.if ${MK_SOURCELESS_UCODE} != "no" 581_ctau= ctau 582.endif 583_dpt= dpt 584_ex= ex 585.if ${MK_SOURCELESS_HOST} != "no" 586_hpt27xx= hpt27xx 587.endif 588_hptiop= hptiop 589.if ${MK_SOURCELESS_HOST} != "no" 590_hptmv= hptmv 591_hptnr= hptnr 592_hptrr= hptrr 593.endif 594_hyperv= hyperv 595_ichwd= ichwd 596_ida= ida 597_iir= iir 598_ipmi= ipmi 599_ips= ips 600_ipw= ipw 601.if ${MK_SOURCELESS_UCODE} != "no" 602_ipwfw= ipwfw 603.endif 604_isci= isci 605_iwi= iwi 606.if ${MK_SOURCELESS_UCODE} != "no" 607_iwifw= iwifw 608.endif 609_iwn= iwn 610.if ${MK_SOURCELESS_UCODE} != "no" 611_iwnfw= iwnfw 612.endif 613_ixgb= ixgb 614_ixgbe= ixgbe 615_mly= mly 616_nfe= nfe 617_nvd= nvd 618_nvme= nvme 619_nvram= nvram 620_nxge= nxge 621_tpm= tpm 622_viawd= viawd 623_wpi= wpi 624.if ${MK_SOURCELESS_UCODE} != "no" 625_wpifw= wpifw 626.endif 627.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 628_padlock= padlock 629.endif 630_s3= s3 631_twa= twa 632_vesa= vesa 633_virtio= virtio 634_x86bios= x86bios 635.elif ${MACHINE} == "pc98" 636_canbepm= canbepm 637_canbus= canbus 638_ct= ct 639_pmc= pmc 640_snc= snc 641.endif 642.endif 643 644.if ${MACHINE_CPUARCH} == "amd64" 645_aac= aac 646_aacraid= aacraid 647_aout= aout 648_acpi= acpi 649.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 650_aesni= aesni 651.endif 652_agp= agp 653_an= an 654_amdsbwd= amdsbwd 655_amdtemp= amdtemp 656_arcmsr= arcmsr 657_asmc= asmc 658_bktr= bktr 659_bxe= bxe 660_cardbus= cardbus 661_cbb= cbb 662_cmx= cmx 663_ciss= ciss 664_coretemp= coretemp 665_cpuctl= cpuctl 666_cpufreq= cpufreq 667.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 668_cyclic= cyclic 669.endif 670_dpms= dpms 671_drm= drm 672_drm2= drm2 673.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 674_dtrace= dtrace 675.endif 676_ed= ed 677_et= et 678_em= em 679_exca= exca 680_ext2fs= ext2fs 681.if ${MK_SOURCELESS_HOST} != "no" 682_hpt27xx= hpt27xx 683.endif 684_hptiop= hptiop 685.if ${MK_SOURCELESS_HOST} != "no" 686_hptmv= hptmv 687_hptnr= hptnr 688_hptrr= hptrr 689.endif 690_hyperv= hyperv 691_i2c= i2c 692.if ${MK_OFED} != "no" || defined(ALL_MODULES) 693_ibcore= ibcore 694.endif 695_ichwd= ichwd 696_ida= ida 697_if_ndis= if_ndis 698_igb= igb 699_iir= iir 700_io= io 701_ipmi= ipmi 702.if ${MK_OFED} != "no" || defined(ALL_MODULES) 703_ipoib= ipoib 704.endif 705_ips= ips 706_ipw= ipw 707.if ${MK_SOURCELESS_UCODE} != "no" 708_ipwfw= ipwfw 709.endif 710_isci= isci 711_iwi= iwi 712.if ${MK_SOURCELESS_UCODE} != "no" 713_iwifw= iwifw 714.endif 715_iwn= iwn 716.if ${MK_SOURCELESS_UCODE} != "no" 717_iwnfw= iwnfw 718.endif 719_ixgb= ixgb 720_ixgbe= ixgbe 721_linprocfs= linprocfs 722_linsysfs= linsysfs 723_linux= linux 724_mly= mly 725.if ${MK_OFED} != "no" || defined(ALL_MODULES) 726_mlx4= mlx4 727_mlx4ib= mlx4ib 728_mlxen= mlxen 729_mthca= mthca 730.endif 731_ndis= ndis 732_nfe= nfe 733_ntb= ntb 734_nvd= nvd 735_nvme= nvme 736_nvram= nvram 737_nxge= nxge 738.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 739_opensolaris= opensolaris 740.endif 741.if ${MK_CRYPT} != "no" || defined(ALL_MODULES) 742_padlock= padlock 743.endif 744_pccard= pccard 745_qlxge= qlxge 746_qlxgb= qlxgb 747_qlxgbe= qlxgbe 748.if ${MK_OFED} != "no" || defined(ALL_MODULES) 749_rdma= rdma 750.endif 751_s3= s3 752_safe= safe 753_scsi_low= scsi_low 754_sfxge= sfxge 755_smbfs= smbfs 756_sound= sound 757_speaker= speaker 758_splash= splash 759_sppp= sppp 760_tpm= tpm 761_twa= twa 762_vesa= vesa 763_viawd= viawd 764_virtio= virtio 765_vmm= vmm 766_vxge= vxge 767_x86bios= x86bios 768_wbwd= wbwd 769_wi= wi 770_wpi= wpi 771.if ${MK_SOURCELESS_UCODE} != "no" 772_wpifw= wpifw 773.endif 774.if ${MK_ZFS} != "no" || defined(ALL_MODULES) 775_zfs= zfs 776.endif 777.endif 778 779.if ${MACHINE_CPUARCH} == "arm" 780_cfi= cfi 781_cpsw= cpsw 782_sound= sound 783.endif 784 785.if ${MACHINE_CPUARCH} == "powerpc" 786_agp= agp 787_an= an 788_bm= bm 789_cardbus= cardbus 790_cbb= cbb 791_cfi= cfi 792_cpufreq= cpufreq 793.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 794_cyclic= cyclic 795.endif 796_drm= drm 797.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 798_dtrace= dtrace 799.endif 800_exca= exca 801_nvram= powermac_nvram 802_pccard= pccard 803_smbfs= smbfs 804_sound= sound 805.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 806_opensolaris= opensolaris 807.endif 808_wi= wi 809.endif 810 811.if ${MACHINE_ARCH} == "powerpc64" 812.if ${MK_ZFS} != "no" || defined(ALL_MODULES) 813_zfs= zfs 814.endif 815.endif 816 817.if ${MACHINE_CPUARCH} == "sparc64" 818_auxio= auxio 819_em= em 820_epic= epic 821_i2c= i2c 822_igb= igb 823.if ${MK_CDDL} != "no" || defined(ALL_MODULES) 824_opensolaris= opensolaris 825.endif 826_smbfs= smbfs 827_sound= sound 828.if ${MK_ZFS} != "no" || defined(ALL_MODULES) 829_zfs= zfs 830.endif 831.endif 832 833.if defined(MODULES_OVERRIDE) && !defined(ALL_MODULES) 834SUBDIR=${MODULES_OVERRIDE} 835.endif 836 837.for reject in ${WITHOUT_MODULES} 838SUBDIR:= ${SUBDIR:N${reject}} 839.endfor 840 841# Calling kldxref(8) for each module is expensive. 842.if !defined(NO_XREF) 843.MAKEFLAGS+= -DNO_XREF 844afterinstall: 845 @if type kldxref >/dev/null 2>&1; then \ 846 ${ECHO} kldxref ${DESTDIR}${KMODDIR}; \ 847 kldxref ${DESTDIR}${KMODDIR}; \ 848 fi 849.endif 850 851.include <bsd.subdir.mk> 852