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