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