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