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