1 # $NetBSD: Makefile,v 1.268 2022/07/27 18:29:35 maya 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+= midi_seq 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+= scmd 151 SUBDIR+= scmdi2c 152 SUBDIR+= scsi_subr 153 SUBDIR+= scsiverbose 154 SUBDIR+= sdtemp 155 SUBDIR+= secmodel_bsd44 156 SUBDIR+= secmodel_extensions 157 SUBDIR+= secmodel_overlay 158 SUBDIR+= securelevel 159 SUBDIR+= sequencer 160 SUBDIR+= sgp40mox 161 SUBDIR+= sht3xtemp 162 SUBDIR+= sht4xtemp 163 SUBDIR+= si70xxtemp 164 SUBDIR+= skipjack 165 SUBDIR+= slcompress 166 SUBDIR+= spdmem 167 SUBDIR+= spkr 168 SUBDIR+= sppp_subr 169 SUBDIR+= sysmon 170 SUBDIR+= sysmon_envsys 171 SUBDIR+= sysmon_power 172 SUBDIR+= sysmon_taskq 173 SUBDIR+= sysmon_wdog 174 SUBDIR+= sysvbfs 175 SUBDIR+= sysv_ipc 176 SUBDIR+= suser 177 SUBDIR+= swcrypto 178 SUBDIR+= swsensor 179 SUBDIR+= swwdog 180 SUBDIR+= tmpfs 181 SUBDIR+= ualea 182 SUBDIR+= uatp 183 SUBDIR+= udf 184 SUBDIR+= ufs 185 SUBDIR+= umap 186 SUBDIR+= union 187 SUBDIR+= usbnet 188 SUBDIR+= usbverbose 189 SUBDIR+= vcoda 190 SUBDIR+= v7fs 191 SUBDIR+= vnd 192 SUBDIR+= wapbl 193 SUBDIR+= wsbell 194 SUBDIR+= zlib 195 SUBDIR+= tprof 196 .if (defined(NOTYET)) 197 SUBDIR+= unionfs 198 .endif 199 .if ${MKBINUTILS} != "no" 200 SUBDIR+= xldscripts 201 .endif 202 203 # Machine dependent section 204 .if ${MACHINE_ARCH} == "i386" || \ 205 ${MACHINE_CPU} == "m68k" 206 SUBDIR+= exec_aout 207 .endif 208 209 .if ${MACHINE_ARCH} != "alpha" && \ 210 ${MACHINE_ARCH} != "ia64" 211 SUBDIR+= exec_elf32 212 .endif 213 214 .if ${MACHINE_CPU} == "aarch64" || \ 215 ${MACHINE_ARCH} == "alpha" || \ 216 ${MACHINE_ARCH} == "ia64" || \ 217 ${MACHINE_ARCH} == "sparc64" || \ 218 ${MACHINE_ARCH} == "x86_64" 219 SUBDIR+= exec_elf64 220 .endif 221 222 .if ${MACHINE_ARCH} == "i386" || \ 223 ${MACHINE_ARCH} == "x86_64" 224 SUBDIR+= amdsmn 225 SUBDIR+= amdtemp 226 SUBDIR+= amdzentemp 227 SUBDIR+= coretemp 228 SUBDIR+= est 229 SUBDIR+= hdafg 230 SUBDIR+= hdaudio 231 SUBDIR+= hdaudio_pci 232 SUBDIR+= hdaudioverbose 233 SUBDIR+= hpet 234 SUBDIR+= ichsmb 235 SUBDIR+= odcm 236 SUBDIR+= powernow 237 SUBDIR+= tco 238 SUBDIR+= tprof_x86 239 SUBDIR+= vmt 240 .endif 241 242 .if ${HAVE_NVMM:Uno} == "yes" 243 SUBDIR+= nvmm 244 .endif 245 246 # Builds on architectures with PCI bus 247 .if \ 248 ${MACHINE} == "evbarm" || \ 249 ${MACHINE_ARCH} == "i386" || \ 250 ${MACHINE_ARCH} == "x86_64" 251 #SUBDIR+= hifn 252 SUBDIR+= if_iavf 253 SUBDIR+= if_ixl 254 SUBDIR+= ubsec 255 .endif 256 257 .if ${MKSLJIT} != "no" 258 # No modules for 32-bit arm, mips and powerpc yet. 259 .if ${MACHINE_ARCH} == "aarch64" || \ 260 ${MACHINE_ARCH} == "i386" || \ 261 ${MACHINE_ARCH} == "sparc" || \ 262 ${MACHINE_ARCH} == "x86_64" 263 SUBDIR+= bpfjit 264 SUBDIR+= sljit 265 .endif 266 .endif 267 268 # 269 # ACPI modules 270 # 271 .if ${MACHINE_ARCH} == "i386" || \ 272 ${MACHINE_ARCH} == "ia64" || \ 273 ${MACHINE_ARCH} == "x86_64" 274 SUBDIR+= acpiverbose 275 .endif 276 277 .if ${MACHINE_ARCH} == "i386" || \ 278 ${MACHINE_ARCH} == "x86_64" 279 SUBDIR+= acpiacad 280 SUBDIR+= acpibat 281 SUBDIR+= acpibut 282 SUBDIR+= acpicpu 283 SUBDIR+= acpidalb 284 SUBDIR+= acpifan 285 SUBDIR+= acpilid 286 SUBDIR+= acpipmtr 287 SUBDIR+= acpitz 288 SUBDIR+= acpivga 289 SUBDIR+= acpiwdrt 290 SUBDIR+= acpiwmi 291 SUBDIR+= aibs 292 SUBDIR+= asus 293 SUBDIR+= fujbp 294 SUBDIR+= fujhk 295 SUBDIR+= hpacel 296 SUBDIR+= hpqlb 297 SUBDIR+= thinkpad 298 SUBDIR+= wmidell 299 SUBDIR+= wmieeepc 300 SUBDIR+= wmihp 301 SUBDIR+= wmimsi 302 .endif 303 304 .include "${.CURDIR}/../compat/netbsd32/netbsd32.mk" 305 .if ${COMPAT_USE_NETBSD32} != "no" 306 307 SUBDIR+= compat_netbsd32 308 SUBDIR+= compat_netbsd32_09 compat_netbsd32_12 309 SUBDIR+= compat_netbsd32_13 compat_netbsd32_16 310 SUBDIR+= compat_netbsd32_20 compat_netbsd32_30 311 SUBDIR+= compat_netbsd32_40 compat_netbsd32_50 312 SUBDIR+= compat_netbsd32_60 compat_netbsd32_80 313 SUBDIR+= compat_netbsd32_90 314 SUBDIR+= compat_netbsd32_43 315 SUBDIR+= compat_netbsd32_coredump 316 SUBDIR+= compat_netbsd32_mqueue 317 SUBDIR+= compat_netbsd32_nfssrv 318 SUBDIR+= compat_netbsd32_ptrace 319 SUBDIR+= compat_netbsd32_quota 320 SUBDIR+= compat_netbsd32_quota_50 321 SUBDIR+= compat_netbsd32_raid 322 SUBDIR+= compat_netbsd32_sysvipc 323 SUBDIR+= compat_netbsd32_sysvipc_10 324 SUBDIR+= compat_netbsd32_sysvipc_14 325 SUBDIR+= compat_netbsd32_sysvipc_50 326 327 .if ${MACHINE_ARCH} == "x86_64" 328 SUBDIR+= compat_linux32 329 .endif 330 331 .endif 332 333 .if ${MACHINE_ARCH} == "i386" 334 SUBDIR+= ati_pcigart 335 SUBDIR+= compat_freebsd 336 SUBDIR+= mach64drm 337 SUBDIR+= mgadrm 338 SUBDIR+= nsclpcsio 339 SUBDIR+= padlock 340 SUBDIR+= r128drm 341 SUBDIR+= radeondrm 342 SUBDIR+= savagedrm 343 SUBDIR+= sisdrm 344 SUBDIR+= tdfxdrm 345 SUBDIR+= viac7temp 346 SUBDIR+= viadrmums 347 .endif 348 349 .if ${MACHINE_ARCH} == "i386" || \ 350 ${MACHINE_ARCH} == "x86_64" 351 SUBDIR+= compat_linux 352 SUBDIR+= drm 353 #SUBDIR+= drmkms 354 #SUBDIR+= drmkms_agp 355 #SUBDIR+= drmkms_linux 356 #SUBDIR+= drmkms_pci 357 #SUBDIR+= drmkms_ttm 358 SUBDIR+= i915drm 359 SUBDIR+= amdgpu 360 #SUBDIR+= i915drmkms 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+= if_aq 471 SUBDIR+= if_vioif 472 SUBDIR+= if_vmx 473 SUBDIR+= ld 474 SUBDIR+= ld_aac 475 SUBDIR+= ld_amr 476 SUBDIR+= ld_ataraid 477 SUBDIR+= ld_cac 478 SUBDIR+= ld_icp 479 SUBDIR+= ld_mlx 480 SUBDIR+= ld_sdmmc 481 SUBDIR+= ld_twa 482 SUBDIR+= ld_twe 483 SUBDIR+= ld_virtio 484 SUBDIR+= mlx 485 SUBDIR+= mlx_eisa 486 SUBDIR+= mlx_pci 487 SUBDIR+= ld_nvme 488 SUBDIR+= nvme 489 SUBDIR+= twa 490 SUBDIR+= twe 491 SUBDIR+= vio9p 492 SUBDIR+= viomb 493 SUBDIR+= virtio 494 SUBDIR+= virtio_pci 495 SUBDIR+= vioscsi 496 .endif 497 498 SUBDIR+= examples # build these regularly to avoid bit-rot 499 500 .include <bsd.subdir.mk> 501