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