Makefile revision 246827
1#	@(#)Makefile	8.1 (Berkeley) 6/4/93
2# $FreeBSD: head/lib/Makefile 246827 2013-02-15 13:44:18Z des $
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# msun must be built before libg++ and libstdc++.
16# libmd must be built before libatm, libopie, libradius, and libtacplus.
17# ncurses must be built before libdialog, libedit and libreadline.
18# libnetgraph must be built before libbsnmp/modules/snmp_netgraph.
19# libopie must be built before libpam.
20# libradius must be built before libpam.
21# librpcsvc must be built before libpam.
22# libsbuf must be built before libcam.
23# libtacplus must be built before libpam.
24# libutil must be built before libpam.
25# libypclnt must be built before libpam.
26# libgssapi must be built before librpcsec_gss
27#
28# Otherwise, the SUBDIR list should be in alphabetical order.
29#
30# Except it appears bind needs to be compiled last
31
32SUBDIR_ORDERED=	${_csu} \
33	libc \
34	libbsm \
35	libauditd \
36	libcompiler_rt \
37	libcrypt \
38	libelf \
39	${_libiconv_modules} \
40	libkvm \
41	msun \
42	libmd \
43	ncurses \
44	${_libnetgraph} \
45	libradius \
46	librpcsvc \
47	libsbuf \
48	libtacplus \
49	libutil \
50	${_libypclnt} \
51	${_libcxxrt} \
52	${_libcplusplus}
53
54.if ${MK_KERBEROS_SUPPORT} != "no"
55SUBDIR_ORDERED+=	libcom_err
56.endif
57
58SUBDIR=	${SUBDIR_ORDERED} \
59	libalias \
60	libarchive \
61	${_libatm} \
62	libbegemot \
63	libblocksruntime \
64	${_libbluetooth} \
65	${_libbsnmp} \
66	libbz2 \
67	libcalendar \
68	libcam \
69	libcompat \
70	libdevinfo \
71	libdevstat \
72	libdwarf \
73	libedit \
74	${_libefi} \
75	libexpat \
76	libfetch \
77	libgeom \
78	${_libgpib} \
79	${_libgssapi} \
80	${_librpcsec_gss} \
81	libipsec \
82	${_libipx} \
83	libjail \
84	libkiconv \
85	${_libldns} \
86	liblzma \
87	libmagic \
88	libmandoc \
89	libmemstat \
90	${_libmilter} \
91	${_libmp} \
92	${_libnandfs} \
93	libnetbsd \
94	${_libngatm} \
95	libopie \
96	libpam \
97	libpcap \
98	${_libpmc} \
99	${_libproc} \
100	libprocstat \
101	librt \
102	${_librtld_db} \
103	${_libsdp} \
104	${_libsm} \
105	${_libsmdb} \
106	${_libsmutil} \
107	libstand \
108	libstdbuf \
109	libstdthreads \
110	${_libtelnet} \
111	${_libthr} \
112	libthread_db \
113	libufs \
114	libugidfw \
115	libulog \
116	${_libusbhid} \
117	${_libusb} \
118	${_libvgl} \
119	${_libvmmapi} \
120	libwrap \
121	liby \
122	libz \
123	${_atf} \
124	${_bind} \
125	${_clang}
126
127.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf)
128_csu=csu/${MACHINE_ARCH}-elf
129.elif exists(${.CURDIR}/csu/${MACHINE_ARCH})
130_csu=csu/${MACHINE_ARCH}
131.elif exists(${.CURDIR}/csu/${MACHINE_CPUARCH}/Makefile)
132_csu=csu/${MACHINE_CPUARCH}
133.else
134_csu=csu
135.endif
136
137# NB: keep these sorted by MK_* knobs
138
139.if ${MK_ATF} != "no"
140_atf=		atf
141.endif
142
143.if ${MK_ATM} != "no"
144_libngatm=	libngatm
145.endif
146
147.if ${MK_BIND} != "no"
148_bind=		bind
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_libvgl=	libvgl
208_libproc=	libproc
209_librtld_db=	librtld_db
210.endif
211
212.if ${MACHINE_CPUARCH} == "amd64"
213_libvmmapi=	libvmmapi
214.endif
215
216.if ${MACHINE_CPUARCH} == "ia64"
217_libefi=	libefi
218.endif
219
220.if ${MACHINE_CPUARCH} == "mips"
221_libproc=	libproc
222_librtld_db=	librtld_db
223.endif
224
225.if ${MACHINE_CPUARCH} == "powerpc"
226_libproc=	libproc
227_librtld_db=	librtld_db
228.endif
229
230.if ${MK_OPENSSL} != "no"
231_libmp=		libmp
232.endif
233
234.if ${MK_PMC} != "no"
235_libpmc=	libpmc
236.endif
237
238.if ${MK_SENDMAIL} != "no"
239_libmilter=	libmilter
240_libsm=		libsm
241_libsmdb=	libsmdb
242_libsmutil=	libsmutil
243.endif
244
245.if ${MK_TELNET} != "no"
246_libtelnet=	libtelnet
247.endif
248
249.if ${MK_USB} != "no"
250_libusbhid=	libusbhid
251_libusb=	libusb
252.endif
253
254.include <bsd.subdir.mk>
255