]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - share/mk/src.libnames.mk
Merge ^/head r274961 through r275386.
[FreeBSD/FreeBSD.git] / share / mk / src.libnames.mk
1 # $FreeBSD$
2 #
3 # The include file <src.libnames.mk> define library names suitable
4 # for INTERNALLIB and PRIVATELIB definition
5
6 .if !target(__<bsd.init.mk>__)
7 .error src.libnames.mk cannot be included directly.
8 .endif
9
10 .include <src.opts.mk>
11
12 ROOTSRCDIR=     ${.MAKE.MAKEFILES:M*/src.libnames.mk:H:H:H}
13 ROOTOBJDIR=     ${.OBJDIR:S/${.CURDIR}//}${ROOTSRCDIR}
14 _PRIVATELIBS=   \
15                 atf_c \
16                 atf_cxx \
17                 bsdstat \
18                 heimipcc \
19                 heimipcs \
20                 ldns \
21                 sqlite3 \
22                 ssh \
23                 ucl \
24                 unbound
25
26 _INTERNALIBS=   \
27                 amu \
28                 bsnmptools \
29                 cron \
30                 elftc \
31                 event \
32                 fifolog \
33                 ipf \
34                 lpr \
35                 mandoc \
36                 netbsd \
37                 ntp \
38                 ohash \
39                 opts \
40                 parse \
41                 readline \
42                 sl \
43                 sm \
44                 smdb \
45                 smutil \
46                 telnet \
47                 vers
48
49 _LIBRARIES=     \
50                 ${_PRIVATELIBS} \
51                 ${_INTERNALIBS} \
52                 alias \
53                 archive \
54                 asn1 \
55                 auditd \
56                 begemot \
57                 bluetooth \
58                 bsdxml \
59                 bsm \
60                 bsnmp \
61                 bz2 \
62                 c \
63                 c_pic \
64                 calendar \
65                 cam \
66                 capsicum \
67                 casper \
68                 com_err \
69                 compiler_rt \
70                 crypt \
71                 crypto \
72                 ctf \
73                 cuse \
74                 cxxrt \
75                 devinfo \
76                 devstat \
77                 dialog \
78                 dpv \
79                 dwarf \
80                 edit \
81                 elf \
82                 execinfo \
83                 fetch \
84                 figpar \
85                 geom \
86                 gnuregex \
87                 gssapi \
88                 gssapi_krb5 \
89                 hdb \
90                 heimbase \
91                 heimntlm \
92                 heimsqlite \
93                 hx509 \
94                 ipsec \
95                 jail \
96                 kadm5clnt \
97                 kadm5srv \
98                 kafs5 \
99                 kdc \
100                 kiconv \
101                 krb5 \
102                 kvm \
103                 l \
104                 lzma \
105                 m \
106                 magic \
107                 mandoc \
108                 md \
109                 memstat \
110                 mp \
111                 nandfs \
112                 ncursesw \
113                 netgraph \
114                 ngatm \
115                 nv \
116                 opie \
117                 pam \
118                 pcap \
119                 pcsclite \
120                 pjdlog \
121                 pmc \
122                 proc \
123                 procstat \
124                 pthread \
125                 radius \
126                 readline \
127                 roken \
128                 rpcsec_gss \
129                 rpcsvc \
130                 rt \
131                 sbuf \
132                 sdp \
133                 sm \
134                 smb \
135                 ssl \
136                 ssp_nonshared \
137                 stdthreads \
138                 supcplusplus \
139                 tacplus \
140                 termcapw \
141                 ufs \
142                 ugidfw \
143                 ulog \
144                 usb \
145                 usbhid \
146                 util \
147                 vmmapi \
148                 wind \
149                 wrap \
150                 xo \
151                 y \
152                 ypclnt \
153                 z
154
155 _DP_archive=    z bz2 lzma bsdxml
156 .if ${MK_OPENSSL} != "no"
157 _DP_archive+=   crypto
158 .else
159 _DP_archive+=   md
160 .endif
161 _DP_ssl=        crypto
162 _DP_ssh=        crypto crypt
163 .if ${MK_LDNS} != "no"
164 _DP_ssh+=       ldns z
165 .endif
166 _DP_edit=       ncursesw
167 .if ${MK_OPENSSL} != "no"
168 _DP_bsnmp=      crypto
169 .endif
170 _DP_grom=       bsdxml sbuf
171 _DP_cam=        sbuf
172 _DP_casper=     capsicum nv pjdlog
173 _DP_capsicum=   nv
174 _DP_pjdlog=     util
175 _DP_opie=       md
176 _DP_usb=        pthread
177 _DP_unbound=    pthread
178 _DP_rt= pthread
179 .if ${MK_OPENSSL} == "no"
180 _DP_radius=     md
181 .else
182 _DP_radius=     crypto
183 .endif
184 _DP_procstat=   kvm util elf
185 .if ${MK_CXX} == "yes"
186 .if ${MK_LIBCPLUSPLUS} != "no"
187 _DP_proc=       cxxrt
188 .else
189 _DP_proc=       supcplusplus
190 .endif
191 .endif
192 .if ${MK_CDDL} != "no"
193 _DP_proc+=      ctf
194 .endif
195 _DP_mp= crypto
196 _DP_memstat=    kvm
197 _DP_magic=      z
198 _DP_ldns=       crypto
199 .if ${MK_OPENSSL} != "no"
200 _DP_fetch=      ssl crypto
201 .else
202 _DP_fetch=      md
203 .endif
204 _DP_execinfo=   elf
205 _DP_dwarf=      elf
206 _DP_dpv=        dialog figpar util
207 _DP_dialog=     ncursesw m
208 _DP_cuse=       pthread
209 _DP_atf_cxx=    atf_c
210 _DP_devstat=    kvm
211 _DP_pam=        radius tacplus opie md util
212 .if ${MK_KERBEROS} != "no"
213 _DP_pam+=       krb5
214 .endif
215 .if ${MK_OPENSSH} != "no"
216 _DP_pam+=       ssh
217 .endif
218 .if ${MK_NIS} != "no"
219 _DP_pam+=       ypclnt
220 .endif
221 _DP_krb5+=      asn1 com_err crypt crypto hx509 roken wind heimbase heimipcc \
222                 pthread
223 _DP_gssapi_krb5+=       gssapi krb5 crypto roken asn1 com_err
224 _DP_ucl=        m
225
226 # Define spacial cases
227 LDADD_supcplusplus=     -lsupc++
228 LDADD_atf_c=    -L${LIBATF_CDIR} -latf-c
229 LDADD_atf_cxx=  -L${LIBATF_CXXDIR} -latf-c++
230
231 .for _l in ${_LIBRARIES}
232 .if ${_PRIVATELIBS:M${_l}}
233 LDADD_${_l}_L+=         -L${LIB${_l:tu}DIR}
234 .endif
235 .if ${_INTERNALIBS:M${_l}}
236 LDADD_${_l}_L+=         -L${LIB${_l:tu}DIR}
237 .endif
238 DPADD_${_l}?=   ${LIB${_l:tu}}
239 LDADD_${_l}?=   ${LDADD_${_l}_L} -l${_l}
240 .if defined(_DP_${_l}) && defined(NO_SHARED)
241 .for _d in ${_DP_${_l}}
242 DPADD_${_l}+=   ${DPADD_${_d}}
243 LDADD_${_l}+=   ${LDADD_${_d}}
244 .endfor
245 .endif
246 .endfor
247
248 DPADD_sqlite3+= ${DPADD_pthread}
249 LDADD_sqlite3+= ${LDADD_pthread}
250
251 DPADD_atf_cxx+= ${DPADD_atf_c}
252 LDADD_atf_cxx+= ${LDADD_atf_c}
253
254 DPADD_ipf+=     ${DPADD_kvm}
255 LDADD_ipf+=     ${LDADD_kvm}
256
257 # The following depends on libraries which are using pthread
258 DPADD_hdb+=     ${DPADD_pthread}
259 LDADD_hdb+=     ${LDADD_pthread}
260 DPADD_kadm5srv+=        ${DPADD_pthread}
261 LDADD_kadm5srv+=        ${LDADD_pthread}
262 DPADD_krb5+=    ${DPADD_pthread}
263 LDADD_krb5+=    ${LDADD_pthread}
264 DPADD_gssapi_krb5+=     ${DPADD_pthread}
265 LDADD_gssapi_krb5+=     ${LDADD_pthread}
266
267 .for _l in ${LIBADD}
268 .if ${_PRIVATELIBS:M${_l}}
269 USEPRIVATELIB+= ${_l}
270 .endif
271 DPADD+=         ${DPADD_${_l}}
272 LDADD+=         ${LDADD_${_l}}
273 .endfor
274
275 .if defined(USEPRIVATELIB)
276 LDFLAGS+=       -rpath ${LIBPRIVATEDIR}
277 .endif
278
279 LIBATF_CDIR=    ${ROOTOBJDIR}/lib/atf/libatf-c
280 LDATF_C?=       ${LIBATF_CDIR}/libatf-c.so
281 LIBATF_C?=      ${LIBATF_CDIR}/libatf-c.a
282
283 LIBATF_CXXDIR=  ${ROOTOBJDIR}/lib/atf/libatf-c++
284 LDATF_CXX?=     ${LIBATF_CXXDIR}/libatf-c++.so
285 LIBATF_CXX?=    ${LIBATF_CXXDIR}/libatf-c++.a
286
287 LIBBSDSTATDIR=  ${ROOTOBJDIR}/lib/libbsdstat
288 LIBBSDSTAT?=    ${LIBBSDSTATDIR}/libbsdstat.a
289
290 LIBELFTCDIR=    ${ROOTOBJDIR}/lib/libelftc
291 LDELFTC?=       ${LIBELFTCDIR}/libelftc.a
292 LIBELFTC?=      ${LIBELFTCDIR}/libelftc.a
293
294 LIBEVENTDIR=    ${ROOTOBJDIR}/lib/libevent
295 LIBEVENT?=      ${LIBEVENTDIR}/libevent.a
296
297 LIBHEIMIPCCDIR= ${ROOTOBJDIR}/kerberos5/lib/libheimipcc
298 LIBHEIMIPCC?=   ${LIBHEIMIPCCDIR}/libheimipcc.a
299
300 LIBHEIMIPCSDIR= ${ROOTOBJDIR}/kerberos5/lib/libheimipcs
301 LIBHEIMIPCS?=   ${LIBHEIMIPCSDIR}/libheimipcs.a
302
303 LIBLDNSDIR=     ${ROOTOBJDIR}/lib/libldns
304 LIBLDNS?=       ${LIBLDNSDIR}/libldns.a
305
306 LIBSSHDIR=      ${ROOTOBJDIR}/secure/lib/libssh
307 LIBSSH?=        ${LIBSSHDIR}/libssh.a
308
309 LIBUNBOUNDDIR=  ${ROOTOBJDIR}/lib/libunbound
310 LIBUNBOUND?=    ${LIBUNBOUNDDIR}/libunbound.a
311
312 LIBUCLDIR=      ${ROOTOBJDIR}/lib/libucl
313 LIBUCL?=        ${LIBUCLDIR}/libucl.a
314
315 LIBREADLINEDIR= ${ROOTOBJDIR}/gnu/lib/libreadline/readline
316 LIBREADLINE?=   ${LIBREADLINEDIR}/libreadline.a
317
318 LIBOHASHDIR=    ${ROOTOBJDIR}/lib/libohash
319 LIBOHASH?=      ${LIBOHASHDIR}/libohash.a
320
321 LIBSQLITE3DIR=  ${ROOTOBJDIR}/lib/libsqlite3
322 LIBSQLITE3?=    ${LIBSQLITE3DIR}/libsqlite3.a
323
324 LIBMANDOCDIR=   ${ROOTOBJDIR}/lib/libmandoc
325 LIBMANDOC?=     ${LIBMANDOCDIR}/libmandoc.a
326
327 LIBSMDIR=       ${ROOTOBJDIR}/lib/libsm
328 LIBSM?=         ${LIBSMDIR}/libsm.a
329
330 LIBSMDBDIR=     ${ROOTOBJDIR}/lib/libsmdb
331 LIBSMDB?=       ${LIBSMDBDIR}/libsmdb.a
332
333 LIBSMUTILDIR=   ${ROOTOBJDIR}/lib/libsmutil
334 LIBSMUTIL?=     ${LIBSMDBDIR}/libsmutil.a
335
336 LIBNETBSDDIR?=  ${ROOTOBJDIR}/lib/libnetbsd
337 LIBNETBSD?=     ${LIBNETBSDDIR}/libnetbsd.a
338
339 LIBVERSDIR?=    ${ROOTOBJDIR}/kerberos5/lib/libvers
340 LIBVERS?=       ${LIBVERSDIR}/libvers.a
341
342 LIBSLDIR=       ${ROOTOBJDIR}/kerberos5/lib/libsl
343 LIBSL?=         ${LIBSLDIR}/libsl.a
344
345 LIBIPFDIR=      ${ROOTOBJDIR}/sbin/ipf/libipf
346 LIBIPF?=        ${LIBIPFDIR}/libipf.a
347
348 LIBTELNETDIR=   ${ROOTOBJDIR}/lib/libtelnet
349 LIBTELNET?=     ${LIBIPFDIR}/libtelnet.a
350
351 LIBCRONDIR=     ${ROOTOBJDIR}/usr.sbin/cron/lib
352 LIBCRON?=       ${LIBCRONDIR}/libcron.a
353
354 LIBNTPDIR=      ${ROOTOBJDIR}/usr.sbin/ntp/libntp
355 LIBNTP?=        ${LIBNTPDIR}/libntp.a
356
357 LIBOPTSDIR=     ${ROOTOBJDIR}/usr.sbin/ntp/libopts
358 LIBOTPS?=       ${LIBOPTSDIR}/libopts.a
359
360 LIBPARSEDIR=    ${ROOTOBJDIR}/usr.sbin/ntp/libparse
361 LIBPARSE?=      ${LIBOPTSDIR}/libparse.a
362
363 LIBLPRDIR=      ${ROOTOBJDIR}/usr.sbin/lpr/common_source
364 LIBLPR?=        ${LIBOPTSDIR}/liblpr.a
365
366 LIBFIFOLOGDIR=  ${ROOTOBJDIR}/usr.sbin/fifolog/lib
367 LIBFIFOLOG?=    ${LIBOPTSDIR}/libfifolog.a
368
369 LIBBSNMPTOOLSDIR=       ${ROOTOBJDIR}/usr.sbin/bsnmpd/tools/libbsnmptools
370 LIBBSNMPTOOLS?= ${LIBBSNMPTOOLSDIR}/libbsnmptools.a
371
372 LIBAMUDIR=      ${ROOTOBJDIR}/usr.sbin/amd/libamu
373 LIBAMU?=        ${LIBAMUDIR}/libamu/libamu.a
374