1 1.197 christos # $NetBSD: Makefile,v 1.197 2017/12/29 02:14:25 christos Exp $ 2 1.37 dyoung 3 1.37 dyoung .include <bsd.own.mk> 4 1.15 ad 5 1.15 ad # For all platforms 6 1.1 ad 7 1.179 pgoyette SUBDIR= accf_dataready 8 1.16 ad SUBDIR+= accf_httpready 9 1.15 ad SUBDIR+= adosfs 10 1.14 ad SUBDIR+= aio 11 1.192 pgoyette SUBDIR+= audio 12 1.133 pgoyette SUBDIR+= blowfish 13 1.38 pooka SUBDIR+= bpf 14 1.166 pgoyette SUBDIR+= bpf_filter 15 1.183 pgoyette SUBDIR+= bufq_disksort 16 1.183 pgoyette SUBDIR+= bufq_fcfs 17 1.183 pgoyette SUBDIR+= bufq_priocscan 18 1.183 pgoyette SUBDIR+= bufq_readprio 19 1.133 pgoyette SUBDIR+= camellia 20 1.133 pgoyette SUBDIR+= cast128 21 1.132 pgoyette SUBDIR+= ccd 22 1.7 rumble SUBDIR+= cd9660 23 1.129 pgoyette SUBDIR+= cgd 24 1.132 pgoyette SUBDIR+= chfs 25 1.163 pgoyette SUBDIR+= clockctl 26 1.134 pgoyette SUBDIR+= crypto 27 1.7 rumble SUBDIR+= coda 28 1.7 rumble SUBDIR+= coda5 29 1.15 ad SUBDIR+= compat 30 1.15 ad SUBDIR+= compat_ossaudio 31 1.15 ad SUBDIR+= coredump 32 1.104 pgoyette SUBDIR+= dbcool 33 1.133 pgoyette SUBDIR+= des 34 1.129 pgoyette SUBDIR+= dk_subr 35 1.164 pgoyette SUBDIR+= drvctl 36 1.7 rumble SUBDIR+= efs 37 1.7 rumble SUBDIR+= ext2fs 38 1.15 ad SUBDIR+= exec_script 39 1.7 rumble SUBDIR+= fdesc 40 1.7 rumble SUBDIR+= ffs 41 1.18 ad SUBDIR+= filecore 42 1.93 sjg SUBDIR+= filemon 43 1.68 ahoka SUBDIR+= flash 44 1.15 ad SUBDIR+= fss 45 1.89 mbalmer SUBDIR+= gpio 46 1.94 mbalmer SUBDIR+= gpioiic 47 1.92 mbalmer SUBDIR+= gpioow 48 1.89 mbalmer SUBDIR+= gpiosim 49 1.7 rumble SUBDIR+= hfs 50 1.136 kardel SUBDIR+= hythygtemp 51 1.197 christos SUBDIR+= si70xxtemp 52 1.197 christos SUBDIR+= am2315temp 53 1.143 jmcneill SUBDIR+= i2cexec 54 1.166 pgoyette SUBDIR+= i2c_bitbang 55 1.175 christos SUBDIR+= if_agr 56 1.105 pgoyette SUBDIR+= if_axe 57 1.120 nonaka SUBDIR+= if_axen 58 1.175 christos SUBDIR+= if_faith 59 1.175 christos SUBDIR+= if_gif 60 1.175 christos SUBDIR+= if_gre 61 1.189 knakahar SUBDIR+= if_l2tp 62 1.175 christos SUBDIR+= if_loop 63 1.175 christos SUBDIR+= if_mpls 64 1.118 christos SUBDIR+= if_npflog 65 1.171 christos SUBDIR+= if_ppp 66 1.174 pgoyette SUBDIR+= if_pppoe 67 1.172 christos SUBDIR+= if_sl 68 1.124 skrll SUBDIR+= if_smsc 69 1.175 christos SUBDIR+= if_srt 70 1.175 christos SUBDIR+= if_stf 71 1.172 christos SUBDIR+= if_strip 72 1.176 pgoyette SUBDIR+= if_tun tun 73 1.175 christos SUBDIR+= if_vlan 74 1.94 mbalmer SUBDIR+= iic 75 1.196 pgoyette SUBDIR+= ip_ecn 76 1.167 pgoyette SUBDIR+= ipl 77 1.7 rumble SUBDIR+= kernfs 78 1.22 ad SUBDIR+= layerfs 79 1.7 rumble SUBDIR+= lfs 80 1.121 mbalmer SUBDIR+= lua 81 1.128 lneto SUBDIR+= luasystm 82 1.123 mbalmer SUBDIR+= luapmf 83 1.7 rumble SUBDIR+= mfs 84 1.192 pgoyette SUBDIR+= midi 85 1.45 pgoyette SUBDIR+= miiverbose 86 1.45 pgoyette SUBDIR+= miniroot 87 1.31 rmind SUBDIR+= mqueue 88 1.18 ad SUBDIR+= msdos 89 1.68 ahoka SUBDIR+= nand 90 1.68 ahoka SUBDIR+= nandemulator 91 1.15 ad SUBDIR+= nfs 92 1.15 ad SUBDIR+= nfsserver 93 1.30 reinoud SUBDIR+= nilfs 94 1.96 tron SUBDIR+= npf 95 1.97 tron SUBDIR+= npf_alg_icmp 96 1.111 rmind SUBDIR+= npf_ext_log 97 1.119 christos SUBDIR+= npf_ext_normalize 98 1.117 rmind SUBDIR+= npf_ext_rndblock 99 1.7 rumble SUBDIR+= ntfs 100 1.18 ad SUBDIR+= null 101 1.92 mbalmer SUBDIR+= onewire 102 1.134 pgoyette SUBDIR+= opencrypto 103 1.7 rumble SUBDIR+= overlay 104 1.42 pgoyette SUBDIR+= pciverbose 105 1.41 ahoka SUBDIR+= pf 106 1.19 cube SUBDIR+= ppp_bsdcomp 107 1.19 cube SUBDIR+= ppp_deflate 108 1.7 rumble SUBDIR+= procfs 109 1.182 pgoyette SUBDIR+= ptrace 110 1.182 pgoyette SUBDIR+= ptrace_common 111 1.7 rumble SUBDIR+= ptyfs 112 1.7 rumble SUBDIR+= puffs 113 1.15 ad SUBDIR+= putter 114 1.165 pgoyette SUBDIR+= raid 115 1.44 pgoyette SUBDIR+= scsiverbose 116 1.103 pgoyette SUBDIR+= sdtemp 117 1.33 elad SUBDIR+= secmodel_bsd44 118 1.100 jym SUBDIR+= secmodel_extensions 119 1.33 elad SUBDIR+= secmodel_overlay 120 1.33 elad SUBDIR+= securelevel 121 1.192 pgoyette SUBDIR+= sequencer 122 1.133 pgoyette SUBDIR+= skipjack 123 1.168 pgoyette SUBDIR+= slcompress 124 1.7 rumble SUBDIR+= smbfs 125 1.81 pgoyette SUBDIR+= spdmem 126 1.188 pgoyette SUBDIR+= spkr 127 1.173 pgoyette SUBDIR+= sppp_subr 128 1.146 pgoyette SUBDIR+= sysmon 129 1.146 pgoyette SUBDIR+= sysmon_envsys 130 1.146 pgoyette SUBDIR+= sysmon_power 131 1.146 pgoyette SUBDIR+= sysmon_taskq 132 1.146 pgoyette SUBDIR+= sysmon_wdog 133 1.24 pooka SUBDIR+= sysvbfs 134 1.153 pgoyette SUBDIR+= sysv_ipc 135 1.33 elad SUBDIR+= suser 136 1.134 pgoyette SUBDIR+= swcrypto 137 1.48 pgoyette SUBDIR+= swsensor 138 1.145 pgoyette SUBDIR+= swwdog 139 1.7 rumble SUBDIR+= tmpfs 140 1.191 riastrad SUBDIR+= ualea 141 1.108 riastrad SUBDIR+= uatp 142 1.7 rumble SUBDIR+= udf 143 1.18 ad SUBDIR+= umap 144 1.7 rumble SUBDIR+= union 145 1.43 pgoyette SUBDIR+= usbverbose 146 1.106 christos SUBDIR+= vcoda 147 1.78 enami SUBDIR+= v7fs 148 1.25 haad SUBDIR+= vnd 149 1.157 pgoyette SUBDIR+= wapbl 150 1.193 pgoyette SUBDIR+= wsbell 151 1.131 pgoyette SUBDIR+= zlib 152 1.29 yamt SUBDIR+= tprof 153 1.7 rumble .if (defined(NOTYET)) 154 1.135 pgoyette SUBDIR+= hifn # Builds on architectures with PCI bus 155 1.7 rumble SUBDIR+= unionfs 156 1.7 rumble .endif 157 1.37 dyoung .if ${MKBINUTILS} != "no" 158 1.37 dyoung SUBDIR+= xldscripts 159 1.37 dyoung .endif 160 1.7 rumble 161 1.15 ad # Machine dependent section 162 1.47 tsutsui .if ${MACHINE_ARCH} == "i386" || \ 163 1.49 tsutsui ${MACHINE_CPU} == "m68k" 164 1.47 tsutsui SUBDIR+= exec_aout 165 1.47 tsutsui .endif 166 1.47 tsutsui 167 1.169 scole .if ${MACHINE_ARCH} != "alpha" && \ 168 1.169 scole ${MACHINE_CPU} != "aarch64" && \ 169 1.169 scole ${MACHINE_ARCH} != "ia64" 170 1.17 martin SUBDIR+= exec_elf32 171 1.17 martin .endif 172 1.15 ad 173 1.139 matt .if ${MACHINE_CPU} == "aarch64" || \ 174 1.139 matt ${MACHINE_ARCH} == "alpha" || \ 175 1.169 scole ${MACHINE_ARCH} == "ia64" || \ 176 1.21 tsutsui ${MACHINE_ARCH} == "sparc64" || \ 177 1.21 tsutsui ${MACHINE_ARCH} == "x86_64" 178 1.20 he SUBDIR+= exec_elf64 179 1.20 he .endif 180 1.20 he 181 1.29 yamt .if ${MACHINE_ARCH} == "i386" || \ 182 1.29 yamt ${MACHINE_ARCH} == "x86_64" 183 1.71 jruoho SUBDIR+= amdtemp 184 1.64 jruoho SUBDIR+= coretemp 185 1.65 jruoho SUBDIR+= est 186 1.110 martin SUBDIR+= hdafg 187 1.110 martin SUBDIR+= hdaudio 188 1.144 jmcneill SUBDIR+= hdaudio_pci 189 1.141 christos SUBDIR+= hdaudioverbose 190 1.72 jruoho SUBDIR+= hpet 191 1.69 jruoho SUBDIR+= odcm 192 1.66 jruoho SUBDIR+= powernow 193 1.150 pgoyette SUBDIR+= tco 194 1.29 yamt SUBDIR+= tprof_pmi 195 1.70 yamt SUBDIR+= tprof_amdpmi 196 1.95 jmcneill SUBDIR+= vmt 197 1.29 yamt .endif 198 1.29 yamt 199 1.140 bad .if ${MACHINE_ARCH} == "i386" || \ 200 1.137 bad ${MACHINE_ARCH} == "x86_64" 201 1.137 bad SUBDIR+= ubsec # Builds on architectures with PCI bus 202 1.137 bad .endif 203 1.137 bad 204 1.126 alnsn .if ${MKSLJIT} != "no" 205 1.126 alnsn # No modules for arm, mips and powerpc yet. 206 1.114 alnsn .if ${MACHINE_ARCH} == "i386" || \ 207 1.115 alnsn ${MACHINE_ARCH} == "x86_64" || \ 208 1.115 alnsn ${MACHINE_ARCH} == "sparc" 209 1.113 alnsn SUBDIR+= bpfjit 210 1.112 alnsn SUBDIR+= sljit 211 1.112 alnsn .endif 212 1.126 alnsn .endif 213 1.112 alnsn 214 1.85 jruoho # 215 1.85 jruoho # ACPI modules 216 1.85 jruoho # 217 1.46 pgoyette .if ${MACHINE_ARCH} == "i386" || \ 218 1.46 pgoyette ${MACHINE_ARCH} == "ia64" || \ 219 1.46 pgoyette ${MACHINE_ARCH} == "x86_64" 220 1.46 pgoyette SUBDIR+= acpiverbose 221 1.46 pgoyette .endif 222 1.46 pgoyette 223 1.50 jmcneill .if ${MACHINE_ARCH} == "i386" || \ 224 1.50 jmcneill ${MACHINE_ARCH} == "x86_64" 225 1.52 jruoho SUBDIR+= acpiacad 226 1.52 jruoho SUBDIR+= acpibat 227 1.52 jruoho SUBDIR+= acpibut 228 1.52 jruoho SUBDIR+= acpicpu 229 1.53 jruoho SUBDIR+= acpidalb 230 1.58 jruoho SUBDIR+= acpifan 231 1.52 jruoho SUBDIR+= acpilid 232 1.57 jruoho SUBDIR+= acpipmtr 233 1.53 jruoho SUBDIR+= acpitz 234 1.53 jruoho SUBDIR+= acpivga 235 1.86 jruoho SUBDIR+= acpiwdrt 236 1.51 jmcneill SUBDIR+= acpiwmi 237 1.53 jruoho SUBDIR+= aibs 238 1.54 jruoho SUBDIR+= asus 239 1.63 jruoho SUBDIR+= fujbp 240 1.63 jruoho SUBDIR+= fujhk 241 1.75 jruoho SUBDIR+= hpacel 242 1.54 jruoho SUBDIR+= hpqlb 243 1.52 jruoho SUBDIR+= thinkpad 244 1.50 jmcneill SUBDIR+= wmidell 245 1.83 jruoho SUBDIR+= wmieeepc 246 1.50 jmcneill SUBDIR+= wmihp 247 1.50 jmcneill SUBDIR+= wmimsi 248 1.50 jmcneill .endif 249 1.50 jmcneill 250 1.156 matt .if ${MACHINE_CPU} == "arm" \ 251 1.156 matt || (!empty(MACHINE_ARCH:Mmips64*) && !defined(BSD_MK_COMPAT_FILE)) 252 1.151 matt SUBDIR+= compat_netbsd32 253 1.180 skrll SUBDIR+= compat_netbsd32_mqueue 254 1.158 pgoyette SUBDIR+= compat_netbsd32_nfssrv 255 1.181 skrll SUBDIR+= compat_netbsd32_ptrace 256 1.162 pgoyette SUBDIR+= compat_netbsd32_sysvipc 257 1.151 matt .endif 258 1.151 matt 259 1.27 abs .if ${MACHINE_ARCH} == "x86_64" 260 1.15 ad SUBDIR+= compat_linux32 261 1.15 ad SUBDIR+= compat_netbsd32 262 1.180 skrll SUBDIR+= compat_netbsd32_mqueue 263 1.158 pgoyette SUBDIR+= compat_netbsd32_nfssrv 264 1.181 skrll SUBDIR+= compat_netbsd32_ptrace 265 1.162 pgoyette SUBDIR+= compat_netbsd32_sysvipc 266 1.15 ad .endif 267 1.15 ad 268 1.27 abs .if ${MACHINE_ARCH} == "i386" 269 1.90 jmcneill SUBDIR+= ati_pcigart 270 1.15 ad SUBDIR+= compat_freebsd 271 1.90 jmcneill SUBDIR+= mach64drm 272 1.90 jmcneill SUBDIR+= mgadrm 273 1.76 jmcneill SUBDIR+= nsclpcsio 274 1.62 jmcneill SUBDIR+= padlock 275 1.90 jmcneill SUBDIR+= r128drm 276 1.90 jmcneill SUBDIR+= radeondrm 277 1.90 jmcneill SUBDIR+= savagedrm 278 1.90 jmcneill SUBDIR+= sisdrm 279 1.90 jmcneill SUBDIR+= tdfxdrm 280 1.67 jruoho SUBDIR+= viac7temp 281 1.90 jmcneill SUBDIR+= viadrm 282 1.149 riastrad SUBDIR+= viadrmums 283 1.15 ad .endif 284 1.15 ad 285 1.142 christos .if ${MACHINE_ARCH} == "i386" || \ 286 1.142 christos ${MACHINE_ARCH} == "x86_64" 287 1.142 christos SUBDIR+= azalia 288 1.142 christos SUBDIR+= compat_linux 289 1.142 christos SUBDIR+= drm 290 1.142 christos SUBDIR+= drmkms 291 1.142 christos SUBDIR+= drmkms_linux 292 1.142 christos SUBDIR+= drmkms_pci 293 1.142 christos SUBDIR+= i915drm 294 1.142 christos SUBDIR+= i915drmkms 295 1.142 christos SUBDIR+= pad 296 1.85 jruoho # 297 1.85 jruoho # ISA modules 298 1.85 jruoho # 299 1.59 jmcneill SUBDIR+= aps 300 1.80 jmcneill SUBDIR+= finsio 301 1.79 jmcneill SUBDIR+= itesio 302 1.101 jakllsch SUBDIR+= lm 303 1.101 jakllsch SUBDIR+= lm_isa 304 1.101 jakllsch SUBDIR+= lm_isa_common 305 1.101 jakllsch SUBDIR+= lm_wbsio 306 1.101 jakllsch SUBDIR+= wbsio 307 1.56 jmcneill .endif 308 1.56 jmcneill 309 1.49 tsutsui .if ${MACHINE_CPU} == "m68k" 310 1.47 tsutsui SUBDIR+= compat_aoutm68k 311 1.47 tsutsui #SUBDIR+= compat_linux 312 1.47 tsutsui #SUBDIR+= compat_sunos 313 1.47 tsutsui #SUBDIR+= compat_svr4 314 1.47 tsutsui .endif 315 1.47 tsutsui 316 1.88 mbalmer .if ${MACHINE_ARCH} == "i386" || \ 317 1.88 mbalmer ${MACHINE_ARCH} == "x86_64" || \ 318 1.88 mbalmer ${MACHINE_ARCH} == "sparc64" 319 1.88 mbalmer SUBDIR+= pwdog 320 1.88 mbalmer .endif 321 1.88 mbalmer 322 1.23 agc .include <bsd.own.mk> 323 1.23 agc 324 1.107 reinoud # 325 1.107 reinoud # NetBSD/usermode support 326 1.107 reinoud # 327 1.107 reinoud .if ${MACHINE_ARCH} == "i386" || \ 328 1.107 reinoud ${MACHINE_ARCH} == "x86_64" 329 1.107 reinoud SUBDIR+= ../arch/usermode/modules/syscallemu 330 1.107 reinoud .endif 331 1.107 reinoud 332 1.23 agc # we need our device mapper for LVM 333 1.23 agc .if (${MKLVM} != "no") 334 1.28 yamt SUBDIR+= dm 335 1.23 agc .endif 336 1.23 agc 337 1.39 darran .if (${MKDTRACE} != "no") 338 1.116 chs SUBDIR+= cyclic 339 1.39 darran SUBDIR+= dtrace 340 1.39 darran .endif 341 1.39 darran 342 1.39 darran # we need solaris for the dtrace and zfs modules 343 1.39 darran .if (${MKDTRACE} != "no" || ${MKZFS} != "no") 344 1.39 darran SUBDIR+= solaris 345 1.39 darran .endif 346 1.39 darran 347 1.34 haad .if (${MKZFS} != "no") 348 1.34 haad SUBDIR+= zfs 349 1.34 haad .endif 350 1.34 haad 351 1.73 mrg .if (${MKCOMPATMODULES} != "no") 352 1.73 mrg SUBDIR+= arch 353 1.73 mrg .endif 354 1.73 mrg 355 1.84 jmcneill # 356 1.84 jmcneill # DTV modules 357 1.84 jmcneill # 358 1.84 jmcneill SUBDIR+= dtv 359 1.84 jmcneill SUBDIR+= dtv_math 360 1.84 jmcneill .if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" 361 1.84 jmcneill # tuners/demods 362 1.84 jmcneill SUBDIR+= au8522 363 1.84 jmcneill SUBDIR+= cx24227 364 1.84 jmcneill SUBDIR+= lg3303 365 1.84 jmcneill SUBDIR+= mt2131 366 1.84 jmcneill SUBDIR+= nxt2k 367 1.84 jmcneill SUBDIR+= tvpll 368 1.84 jmcneill SUBDIR+= xc3028 369 1.84 jmcneill SUBDIR+= xc5k 370 1.91 jruoho SUBDIR+= zl10353 371 1.84 jmcneill # hardware drivers 372 1.84 jmcneill SUBDIR+= auvitek 373 1.84 jmcneill SUBDIR+= coram 374 1.84 jmcneill SUBDIR+= cxdtv 375 1.84 jmcneill SUBDIR+= emdtv 376 1.84 jmcneill .endif 377 1.84 jmcneill 378 1.98 riz .if (${MKISCSI} != "no") 379 1.98 riz SUBDIR+= iscsi 380 1.98 riz .endif 381 1.98 riz 382 1.179 pgoyette # For now, all of these are disabled, pending resolution of how to deal 383 1.179 pgoyette # with attachment-specific modules and bus-specific modules (as opposed 384 1.179 pgoyette # to machine- or architecture-specific modules) 385 1.179 pgoyette 386 1.179 pgoyette .if 0 387 1.179 pgoyette SUBDIR+= aac 388 1.179 pgoyette SUBDIR+= amr 389 1.179 pgoyette SUBDIR+= ataraid 390 1.179 pgoyette SUBDIR+= cac 391 1.179 pgoyette SUBDIR+= cac_eisa 392 1.179 pgoyette SUBDIR+= cac_pci 393 1.179 pgoyette SUBDIR+= if_vioif 394 1.179 pgoyette SUBDIR+= ld 395 1.179 pgoyette SUBDIR+= ld_aac 396 1.179 pgoyette SUBDIR+= ld_amr 397 1.179 pgoyette SUBDIR+= ld_ataraid 398 1.179 pgoyette SUBDIR+= ld_cac 399 1.179 pgoyette SUBDIR+= ld_icp 400 1.179 pgoyette SUBDIR+= ld_mlx 401 1.179 pgoyette SUBDIR+= ld_sdmmc 402 1.179 pgoyette SUBDIR+= ld_twa 403 1.179 pgoyette SUBDIR+= ld_twe 404 1.179 pgoyette SUBDIR+= ld_virtio 405 1.179 pgoyette SUBDIR+= mlx 406 1.179 pgoyette SUBDIR+= mlx_eisa 407 1.179 pgoyette SUBDIR+= mlx_pci 408 1.179 pgoyette SUBDIR+= ld_nvme 409 1.179 pgoyette SUBDIR+= nvme 410 1.179 pgoyette SUBDIR+= twa 411 1.179 pgoyette SUBDIR+= twe 412 1.179 pgoyette SUBDIR+= viomb 413 1.179 pgoyette SUBDIR+= virtio 414 1.190 jdolecek SUBDIR+= vioscsi 415 1.179 pgoyette .endif 416 1.179 pgoyette 417 1.154 pgoyette SUBDIR+= examples # build these regularly to avoid bit-rot 418 1.154 pgoyette 419 1.1 ad .include <bsd.subdir.mk> 420