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