xref: /minix/lib/Makefile (revision 27852ebe)
1#	$NetBSD: Makefile,v 1.235 2015/09/28 17:12:12 christos Exp $
2#	from: @(#)Makefile	5.25.1.1 (Berkeley) 5/7/91
3
4.include <bsd.own.mk>
5
6SUBDIR=		csu .WAIT
7
8.if (${MKGCC} != "no")
9SUBDIR+=	../external/gpl3/${EXTERNAL_GCC_SUBDIR}/lib/libgcc .WAIT
10.endif
11
12.if defined(__MINIX)
13#LSC MINIX libc depends on
14# - libmthread because of sys/lib/libunwind
15SUBDIR+=	.WAIT
16
17SUBDIR+=	../minix/lib/libsys
18SUBDIR+=	../minix/lib/libmthread
19SUBDIR+=	.WAIT
20.endif # defined(__MINIX)
21SUBDIR+=	libc
22SUBDIR+=	.WAIT
23
24.if defined(__MINIX)
25SUBDIR+=	../minix/lib/libasyn \
26		../minix/lib/libaudiodriver \
27		../minix/lib/libbdev \
28		../minix/lib/libblockdriver \
29		../minix/lib/libchardriver \
30		../minix/lib/libddekit \
31		../minix/lib/libdevman \
32		../minix/lib/libexec \
33		../minix/lib/libfsdriver \
34		../minix/lib/libinputdriver \
35		../minix/lib/libminc \
36		../minix/lib/libminixfs \
37		../minix/lib/libnetdriver \
38		../minix/lib/libsffs \
39		../minix/lib/libsockdriver \
40		../minix/lib/libsockevent \
41		../minix/lib/libtimers \
42		../minix/lib/libusb \
43		../minix/lib/libvtreefs
44
45.if (${HAVE_LIBGCC} == "no")
46SUBDIR+=	../minix/lib/libgcc_s_empty
47.endif
48
49.if (${MKLWIP} == "yes")
50SUBDIR+=	../minix/lib/liblwip \
51		../minix/lib/libnetsock
52.endif
53
54.if (${MACHINE_ARCH} == "i386")
55SUBDIR+=	../minix/lib/libacpi \
56		../minix/lib/libhgfs \
57		../minix/lib/libvassert \
58		../minix/lib/libvboxfs \
59		../minix/lib/libvirtio
60.endif
61
62.if (${MACHINE_ARCH} == "earm")
63SUBDIR+=	../minix/lib/libclkconf \
64		../minix/lib/libgpio \
65		../minix/lib/libi2cdriver
66.endif
67
68.if (${MKMAGIC} == "yes")
69SUBDIR+=	../minix/lib/libmagicrt
70.endif
71
72.endif # defined(__MINIX)
73#
74# The SUBDIRs above are included here for completeness but should be built
75# and installed prior to make(dependall) in this file, as libraries listed
76# below will depend on versions from DESTDIR only.
77#
78
79SUBDIR+=	i18n_module
80
81SUBDIR+=	\
82		libbz2 \
83		libcrypt \
84		libintl libkvm libm \
85		libpci libprop \
86		libpuffs librmt \
87		libterminfo \
88		libutil libz
89
90.if !defined(BSD_MK_COMPAT_FILE)
91#SUBDIR+=	libkern
92.endif
93
94.if (${MACHINE_CPU} == "arm" || ${MACHINE_CPU} == "aarch64")
95LIBC_MACHINE_ARCH?=${MACHINE_ARCH}
96LIBC_MACHINE_CPU?=${MACHINE_CPU}
97.if ${LIBC_MACHINE_CPU} == "arm" && empty(LIBC_MACHINE_ARCH:M*hf*)
98.if !defined(__MINIX)
99SUBDIR+=	libc_vfp
100.endif # !defined(__MINIX)
101.endif
102.endif
103.if (${MKRUMP} != "no")
104SUBDIR+=	librumpclient
105.endif
106.if (${MKSKEY} != "no")
107SUBDIR+=	libskey
108.endif
109
110.if (${MKMDNS} != "no")
111SUBDIR+=	../external/apache2/mDNSResponder/lib
112.endif
113
114#SUBDIR+=	../external/bsd/am-utils/lib
115SUBDIR+=	../external/bsd/blacklist/lib
116
117SUBDIR+=	../external/bsd/flex/lib
118#SUBDIR+=	../external/bsd/tre/lib
119SUBDIR+=	../external/bsd/elftoolchain/lib/libelf
120#SUBDIR+=	../external/bsd/liblzf/lib
121#SUBDIR+=	../external/bsd/libpcap/lib
122
123.if ${MKSLJIT} != "no"
124SUBDIR+=	../external/bsd/sljit/lib
125SUBDIR+=	libbpfjit
126.endif
127
128.if (${MKZFS} != "no")
129SUBDIR+=        ../external/cddl/osnet/lib/libavl
130SUBDIR+=        ../external/cddl/osnet/lib/libnvpair
131SUBDIR+=        ../external/cddl/osnet/lib/libumem
132SUBDIR+=        ../external/cddl/osnet/lib/libuutil
133.endif
134
135SUBDIR+=	../external/mit/expat/lib
136
137SUBDIR+=	../external/public-domain/sqlite/lib
138
139#SUBDIR+=	../gnu/lib/libmalloc
140
141.if (${MKGCC} != "no")
142. if !defined(__MINIX) || ${MKLIBSTDCXX} == "yes"
143SUBDIR+=	../external/gpl3/${EXTERNAL_GCC_SUBDIR}/lib/libobjc
144SUBDIR+=	../external/gpl3/${EXTERNAL_GCC_SUBDIR}/lib/libgomp
145#SUBDIR+=	../external/gpl3/${EXTERNAL_GCC_SUBDIR}/lib/libmudflap
146#SUBDIR+=	../external/gpl3/${EXTERNAL_GCC_SUBDIR}/lib/libmudflapth
147. endif # !defined(__MINIX) || ${MKLIBSTDCXX} == "yes"
148. if !defined(__MINIX) || ${MKLIBSTDCXX} == "yes"
149# Should probably move GMP, MPFR and MPC builds into the GCC >= 4.5
150# specific build area, but we get better parallelism this way.
151# We don't build compat versions of these.
152. if !defined(MLIBDIR)
153SUBDIR+=	../external/lgpl3/gmp/lib/libgmp
154SUBDIR+=	../external/lgpl3/mpfr/lib/libmpfr
155SUBDIR+=	../external/lgpl3/mpc/lib/libmpc
156.   endif # !defined(__MINIX) || ${MKLIBSTDCXX} == "yes"
157. endif
158.endif
159
160#
161# Libraries that depend upon any listed previously
162# (and those that depend upon these [and ...])
163#
164#==================== 1st library dependency barrier ====================
165SUBDIR+=	.WAIT
166
167.if ${MKDTRACE} != "no"
168SUBDIR+=	../external/bsd/librtld_db/lib		# depends on libutil
169.endif
170
171.if ${MKDTRACE} != "no" || ${MKCTF} != "no"
172SUBDIR+=        ../external/cddl/osnet/lib/libctf
173.endif
174
175SUBDIR+=	../external/public-domain/xz/lib	# depends on libpthread
176
177.if (${MKCRYPTO} != "no")
178SUBDIR+=	../crypto/external/bsd/netpgp/libmj
179SUBDIR+=	../crypto/external/bsd/netpgp/lib/verify # depends on libz
180.endif
181
182#SUBDIR+=	../external/bsd/libdwarf/lib # depends on libelf
183SUBDIR+=	../external/mit/lua/lib # depends on libm
184SUBDIR+=	libcurses	# depends on libterminfo
185#SUBDIR+=	libdm		# depends on libprop
186SUBDIR+=	libedit		# depends on libterminfo
187SUBDIR+=	libexecinfo 	# depends on libelf
188#SUBDIR+=	libppath	# depends on libprop
189#SUBDIR+=	libperfuse	# depends on libpuffs
190#SUBDIR+=	libquota	# depends on libprop and librpcsvc
191SUBDIR+=	librefuse	# depends on libpuffs
192#SUBDIR+=	libisns 	# depends on libpthread
193.if (${MKRUMP} != "no")
194SUBDIR+=	librumpuser	# depends on libpthread
195SUBDIR+=	librumphijack	# depends on librumpclient and libpthread
196.endif
197
198.if (${MKNPF} != "no")
199SUBDIR+=	libnpf		# depends on libprop
200.endif
201
202.if (${MKCRYPTO} != "no")
203SUBDIR+=	../crypto/external/bsd/openssl/lib # depends on libcrypt
204.endif
205
206SUBDIR+=	../external/bsd/file/lib	# depends on libz
207
208.if (${MKISCSI} != "no")
209SUBDIR+=	../external/bsd/iscsi/lib	# depends on libpthread
210.endif
211
212.if (${MKZFS} != "no")
213SUBDIR+=        ../external/cddl/osnet/lib/libzfs
214SUBDIR+=        ../external/cddl/osnet/lib/libzpool
215.endif
216
217.if (${MKLVM} != "no")
218SUBDIR+=	../external/gpl2/lvm2/lib	# depends on libprop
219.endif
220
221.if (${MKBINUTILS} != "no")
222SUBDIR+=	../external/gpl3/binutils/lib	# libbfd depends on libz
223.endif
224
225.if (${MKLIBCXX} != "no")
226SUBDIR+=	../external/bsd/libc++
227.endif
228
229.if (${MKGCC} != "no" && ${MKCXX} != "no" && ${MKLIBSTDCXX} != "no")
230SUBDIR+=	../external/gpl3/${EXTERNAL_GCC_SUBDIR}/lib/libstdc++-v3
231SUBDIR+=	../external/gpl3/${EXTERNAL_GCC_SUBDIR}/lib/libsupc++
232.endif
233
234#==================== 2nd library dependency barrier ====================
235SUBDIR+=	.WAIT
236
237SANITIZER_DIR=../external/gpl3/${EXTERNAL_GCC_SUBDIR}/lib/libasan
238.if exists(${SANITIZER_DIR})
239#SUBDIR+=	${SANITIZER_DIR}
240.endif
241
242SUBDIR+=	../external/bsd/libarchive/lib	# depends on libxz
243
244.if (${MKNPF} != "no")
245SUBDIR+=	npf		# depends on libnpf
246.endif
247
248.if (${MKATF} != "no")
249SUBDIR+=	../external/bsd/atf/lib		# depends on libstdc++
250.endif
251
252.if (${MKKYUA} != "no")
253SUBDIR+=	../external/bsd/lutok/lib	# depends on lua and libstdc++
254.endif
255
256SUBDIR+=	libform		# depends on libcurses
257SUBDIR+=	libmenu		# depends on libcurses
258#SUBDIR+=	libradius	# depends on libcrypto if (${MKCRYPTO} != "no")
259.if (${MKRUMP} != "no")
260SUBDIR+=	librump		# depends on librumpuser
261.endif
262
263.if (${MKKERBEROS} != "no")
264SUBDIR+=	../crypto/external/bsd/heimdal/lib	# depends on libcrypto
265							# libedit, libterminfo,
266.endif
267
268.if (${MKCRYPTO} != "no")
269#SUBDIR+=	../crypto/external/bsd/openssh/lib # depends on libcrypto, libz
270SUBDIR+=	../crypto/external/bsd/netpgp/lib  # depends on libcrypto, ...
271.endif
272
273SUBDIR+=	../external/bsd/libevent/lib	# depends on libcrypto
274.if ${MKDTRACE} != "no"
275SUBDIR+=	../external/bsd/libproc/lib	# depends on libstdc++, libctf
276.endif
277SUBDIR+=	../external/bsd/fetch/lib	# depends on libssl
278
279.if (${MKLDAP} != "no")
280SUBDIR+=	../external/bsd/openldap/lib	# depends on libcrypto, ...
281.endif
282
283#==================== 3rd library dependency barrier ====================
284SUBDIR+=	.WAIT
285
286#SUBDIR+=	../external/bsd/bind/lib	# depends on heimdal, libcrypto
287
288.if ${MKDTRACE} != "no"
289SUBDIR+=        ../external/cddl/osnet/lib/libdtrace	# depends on libproc
290.endif
291
292.if (${MKRUMP} != "no")
293SUBDIR+=	librumpdev	# depends on librump
294SUBDIR+=	librumpnet	# depends on librump
295SUBDIR+=	librumpvfs	# depends on librump
296.endif
297
298.if (${MKPAM} != "no")
299SUBDIR+=	libpam		# depends on heimdal
300.endif
301
302.if (${MKCRYPTO} != "no")
303SUBDIR+=	../crypto/external/bsd/libsaslc	# depends on heimdal, openssl
304.endif
305
306SUBDIR+=	../external/bsd/mdocml/lib
307
308.if (${MKRUMP} != "no")
309#==================== 4th library dependency barrier ====================
310SUBDIR+=	.WAIT
311
312SUBDIR+=	libukfs		# depends on librumpvfs, librump
313
314.if (${MKTPM} != "no")
315SUBDIR+=	../crypto/external/cpl/trousers/lib
316.endif
317
318#==================== 5th library dependency barrier ====================
319SUBDIR+=	.WAIT
320
321SUBDIR+=	libp2k		# depends on libukfs, librumpvfs, libpuffs
322
323.if (${MKTPM} != "no")
324SUBDIR+=	../crypto/external/cpl/tpm-tools/lib	# depends on trousers
325.endif
326
327.if !defined(BSD_MK_COMPAT_FILE)
328SUBDIR+=	../sys/rump/dev/lib
329SUBDIR+=	../sys/rump/fs/lib
330SUBDIR+=	../sys/rump/kern/lib
331SUBDIR+=	../sys/rump/net/lib
332.endif
333.endif
334
335# Lua bindings come last, they might depend on anything
336SUBDIR+=	lua
337
338# Needed by rump and rescue which are outside the smbfs tree
339#SUBDIR+=	../external/bsd/smbfs/lib
340
341.include <bsd.buildinstall.mk>
342.include <bsd.subdir.mk>
343