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