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