Makefile revision 228989
1#	@(#)Makefile	8.1 (Berkeley) 6/4/93
2# $FreeBSD: head/lib/Makefile 228989 2011-12-30 10:45:00Z rwatson $
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	libcom_err \
37	libcompiler_rt \
38	libcrypt \
39	libelf \
40	${_libiconv_modules} \
41	libkvm \
42	msun \
43	libmd \
44	ncurses \
45	${_libnetgraph} \
46	libradius \
47	librpcsvc \
48	libsbuf \
49	libtacplus \
50	libutil \
51	${_libypclnt} \
52	${_libcxxrt} \
53	${_libcplusplus}
54
55SUBDIR=	${SUBDIR_ORDERED} \
56	libalias \
57	libarchive \
58	${_libatm} \
59	libbegemot \
60	libblocksruntime \
61	${_libbluetooth} \
62	${_libbsnmp} \
63	libbz2 \
64	libcalendar \
65	libcam \
66	libcompat \
67	libdevinfo \
68	libdevstat \
69	libdisk \
70	libdwarf \
71	libedit \
72	${_libefi} \
73	libexpat \
74	libfetch \
75	libgeom \
76	${_libgpib} \
77	${_libgssapi} \
78	${_librpcsec_gss} \
79	libipsec \
80	${_libipx} \
81	libjail \
82	libkiconv \
83	liblzma \
84	libmagic \
85	libmemstat \
86	${_libmilter} \
87	${_libmp} \
88	${_libncp} \
89	${_libngatm} \
90	libopie \
91	libpam \
92	libpcap \
93	${_libpmc} \
94	${_libproc} \
95	libprocstat \
96	librt \
97	${_librtld_db} \
98	${_libsdp} \
99	${_libsm} \
100	${_libsmb} \
101	${_libsmdb} \
102	${_libsmutil} \
103	libstand \
104	libstdthreads \
105	${_libtelnet} \
106	${_libthr} \
107	libthread_db \
108	libufs \
109	libugidfw \
110	libulog \
111	${_libusbhid} \
112	${_libusb} \
113	${_libvgl} \
114	libwrap \
115	liby \
116	libz \
117	${_bind} \
118	${_clang}
119
120.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf)
121_csu=csu/${MACHINE_ARCH}-elf
122.elif exists(${.CURDIR}/csu/${MACHINE_ARCH})
123_csu=csu/${MACHINE_ARCH}
124.elif exists(${.CURDIR}/csu/${MACHINE_CPUARCH}/Makefile)
125_csu=csu/${MACHINE_CPUARCH}
126.else
127_csu=csu
128.endif
129
130# NB: keep these sorted by MK_* knobs
131
132.if ${MK_ATM} != "no"
133_libngatm=	libngatm
134.endif
135
136.if ${MK_BIND} != "no"
137_bind=		bind
138.endif
139
140.if ${MK_BLUETOOTH} != "no"
141_libbluetooth=	libbluetooth
142_libsdp=	libsdp
143.endif
144
145.if ${MK_BSNMP} != "no"
146_libbsnmp=	libbsnmp
147.endif
148
149.if ${MK_CLANG} != "no" && !defined(COMPAT_32BIT)
150_clang=		clang
151.endif
152
153.if ${MK_GPIB} != "no"
154_libgpib=	libgpib
155.endif
156
157.if ${MK_GSSAPI} != "no"
158_libgssapi=	libgssapi
159_librpcsec_gss=	librpcsec_gss
160.endif
161
162.if ${MK_ICONV} != "no"
163_libiconv_modules=	libiconv_modules
164.endif
165
166.if ${MK_IPX} != "no"
167_libipx=	libipx
168.endif
169
170.if ${MK_LIBTHR} != "no"
171_libthr=	libthr
172.endif
173
174.if ${MK_NETGRAPH} != "no"
175_libnetgraph=	libnetgraph
176.endif
177
178.if ${MK_NIS} != "no"
179_libypclnt=	libypclnt
180.endif
181
182.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
183.if ${MK_NCP} != "no"
184_libncp=	libncp
185.endif
186_libsmb=	libsmb
187_libvgl=	libvgl
188_libproc=	libproc
189_librtld_db=	librtld_db
190.endif
191
192.if ${MACHINE_CPUARCH} == "ia64"
193_libefi=	libefi
194_libsmb=	libsmb
195.endif
196
197.if ${MACHINE_CPUARCH} == "powerpc"
198_libsmb=	libsmb
199.endif
200
201.if ${MACHINE_CPUARCH} == "sparc64"
202_libsmb=	libsmb
203.endif
204
205.if ${MK_OPENSSL} != "no"
206_libmp=		libmp
207.endif
208
209.if ${MK_LIBCPLUSPLUS} != "no"
210_libcxxrt=	libcxxrt
211_libcplusplus=	libc++
212.endif
213
214.if ${MK_PMC} != "no"
215_libpmc=	libpmc
216.endif
217
218.if ${MK_SENDMAIL} != "no"
219_libmilter=	libmilter
220_libsm=		libsm
221_libsmdb=	libsmdb
222_libsmutil=	libsmutil
223.endif
224
225.if ${MK_TELNET} != "no"
226_libtelnet=	libtelnet
227.endif
228
229.if ${MK_USB} != "no"
230_libusbhid=	libusbhid
231_libusb=	libusb
232.endif
233
234.include <bsd.subdir.mk>
235