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