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