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