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