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