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