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