Makefile revision 242723
1#	@(#)Makefile	8.1 (Berkeley) 6/4/93
2# $FreeBSD: head/lib/Makefile 242723 2012-11-07 23:45:09Z jhibbits $
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	libdisk \
73	libdwarf \
74	libedit \
75	${_libefi} \
76	libexpat \
77	libfetch \
78	libgeom \
79	${_libgpib} \
80	${_libgssapi} \
81	${_librpcsec_gss} \
82	libipsec \
83	${_libipx} \
84	libjail \
85	libkiconv \
86	liblzma \
87	libmagic \
88	libmandoc \
89	libmemstat \
90	${_libmilter} \
91	${_libmp} \
92	${_libnandfs} \
93	${_libngatm} \
94	libopie \
95	libpam \
96	libpcap \
97	${_libpmc} \
98	${_libproc} \
99	libprocstat \
100	librt \
101	${_librtld_db} \
102	${_libsdp} \
103	${_libsm} \
104	${_libsmdb} \
105	${_libsmutil} \
106	libstand \
107	libstdbuf \
108	libstdthreads \
109	${_libtelnet} \
110	${_libthr} \
111	libthread_db \
112	libufs \
113	libugidfw \
114	libulog \
115	${_libusbhid} \
116	${_libusb} \
117	${_libvgl} \
118	libwrap \
119	liby \
120	libz \
121	${_atf} \
122	${_bind} \
123	${_clang}
124
125.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf)
126_csu=csu/${MACHINE_ARCH}-elf
127.elif exists(${.CURDIR}/csu/${MACHINE_ARCH})
128_csu=csu/${MACHINE_ARCH}
129.elif exists(${.CURDIR}/csu/${MACHINE_CPUARCH}/Makefile)
130_csu=csu/${MACHINE_CPUARCH}
131.else
132_csu=csu
133.endif
134
135# NB: keep these sorted by MK_* knobs
136
137.if ${MK_ATF} != "no"
138_atf=		atf
139.endif
140
141.if ${MK_ATM} != "no"
142_libngatm=	libngatm
143.endif
144
145.if ${MK_BIND} != "no"
146_bind=		bind
147.endif
148
149.if ${MK_BLUETOOTH} != "no"
150_libbluetooth=	libbluetooth
151_libsdp=	libsdp
152.endif
153
154.if ${MK_BSNMP} != "no"
155_libbsnmp=	libbsnmp
156.endif
157
158.if ${MK_CLANG} != "no" && !defined(COMPAT_32BIT)
159_clang=		clang
160.endif
161
162.if ${MK_GPIB} != "no"
163_libgpib=	libgpib
164.endif
165
166.if ${MK_GSSAPI} != "no"
167_libgssapi=	libgssapi
168_librpcsec_gss=	librpcsec_gss
169.endif
170
171.if ${MK_ICONV} != "no"
172_libiconv_modules=	libiconv_modules
173.endif
174
175.if ${MK_IPX} != "no"
176_libipx=	libipx
177.endif
178
179.if ${MK_LIBTHR} != "no"
180_libthr=	libthr
181.endif
182
183.if ${MK_NAND} != "no"
184_libnandfs=	libnandfs
185.endif
186
187.if ${MK_NETGRAPH} != "no"
188_libnetgraph=	libnetgraph
189.endif
190
191.if ${MK_NIS} != "no"
192_libypclnt=	libypclnt
193.endif
194
195.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
196_libvgl=	libvgl
197_libproc=	libproc
198_librtld_db=	librtld_db
199.endif
200
201.if ${MACHINE_CPUARCH} == "ia64"
202_libefi=	libefi
203.endif
204
205.if ${MACHINE_CPUARCH} == "mips"
206_libproc=	libproc
207_librtld_db=	librtld_db
208.endif
209
210.if ${MACHINE_CPUARCH} == "powerpc"
211_libproc=	libproc
212_librtld_db=	librtld_db
213.endif
214
215.if ${MK_OPENSSL} != "no"
216_libmp=		libmp
217.endif
218
219.if ${MK_LIBCPLUSPLUS} != "no"
220_libcxxrt=	libcxxrt
221_libcplusplus=	libc++
222.endif
223
224.if ${MK_PMC} != "no"
225_libpmc=	libpmc
226.endif
227
228.if ${MK_SENDMAIL} != "no"
229_libmilter=	libmilter
230_libsm=		libsm
231_libsmdb=	libsmdb
232_libsmutil=	libsmutil
233.endif
234
235.if ${MK_TELNET} != "no"
236_libtelnet=	libtelnet
237.endif
238
239.if ${MK_USB} != "no"
240_libusbhid=	libusbhid
241_libusb=	libusb
242.endif
243
244.include <bsd.subdir.mk>
245