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