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