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