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