1 # $NetBSD: Makefile,v 1.202.2.41 2018/11/26 11:21:15 pgoyette Exp $ 2 3 .include <bsd.own.mk> 4 5 # For all platforms 6 7 # Modules for compatability with earlier versions of NetBSD 8 9 SUBDIR+= compat_util 10 SUBDIR+= compat_43 compat_sysctl_09_43 11 SUBDIR+= compat_09 compat_10 compat_12 compat_13 compat_14 12 SUBDIR+= compat_16 compat_20 compat_30 compat_40 compat_50 13 SUBDIR+= compat_60 compat_70 compat_80 14 15 SUBDIR+= compat_sysv_10 compat_sysv_14 compat_sysv_50 16 17 SUBDIR+= compat_raid_50 18 SUBDIR+= compat_raid_80 19 20 SUBDIR+= compat_crypto_50 21 22 SUBDIR+= accf_dataready 23 SUBDIR+= accf_httpready 24 SUBDIR+= adosfs 25 SUBDIR+= aio 26 SUBDIR+= audio 27 SUBDIR+= autofs 28 SUBDIR+= blowfish 29 SUBDIR+= bpf 30 SUBDIR+= bpf_filter 31 SUBDIR+= bufq_disksort 32 SUBDIR+= bufq_fcfs 33 SUBDIR+= bufq_priocscan 34 SUBDIR+= bufq_readprio 35 SUBDIR+= camellia 36 SUBDIR+= cast128 37 SUBDIR+= ccd 38 SUBDIR+= cd9660 39 SUBDIR+= cgd 40 SUBDIR+= chfs 41 SUBDIR+= clockctl 42 SUBDIR+= compat_ossaudio 43 SUBDIR+= crypto 44 SUBDIR+= coda 45 SUBDIR+= coda5 46 SUBDIR+= coredump 47 SUBDIR+= dbcool 48 SUBDIR+= des 49 SUBDIR+= dk_subr 50 SUBDIR+= drvctl 51 SUBDIR+= efs 52 SUBDIR+= ext2fs 53 SUBDIR+= exec_script 54 SUBDIR+= fdesc 55 SUBDIR+= ffs 56 SUBDIR+= filecore 57 SUBDIR+= filemon 58 SUBDIR+= flash 59 SUBDIR+= fss 60 SUBDIR+= gpio 61 SUBDIR+= gpioiic 62 SUBDIR+= gpioow 63 SUBDIR+= gpiosim 64 SUBDIR+= gpioirq 65 SUBDIR+= gpiopps 66 SUBDIR+= hfs 67 SUBDIR+= hythygtemp 68 SUBDIR+= si70xxtemp 69 SUBDIR+= am2315temp 70 SUBDIR+= i2cexec 71 SUBDIR+= i2c_bitbang 72 SUBDIR+= if_agr 73 SUBDIR+= if_axe 74 SUBDIR+= if_axen 75 SUBDIR+= if_faith 76 SUBDIR+= if_gif 77 SUBDIR+= if_gre 78 SUBDIR+= if_l2tp 79 SUBDIR+= if_loop 80 SUBDIR+= if_mpls 81 SUBDIR+= if_mue 82 SUBDIR+= if_npflog 83 SUBDIR+= if_ppp 84 SUBDIR+= if_pppoe 85 SUBDIR+= if_sl 86 SUBDIR+= if_smsc 87 SUBDIR+= if_srt 88 SUBDIR+= if_stf 89 SUBDIR+= if_strip 90 SUBDIR+= if_tun tun 91 SUBDIR+= if_vlan 92 SUBDIR+= iic 93 SUBDIR+= ip_ecn 94 SUBDIR+= ipl 95 SUBDIR+= kernfs 96 SUBDIR+= layerfs 97 SUBDIR+= lfs 98 SUBDIR+= lua 99 SUBDIR+= luasystm 100 SUBDIR+= luapmf 101 SUBDIR+= mfs 102 SUBDIR+= midi 103 SUBDIR+= miiverbose 104 SUBDIR+= miniroot 105 SUBDIR+= mqueue 106 SUBDIR+= msdos 107 SUBDIR+= nand 108 SUBDIR+= nandemulator 109 SUBDIR+= nfs 110 SUBDIR+= nfsserver 111 SUBDIR+= nilfs 112 SUBDIR+= npf 113 SUBDIR+= npf_alg_icmp 114 SUBDIR+= npf_ext_log 115 SUBDIR+= npf_ext_normalize 116 SUBDIR+= npf_ext_rndblock 117 SUBDIR+= ntfs 118 SUBDIR+= null 119 SUBDIR+= onewire 120 SUBDIR+= opencrypto 121 SUBDIR+= overlay 122 SUBDIR+= pciverbose 123 SUBDIR+= pf 124 SUBDIR+= ppp_bsdcomp 125 SUBDIR+= ppp_deflate 126 SUBDIR+= procfs 127 SUBDIR+= ptrace 128 SUBDIR+= ptrace_common 129 SUBDIR+= ptyfs 130 SUBDIR+= puffs 131 SUBDIR+= putter 132 SUBDIR+= raid 133 SUBDIR+= scsiverbose 134 SUBDIR+= sdtemp 135 SUBDIR+= secmodel_bsd44 136 SUBDIR+= secmodel_extensions 137 SUBDIR+= secmodel_overlay 138 SUBDIR+= securelevel 139 SUBDIR+= sequencer 140 SUBDIR+= skipjack 141 SUBDIR+= slcompress 142 SUBDIR+= smbfs 143 SUBDIR+= spdmem 144 SUBDIR+= spkr 145 SUBDIR+= sppp_subr 146 SUBDIR+= sysmon 147 SUBDIR+= sysmon_envsys 148 SUBDIR+= sysmon_power 149 SUBDIR+= sysmon_taskq 150 SUBDIR+= sysmon_wdog 151 SUBDIR+= sysvbfs 152 SUBDIR+= sysv_ipc 153 SUBDIR+= suser 154 SUBDIR+= swcrypto 155 SUBDIR+= swsensor 156 SUBDIR+= swwdog 157 SUBDIR+= tmpfs 158 SUBDIR+= ualea 159 SUBDIR+= uatp 160 SUBDIR+= udf 161 SUBDIR+= umap 162 SUBDIR+= union 163 SUBDIR+= usbverbose 164 SUBDIR+= vcoda 165 SUBDIR+= v7fs 166 SUBDIR+= vnd 167 SUBDIR+= wapbl 168 SUBDIR+= wsbell 169 SUBDIR+= zlib 170 SUBDIR+= tprof 171 .if (defined(NOTYET)) 172 SUBDIR+= hifn # Builds on architectures with PCI bus 173 SUBDIR+= unionfs 174 .endif 175 .if ${MKBINUTILS} != "no" 176 SUBDIR+= xldscripts 177 .endif 178 179 # Machine dependent section 180 .if ${MACHINE_ARCH} == "i386" || \ 181 ${MACHINE_CPU} == "m68k" 182 SUBDIR+= exec_aout 183 .endif 184 185 .if ${MACHINE_ARCH} != "alpha" && \ 186 ${MACHINE_CPU} != "aarch64" && \ 187 ${MACHINE_ARCH} != "ia64" 188 SUBDIR+= exec_elf32 189 .endif 190 191 .if ${MACHINE_CPU} == "aarch64" || \ 192 ${MACHINE_ARCH} == "alpha" || \ 193 ${MACHINE_ARCH} == "ia64" || \ 194 ${MACHINE_ARCH} == "sparc64" || \ 195 ${MACHINE_ARCH} == "x86_64" 196 SUBDIR+= exec_elf64 197 .endif 198 199 .if ${MACHINE_ARCH} == "i386" || \ 200 ${MACHINE_ARCH} == "x86_64" 201 SUBDIR+= amdsmn 202 SUBDIR+= amdtemp 203 SUBDIR+= amdzentemp 204 SUBDIR+= coretemp 205 SUBDIR+= est 206 SUBDIR+= hdafg 207 SUBDIR+= hdaudio 208 SUBDIR+= hdaudio_pci 209 SUBDIR+= hdaudioverbose 210 SUBDIR+= hpet 211 SUBDIR+= ichsmb 212 SUBDIR+= odcm 213 SUBDIR+= powernow 214 SUBDIR+= tco 215 SUBDIR+= tprof_x86 216 SUBDIR+= vmt 217 .endif 218 219 .if ${MACHINE_ARCH} == "x86_64" 220 SUBDIR+= nvmm 221 .endif 222 223 .if ${MACHINE_ARCH} == "i386" || \ 224 ${MACHINE_ARCH} == "x86_64" 225 SUBDIR+= ubsec # Builds on architectures with PCI bus 226 .endif 227 228 .if ${MKSLJIT} != "no" 229 # No modules for arm, mips and powerpc yet. 230 .if ${MACHINE_ARCH} == "i386" || \ 231 ${MACHINE_ARCH} == "x86_64" || \ 232 ${MACHINE_ARCH} == "sparc" 233 SUBDIR+= bpfjit 234 SUBDIR+= sljit 235 .endif 236 .endif 237 238 # 239 # ACPI modules 240 # 241 .if ${MACHINE_ARCH} == "i386" || \ 242 ${MACHINE_ARCH} == "ia64" || \ 243 ${MACHINE_ARCH} == "x86_64" 244 SUBDIR+= acpiverbose 245 .endif 246 247 .if ${MACHINE_ARCH} == "i386" || \ 248 ${MACHINE_ARCH} == "x86_64" 249 SUBDIR+= acpiacad 250 SUBDIR+= acpibat 251 SUBDIR+= acpibut 252 SUBDIR+= acpicpu 253 SUBDIR+= acpidalb 254 SUBDIR+= acpifan 255 SUBDIR+= acpilid 256 SUBDIR+= acpipmtr 257 SUBDIR+= acpitz 258 SUBDIR+= acpivga 259 SUBDIR+= acpiwdrt 260 SUBDIR+= acpiwmi 261 SUBDIR+= aibs 262 SUBDIR+= asus 263 SUBDIR+= fujbp 264 SUBDIR+= fujhk 265 SUBDIR+= hpacel 266 SUBDIR+= hpqlb 267 SUBDIR+= thinkpad 268 SUBDIR+= wmidell 269 SUBDIR+= wmieeepc 270 SUBDIR+= wmihp 271 SUBDIR+= wmimsi 272 .endif 273 274 .if ${MACHINE_ARCH} == "x86_64" \ 275 || ${MACHINE_CPU} == "arm" \ 276 || (!empty(MACHINE_ARCH:Mmips64*) && !defined(BSD_MK_COMPAT_FILE)) 277 SUBDIR+= compat_netbsd32 278 SUBDIR+= compat_netbsd32_09 compat_netbsd32_12 279 SUBDIR+= compat_netbsd32_13 compat_netbsd32_16 280 SUBDIR+= compat_netbsd32_20 compat_netbsd32_30 281 SUBDIR+= compat_netbsd32_40 compat_netbsd32_50 282 SUBDIR+= compat_netbsd32_60 compat_netbsd32_80 283 SUBDIR+= compat_netbsd32_43 284 SUBDIR+= compat_netbsd32_mqueue 285 SUBDIR+= compat_netbsd32_nfssrv 286 SUBDIR+= compat_netbsd32_ptrace 287 SUBDIR+= compat_netbsd32_sysvipc 288 SUBDIR+= compat_netbsd32_sysvipc_10 289 SUBDIR+= compat_netbsd32_sysvipc_14 290 SUBDIR+= compat_netbsd32_sysvipc_50 291 .endif 292 293 .if ${MACHINE_ARCH} == "x86_64" 294 SUBDIR+= compat_linux32 295 .endif 296 297 .if ${MACHINE_ARCH} == "i386" 298 SUBDIR+= ati_pcigart 299 SUBDIR+= compat_freebsd 300 SUBDIR+= mach64drm 301 SUBDIR+= mgadrm 302 SUBDIR+= nsclpcsio 303 SUBDIR+= padlock 304 SUBDIR+= r128drm 305 SUBDIR+= radeondrm 306 SUBDIR+= savagedrm 307 SUBDIR+= sisdrm 308 SUBDIR+= tdfxdrm 309 SUBDIR+= viac7temp 310 SUBDIR+= viadrmums 311 .endif 312 313 .if ${MACHINE_ARCH} == "i386" || \ 314 ${MACHINE_ARCH} == "x86_64" 315 SUBDIR+= azalia 316 SUBDIR+= compat_linux 317 SUBDIR+= drm 318 SUBDIR+= drmkms 319 SUBDIR+= drmkms_agp 320 SUBDIR+= drmkms_linux 321 SUBDIR+= drmkms_pci 322 SUBDIR+= i915drm 323 SUBDIR+= i915drmkms 324 SUBDIR+= pad 325 # 326 # ISA modules 327 # 328 SUBDIR+= aps 329 SUBDIR+= finsio 330 SUBDIR+= itesio 331 SUBDIR+= lm 332 SUBDIR+= lm_isa 333 SUBDIR+= lm_isa_common 334 SUBDIR+= lm_wbsio 335 SUBDIR+= wbsio 336 .endif 337 338 .if ${MACHINE_CPU} == "m68k" 339 SUBDIR+= compat_aoutm68k 340 #SUBDIR+= compat_linux 341 #SUBDIR+= compat_sunos 342 #SUBDIR+= compat_svr4 343 .endif 344 345 .if ${MACHINE_ARCH} == "i386" || \ 346 ${MACHINE_ARCH} == "x86_64" || \ 347 ${MACHINE_ARCH} == "sparc64" 348 SUBDIR+= pwdog 349 .endif 350 351 .include <bsd.own.mk> 352 353 # 354 # NetBSD/usermode support 355 # 356 .if ${MACHINE_ARCH} == "i386" || \ 357 ${MACHINE_ARCH} == "x86_64" 358 SUBDIR+= ../arch/usermode/modules/syscallemu 359 .endif 360 361 # we need our device mapper for LVM 362 .if (${MKLVM} != "no") 363 SUBDIR+= dm 364 .endif 365 366 .if (${MKDTRACE} != "no") 367 SUBDIR+= cyclic 368 SUBDIR+= dtrace 369 .endif 370 371 # we need solaris for the dtrace and zfs modules 372 .if (${MKDTRACE} != "no" || ${MKZFS} != "no") 373 SUBDIR+= solaris 374 .endif 375 376 .if (${MKZFS} != "no") 377 SUBDIR+= zfs 378 .endif 379 380 .if (${MKCOMPATMODULES} != "no") 381 SUBDIR+= arch 382 .endif 383 384 # 385 # DTV modules 386 # 387 SUBDIR+= dtv 388 SUBDIR+= dtv_math 389 .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" 390 # tuners/demods 391 SUBDIR+= au8522 392 SUBDIR+= cx24227 393 SUBDIR+= lg3303 394 SUBDIR+= mt2131 395 SUBDIR+= nxt2k 396 SUBDIR+= tvpll 397 SUBDIR+= xc3028 398 SUBDIR+= xc5k 399 SUBDIR+= zl10353 400 # hardware drivers 401 SUBDIR+= auvitek 402 SUBDIR+= coram 403 SUBDIR+= cxdtv 404 SUBDIR+= emdtv 405 406 # Intel Integrated Memory Controller and associated SMBus 407 # (Experimental) 408 SUBDIR+= imc 409 SUBDIR+= imcsmb 410 411 .endif 412 413 .if (${MKISCSI} != "no") 414 SUBDIR+= iscsi 415 .endif 416 417 # For now, all of these are disabled, pending resolution of how to deal 418 # with attachment-specific modules and bus-specific modules (as opposed 419 # to machine- or architecture-specific modules) 420 421 .if 0 422 SUBDIR+= aac 423 SUBDIR+= amr 424 SUBDIR+= ataraid 425 SUBDIR+= cac 426 SUBDIR+= cac_eisa 427 SUBDIR+= cac_pci 428 SUBDIR+= if_vioif 429 SUBDIR+= ld 430 SUBDIR+= ld_aac 431 SUBDIR+= ld_amr 432 SUBDIR+= ld_ataraid 433 SUBDIR+= ld_cac 434 SUBDIR+= ld_icp 435 SUBDIR+= ld_mlx 436 SUBDIR+= ld_sdmmc 437 SUBDIR+= ld_twa 438 SUBDIR+= ld_twe 439 SUBDIR+= ld_virtio 440 SUBDIR+= mlx 441 SUBDIR+= mlx_eisa 442 SUBDIR+= mlx_pci 443 SUBDIR+= ld_nvme 444 SUBDIR+= nvme 445 SUBDIR+= twa 446 SUBDIR+= twe 447 SUBDIR+= viomb 448 SUBDIR+= virtio 449 SUBDIR+= virtio_pci 450 SUBDIR+= vioscsi 451 .endif 452 453 SUBDIR+= examples # build these regularly to avoid bit-rot 454 455 .include <bsd.subdir.mk> 456