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