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