Makefile revision 258230
1#	@(#)Makefile	8.1 (Berkeley) 6/4/93
2# $FreeBSD: stable/10/lib/Makefile 258230 2013-11-16 18:40:44Z gjb $
3
4.include <bsd.own.mk>
5
6# To satisfy shared library or ELF linkage when only the libraries being
7# built are visible:
8#
9# csu must be built before all shared libaries for ELF.
10# libc must be built before all other shared libraries.
11# libbsm must be built before libauditd.
12# libcom_err must be built before libpam.
13# libcrypt must be built before libpam.
14# libkvm must be built before libdevstat.
15# libldns must be built before libunbound.
16# msun must be built before libg++ and libstdc++.
17# libmd must be built before libatm, libopie, libradius, and libtacplus.
18# ncurses must be built before libdialog, libedit and libreadline.
19# libnetgraph must be built before libbsnmp/modules/snmp_netgraph.
20# libopie must be built before libpam.
21# libradius must be built before libpam.
22# librpcsvc must be built before libpam.
23# libsbuf must be built before libcam.
24# libtacplus must be built before libpam.
25# libutil must be built before libpam.
26# libypclnt must be built before libpam.
27# libgssapi must be built before librpcsec_gss
28#
29# Otherwise, the SUBDIR list should be in alphabetical order.
30#
31# Except it appears bind needs to be compiled last
32
33SUBDIR_ORDERED=	${_csu} \
34	libc \
35	libbsm \
36	libauditd \
37	libcompiler_rt \
38	libcrypt \
39	libelf \
40	${_libiconv_modules} \
41	libkvm \
42	${_libldns} \
43	msun \
44	libmd \
45	ncurses \
46	${_libnetgraph} \
47	libradius \
48	librpcsvc \
49	libsbuf \
50	libtacplus \
51	libutil \
52	${_libypclnt} \
53	${_libcxxrt} \
54	${_libcplusplus}
55
56.if ${MK_KERBEROS_SUPPORT} != "no"
57SUBDIR_ORDERED+=	libcom_err
58.endif
59
60SUBDIR=	${SUBDIR_ORDERED} \
61	libalias \
62	libarchive \
63	${_libatm} \
64	libbegemot \
65	libblocksruntime \
66	${_libbluetooth} \
67	${_libbsnmp} \
68	libbz2 \
69	libcalendar \
70	libcam \
71	libcompat \
72	libdevinfo \
73	libdevstat \
74	libdwarf \
75	libedit \
76	${_libefi} \
77	libexecinfo \
78	libexpat \
79	libfetch \
80	libgeom \
81	${_libgpib} \
82	${_libgssapi} \
83	${_librpcsec_gss} \
84	libipsec \
85	${_libipx} \
86	libjail \
87	libkiconv \
88	liblzma \
89	libmagic \
90	libmandoc \
91	libmemstat \
92	${_libmilter} \
93	${_libmp} \
94	${_libnandfs} \
95	libnetbsd \
96	${_libngatm} \
97	libopie \
98	libpam \
99	libpcap \
100	${_libpmc} \
101	${_libproc} \
102	libprocstat \
103	librt \
104	${_librtld_db} \
105	${_libsdp} \
106	${_libsm} \
107	${_libsmb} \
108	${_libsmdb} \
109	${_libsmutil} \
110	libstand \
111	libstdbuf \
112	libstdthreads \
113	${_libtelnet} \
114	${_libthr} \
115	libthread_db \
116	libufs \
117	libugidfw \
118	libulog \
119	${_libunbound} \
120	${_libusbhid} \
121	${_libusb} \
122	${_libvgl} \
123	${_libvmmapi} \
124	libwrap \
125	liby \
126	libyaml \
127	libz \
128	${_atf} \
129	${_clang}
130
131.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf)
132_csu=csu/${MACHINE_ARCH}-elf
133.elif exists(${.CURDIR}/csu/${MACHINE_ARCH})
134_csu=csu/${MACHINE_ARCH}
135.elif exists(${.CURDIR}/csu/${MACHINE_CPUARCH}/Makefile)
136_csu=csu/${MACHINE_CPUARCH}
137.else
138_csu=csu
139.endif
140
141# NB: keep these sorted by MK_* knobs
142
143.if ${MK_ATF} != "no"
144_atf=		atf
145.endif
146
147.if ${MK_ATM} != "no"
148_libngatm=	libngatm
149.endif
150
151.if ${MK_BLUETOOTH} != "no"
152_libbluetooth=	libbluetooth
153_libsdp=	libsdp
154.endif
155
156.if ${MK_BSNMP} != "no"
157_libbsnmp=	libbsnmp
158.endif
159
160.if ${MK_CLANG} != "no" && !defined(COMPAT_32BIT)
161_clang=		clang
162.endif
163
164.if ${MK_GPIB} != "no"
165_libgpib=	libgpib
166.endif
167
168.if ${MK_GSSAPI} != "no"
169_libgssapi=	libgssapi
170_librpcsec_gss=	librpcsec_gss
171.endif
172
173.if ${MK_ICONV} != "no"
174_libiconv_modules=	libiconv_modules
175.endif
176
177.if ${MK_IPX} != "no"
178_libipx=	libipx
179.endif
180
181.if ${MK_LDNS} != "no"
182_libldns=	libldns
183.endif
184
185.if ${MK_LIBCPLUSPLUS} != "no"
186_libcxxrt=	libcxxrt
187_libcplusplus=	libc++
188.endif
189
190.if ${MK_LIBTHR} != "no"
191_libthr=	libthr
192.endif
193
194.if ${MK_NAND} != "no"
195_libnandfs=	libnandfs
196.endif
197
198.if ${MK_NETGRAPH} != "no"
199_libnetgraph=	libnetgraph
200.endif
201
202.if ${MK_NIS} != "no"
203_libypclnt=	libypclnt
204.endif
205
206.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
207_libsmb=	libsmb
208_libvgl=	libvgl
209_libproc=	libproc
210_librtld_db=	librtld_db
211.endif
212
213.if ${MACHINE_CPUARCH} == "amd64"
214_libvmmapi=	libvmmapi
215.endif
216
217.if ${MACHINE_CPUARCH} == "ia64"
218_libefi=	libefi
219_libsmb=	libsmb
220.endif
221
222.if ${MACHINE_CPUARCH} == "mips"
223_libproc=	libproc
224_librtld_db=	librtld_db
225.endif
226
227.if ${MACHINE_CPUARCH} == "powerpc"
228_libproc=	libproc
229_librtld_db=	librtld_db
230_libsmb=	libsmb
231.endif
232
233.if ${MACHINE_CPUARCH} == "sparc64"
234_libsmb=	libsmb
235.endif
236
237.if ${MK_OPENSSL} != "no"
238_libmp=		libmp
239.endif
240
241.if ${MK_PMC} != "no"
242_libpmc=	libpmc
243.endif
244
245.if ${MK_SENDMAIL} != "no"
246_libmilter=	libmilter
247_libsm=		libsm
248_libsmdb=	libsmdb
249_libsmutil=	libsmutil
250.endif
251
252.if ${MK_TELNET} != "no"
253_libtelnet=	libtelnet
254.endif
255
256.if ${MK_UNBOUND} != "no"
257_libunbound=	libunbound
258.endif
259
260.if ${MK_USB} != "no"
261_libusbhid=	libusbhid
262_libusb=	libusb
263.endif
264
265.if !defined(LIBRARIES_ONLY)
266afterinstall:
267	${INSTALL_SYMLINK} ../include ${DESTDIR}/usr/lib/include
268.endif
269
270.include <bsd.subdir.mk>
271