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