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