Makefile revision 1.284
1# $NetBSD: Makefile,v 1.284 2024/03/21 02:36:02 riastradh 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+= acpihed 292SUBDIR+= acpilid 293SUBDIR+= acpipmtr 294SUBDIR+= acpitz 295SUBDIR+= acpivga 296SUBDIR+= acpiwdrt 297SUBDIR+= acpiwmi 298SUBDIR+= aibs 299SUBDIR+= apei 300SUBDIR+= asus 301SUBDIR+= fujbp 302SUBDIR+= fujhk 303SUBDIR+= hpacel 304SUBDIR+= hpqlb 305SUBDIR+= thinkpad 306SUBDIR+= wmidell 307SUBDIR+= wmieeepc 308SUBDIR+= wmihp 309SUBDIR+= wmimsi 310.endif 311 312.include "${.CURDIR}/../compat/netbsd32/netbsd32.mk" 313.if ${COMPAT_USE_NETBSD32} != "no" 314 315SUBDIR+= compat_netbsd32 316SUBDIR+= compat_netbsd32_09 compat_netbsd32_12 317SUBDIR+= compat_netbsd32_13 compat_netbsd32_16 318SUBDIR+= compat_netbsd32_20 compat_netbsd32_30 319SUBDIR+= compat_netbsd32_40 compat_netbsd32_50 320SUBDIR+= compat_netbsd32_60 compat_netbsd32_80 321SUBDIR+= compat_netbsd32_90 compat_netbsd32_100 322SUBDIR+= compat_netbsd32_43 323SUBDIR+= compat_netbsd32_coredump 324SUBDIR+= compat_netbsd32_mqueue 325SUBDIR+= compat_netbsd32_nfssrv 326SUBDIR+= compat_netbsd32_ptrace 327SUBDIR+= compat_netbsd32_quota 328SUBDIR+= compat_netbsd32_quota_50 329SUBDIR+= compat_netbsd32_raid 330SUBDIR+= compat_netbsd32_sysvipc 331SUBDIR+= compat_netbsd32_sysvipc_10 332SUBDIR+= compat_netbsd32_sysvipc_14 333SUBDIR+= compat_netbsd32_sysvipc_50 334 335.if ${MACHINE_ARCH} == "x86_64" 336SUBDIR+= compat_linux32 337.endif 338 339.endif 340 341.if ${MACHINE_ARCH} == "i386" 342SUBDIR+= ati_pcigart 343SUBDIR+= compat_freebsd 344SUBDIR+= mach64drm 345SUBDIR+= mgadrm 346SUBDIR+= nsclpcsio 347SUBDIR+= padlock 348SUBDIR+= r128drm 349#SUBDIR+= radeondrm 350SUBDIR+= savagedrm 351SUBDIR+= sisdrm 352SUBDIR+= tdfxdrm 353SUBDIR+= viac7temp 354.endif 355 356.if ${MACHINE_ARCH} == "i386" || \ 357 ${MACHINE_ARCH} == "x86_64" || \ 358 ${MACHINE_CPU} == "aarch64" 359SUBDIR+= amdgpu 360SUBDIR+= drmkms 361SUBDIR+= drmkms_linux 362SUBDIR+= drmkms_pci 363SUBDIR+= drmkms_sched 364SUBDIR+= drmkms_ttm 365.endif 366 367.if ${MACHINE_ARCH} == "i386" || \ 368 ${MACHINE_ARCH} == "x86_64" 369SUBDIR+= drm 370SUBDIR+= compat_linux 371SUBDIR+= drmkms_agp 372SUBDIR+= i915drm 373SUBDIR+= i915drmkms 374SUBDIR+= viadrmums 375# 376# ISA modules 377# 378SUBDIR+= aps 379SUBDIR+= finsio 380SUBDIR+= itesio 381SUBDIR+= lm 382SUBDIR+= lm_isa 383SUBDIR+= lm_isa_common 384SUBDIR+= lm_wbsio 385SUBDIR+= wbsio 386.endif 387 388.if ${MACHINE_CPU} == "aarch64" 389SUBDIR+= compat_linux 390SUBDIR+= compat_linux32 391.endif 392 393.if ${MACHINE_CPU} == "m68k" 394SUBDIR+= compat_aoutm68k 395#SUBDIR+= compat_linux 396#SUBDIR+= compat_sunos 397.endif 398 399.if ${MACHINE_ARCH} == "i386" || \ 400 ${MACHINE_ARCH} == "x86_64" || \ 401 ${MACHINE_ARCH} == "sparc64" 402SUBDIR+= pwdog 403.endif 404 405.include <bsd.own.mk> 406 407# 408# NetBSD/usermode support 409# 410.if ${MACHINE_ARCH} == "i386" || \ 411 ${MACHINE_ARCH} == "x86_64" 412SUBDIR+= ../arch/usermode/modules/syscallemu 413.endif 414 415# we need our device mapper for LVM 416.if (${MKLVM} != "no") 417SUBDIR+= dm 418.endif 419 420.if (${MKDTRACE} != "no") 421SUBDIR+= cyclic 422SUBDIR+= dtrace 423.endif 424 425SUBDIR+= sodium 426 427# we need solaris for the dtrace and zfs modules 428.if (${MKDTRACE} != "no" || ${MKZFS} != "no") 429SUBDIR+= solaris 430.endif 431 432.if (${MKZFS} != "no") 433SUBDIR+= zfs 434.endif 435 436.if (${MKCOMPATMODULES} != "no") 437SUBDIR+= arch 438.endif 439 440# 441# DTV modules 442# 443SUBDIR+= dtv 444SUBDIR+= dtv_math 445.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" 446# tuners/demods 447SUBDIR+= au8522 448SUBDIR+= cx24227 449SUBDIR+= lg3303 450SUBDIR+= mt2131 451SUBDIR+= nxt2k 452SUBDIR+= tvpll 453SUBDIR+= xc3028 454SUBDIR+= xc5k 455SUBDIR+= zl10353 456# hardware drivers 457SUBDIR+= auvitek 458SUBDIR+= coram 459SUBDIR+= cxdtv 460SUBDIR+= emdtv 461 462# Intel Integrated Memory Controller and associated SMBus 463# (Experimental) 464SUBDIR+= imc 465SUBDIR+= imcsmb 466 467.endif 468 469.if (${MKISCSI} != "no") 470SUBDIR+= iscsi 471.endif 472 473# For now, all of these are disabled, pending resolution of how to deal 474# with attachment-specific modules and bus-specific modules (as opposed 475# to machine- or architecture-specific modules) 476 477.if 0 478SUBDIR+= aac 479SUBDIR+= amr 480SUBDIR+= ataraid 481SUBDIR+= cac 482SUBDIR+= cac_eisa 483SUBDIR+= cac_pci 484SUBDIR+= emuxki 485SUBDIR+= if_aq 486SUBDIR+= if_vioif 487SUBDIR+= if_vmx 488SUBDIR+= ld 489SUBDIR+= ld_aac 490SUBDIR+= ld_amr 491SUBDIR+= ld_ataraid 492SUBDIR+= ld_cac 493SUBDIR+= ld_icp 494SUBDIR+= ld_mlx 495SUBDIR+= ld_sdmmc 496SUBDIR+= ld_twa 497SUBDIR+= ld_twe 498SUBDIR+= ld_virtio 499SUBDIR+= mlx 500SUBDIR+= mlx_eisa 501SUBDIR+= mlx_pci 502SUBDIR+= ld_nvme 503SUBDIR+= nvme 504SUBDIR+= twa 505SUBDIR+= twe 506SUBDIR+= vio9p 507SUBDIR+= viomb 508SUBDIR+= virtio 509SUBDIR+= virtio_pci 510SUBDIR+= vioscsi 511.endif 512 513SUBDIR+= examples # build these regularly to avoid bit-rot 514 515.endif 516 517.include <bsd.subdir.mk> 518