]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - share/mk/bsd.libnames.mk
Merge commit 'd84e570b54961e8874bbd8de25635eb96be0977e'
[FreeBSD/FreeBSD.git] / share / mk / bsd.libnames.mk
1 # $FreeBSD$
2
3 # The include file <bsd.libnames.mk> define library names.
4 # Other include files (e.g. bsd.prog.mk, bsd.lib.mk) include this
5 # file where necessary.
6
7 .if !target(__<bsd.init.mk>__)
8 .error bsd.libnames.mk cannot be included directly.
9 .endif
10
11 LIBDESTDIR?=    ${SYSROOT:U${DESTDIR}}
12
13 .sinclude <src.libnames.mk>
14
15 # Src directory locations are also defined in src.libnames.mk.
16
17 LIBCRT0?=       ${LIBDESTDIR}${LIBDIR_BASE}/crt0.o
18
19 LIB80211?=      ${LIBDESTDIR}${LIBDIR_BASE}/lib80211.a
20 LIB9P?=         ${LIBDESTDIR}${LIBDIR_BASE}/lib9p.a
21 LIBALIAS?=      ${LIBDESTDIR}${LIBDIR_BASE}/libalias.a
22 LIBARCHIVE?=    ${LIBDESTDIR}${LIBDIR_BASE}/libarchive.a
23 LIBASN1?=       ${LIBDESTDIR}${LIBDIR_BASE}/libasn1.a
24 LIBATM?=        ${LIBDESTDIR}${LIBDIR_BASE}/libatm.a
25 LIBAUDITD?=     ${LIBDESTDIR}${LIBDIR_BASE}/libauditd.a
26 LIBAVL?=        ${LIBDESTDIR}${LIBDIR_BASE}/libavl.a
27 LIBBE?=         ${LIBDESTDIR}${LIBDIR_BASE}/libbe.a
28 LIBBEGEMOT?=    ${LIBDESTDIR}${LIBDIR_BASE}/libbegemot.a
29 LIBBLACKLIST?=  ${LIBDESTDIR}${LIBDIR_BASE}/libblacklist.a
30 LIBBLOCKSRUNTIME?= ${LIBDESTDIR}${LIBDIR_BASE}/libBlocksRuntime.a
31 LIBBLUETOOTH?=  ${LIBDESTDIR}${LIBDIR_BASE}/libbluetooth.a
32 LIBBSDXML?=     ${LIBDESTDIR}${LIBDIR_BASE}/libbsdxml.a
33 LIBBSM?=        ${LIBDESTDIR}${LIBDIR_BASE}/libbsm.a
34 LIBBSNMP?=      ${LIBDESTDIR}${LIBDIR_BASE}/libbsnmp.a
35 LIBBZ2?=        ${LIBDESTDIR}${LIBDIR_BASE}/libbz2.a
36 LIBC?=          ${LIBDESTDIR}${LIBDIR_BASE}/libc.a
37 LIBCALENDAR?=   ${LIBDESTDIR}${LIBDIR_BASE}/libcalendar.a
38 LIBCAM?=        ${LIBDESTDIR}${LIBDIR_BASE}/libcam.a
39 LIBCOMPAT?=     ${LIBDESTDIR}${LIBDIR_BASE}/libcompat.a
40 LIBCOMPILER_RT?=${LIBDESTDIR}${LIBDIR_BASE}/libcompiler_rt.a
41 LIBCOM_ERR?=    ${LIBDESTDIR}${LIBDIR_BASE}/libcom_err.a
42 LIBCPLUSPLUS?=  ${LIBDESTDIR}${LIBDIR_BASE}/libc++.a
43 LIBCRYPT?=      ${LIBDESTDIR}${LIBDIR_BASE}/libcrypt.a
44 LIBCRYPTO?=     ${LIBDESTDIR}${LIBDIR_BASE}/libcrypto.a
45 LIBCTF?=        ${LIBDESTDIR}${LIBDIR_BASE}/libctf.a
46 LIBCURSES?=     ${LIBDESTDIR}${LIBDIR_BASE}/libcurses.a
47 LIBCUSE?=       ${LIBDESTDIR}${LIBDIR_BASE}/libcuse.a
48 LIBCXGB4?=      ${LIBDESTDIR}${LIBDIR_BASE}/libcxgb4.a
49 LIBCXXRT?=      ${LIBDESTDIR}${LIBDIR_BASE}/libcxxrt.a
50 LIBC_PIC?=      ${LIBDESTDIR}${LIBDIR_BASE}/libc_pic.a
51 LIBDEVCTL?=     ${LIBDESTDIR}${LIBDIR_BASE}/libdevctl.a
52 LIBDEVDCTL?=    ${LIBDESTDIR}${LIBDIR_BASE}/libdevdctl.a
53 LIBDEVINFO?=    ${LIBDESTDIR}${LIBDIR_BASE}/libdevinfo.a
54 LIBDEVSTAT?=    ${LIBDESTDIR}${LIBDIR_BASE}/libdevstat.a
55 LIBDIALOG?=     ${LIBDESTDIR}${LIBDIR_BASE}/libdialog.a
56 LIBDL?=         ${LIBDESTDIR}${LIBDIR_BASE}/libdl.a
57 LIBDNS?=        ${LIBDESTDIR}${LIBDIR_BASE}/libdns.a
58 LIBDPV?=        ${LIBDESTDIR}${LIBDIR_BASE}/libdpv.a
59 LIBDTRACE?=     ${LIBDESTDIR}${LIBDIR_BASE}/libdtrace.a
60 LIBDWARF?=      ${LIBDESTDIR}${LIBDIR_BASE}/libdwarf.a
61 LIBEDIT?=       ${LIBDESTDIR}${LIBDIR_BASE}/libedit.a
62 LIBEFIVAR?=     ${LIBDESTDIR}${LIBDIR_BASE}/libefivar.a
63 LIBELF?=        ${LIBDESTDIR}${LIBDIR_BASE}/libelf.a
64 LIBEXECINFO?=   ${LIBDESTDIR}${LIBDIR_BASE}/libexecinfo.a
65 LIBFETCH?=      ${LIBDESTDIR}${LIBDIR_BASE}/libfetch.a
66 LIBFIGPAR?=     ${LIBDESTDIR}${LIBDIR_BASE}/libfigpar.a
67 LIBFL?=         "don't use LIBFL, use LIBL"
68 LIBFORMW?=      ${LIBDESTDIR}${LIBDIR_BASE}/libformw.a
69 LIBG2C?=        ${LIBDESTDIR}${LIBDIR_BASE}/libg2c.a
70 LIBGEOM?=       ${LIBDESTDIR}${LIBDIR_BASE}/libgeom.a
71 LIBGPIO?=       ${LIBDESTDIR}${LIBDIR_BASE}/libgpio.a
72 LIBGSSAPI?=     ${LIBDESTDIR}${LIBDIR_BASE}/libgssapi.a
73 LIBGSSAPI_KRB5?= ${LIBDESTDIR}${LIBDIR_BASE}/libgssapi_krb5.a
74 LIBHDB?=        ${LIBDESTDIR}${LIBDIR_BASE}/libhdb.a
75 LIBHEIMBASE?=   ${LIBDESTDIR}${LIBDIR_BASE}/libheimbase.a
76 LIBHEIMNTLM?=   ${LIBDESTDIR}${LIBDIR_BASE}/libheimntlm.a
77 LIBHEIMSQLITE?= ${LIBDESTDIR}${LIBDIR_BASE}/libheimsqlite.a
78 LIBHX509?=      ${LIBDESTDIR}${LIBDIR_BASE}/libhx509.a
79 LIBIBCM?=       ${LIBDESTDIR}${LIBDIR_BASE}/libibcm.a
80 LIBIBMAD?=      ${LIBDESTDIR}${LIBDIR_BASE}/libibmad.a
81 LIBIBNETDISC?=  ${LIBDESTDIR}${LIBDIR_BASE}/libibnetdisc.a
82 LIBIBUMAD?=     ${LIBDESTDIR}${LIBDIR_BASE}/libibumad.a
83 LIBIBVERBS?=    ${LIBDESTDIR}${LIBDIR_BASE}/libibverbs.a
84 LIBICP?=        ${LIBDESTDIR}${LIBDIR_BASE}/libicp.a
85 LIBIPSEC?=      ${LIBDESTDIR}${LIBDIR_BASE}/libipsec.a
86 LIBIPT?=        ${LIBDESTDIR}${LIBDIR_BASE}/libipt.a
87 LIBIRDMA?=      ${LIBDESTDIR}${LIBDIR_BASE}/libirdma.a
88 LIBISCSIUTIL?=  ${LIBDESTDIR}${LIBDIR_BASE}/libiscsiutil.a
89 LIBJAIL?=       ${LIBDESTDIR}${LIBDIR_BASE}/libjail.a
90 LIBKADM5CLNT?=  ${LIBDESTDIR}${LIBDIR_BASE}/libkadm5clnt.a
91 LIBKADM5SRV?=   ${LIBDESTDIR}${LIBDIR_BASE}/libkadm5srv.a
92 LIBKAFS5?=      ${LIBDESTDIR}${LIBDIR_BASE}/libkafs5.a
93 LIBKDC?=        ${LIBDESTDIR}${LIBDIR_BASE}/libkdc.a
94 LIBKEYCAP?=     ${LIBDESTDIR}${LIBDIR_BASE}/libkeycap.a
95 LIBKICONV?=     ${LIBDESTDIR}${LIBDIR_BASE}/libkiconv.a
96 LIBKRB5?=       ${LIBDESTDIR}${LIBDIR_BASE}/libkrb5.a
97 LIBKVM?=        ${LIBDESTDIR}${LIBDIR_BASE}/libkvm.a
98 LIBL?=          ${LIBDESTDIR}${LIBDIR_BASE}/libl.a
99 LIBLN?=         "don't use LIBLN, use LIBL"
100 LIBLZMA?=       ${LIBDESTDIR}${LIBDIR_BASE}/liblzma.a
101 LIBM?=          ${LIBDESTDIR}${LIBDIR_BASE}/libm.a
102 LIBMAGIC?=      ${LIBDESTDIR}${LIBDIR_BASE}/libmagic.a
103 LIBMD?=         ${LIBDESTDIR}${LIBDIR_BASE}/libmd.a
104 LIBMEMSTAT?=    ${LIBDESTDIR}${LIBDIR_BASE}/libmemstat.a
105 LIBMENU?=       ${LIBDESTDIR}${LIBDIR_BASE}/libmenu.a
106 LIBMILTER?=     ${LIBDESTDIR}${LIBDIR_BASE}/libmilter.a
107 LIBMLX4?=       ${LIBDESTDIR}${LIBDIR_BASE}/libmlx4.a
108 LIBMLX5?=       ${LIBDESTDIR}${LIBDIR_BASE}/libmlx5.a
109 LIBMP?=         ${LIBDESTDIR}${LIBDIR_BASE}/libmp.a
110 LIBMT?=         ${LIBDESTDIR}${LIBDIR_BASE}/libmt.a
111 LIBNCURSES?=    ${LIBDESTDIR}${LIBDIR_BASE}/libncurses.a
112 LIBNCURSESW?=   ${LIBDESTDIR}${LIBDIR_BASE}/libncursesw.a
113 LIBNETGRAPH?=   ${LIBDESTDIR}${LIBDIR_BASE}/libnetgraph.a
114 LIBNETMAP?=     ${LIBDESTDIR}${LIBDIR_BASE}/libnetmap.a
115 LIBNGATM?=      ${LIBDESTDIR}${LIBDIR_BASE}/libngatm.a
116 LIBNV?=         ${LIBDESTDIR}${LIBDIR_BASE}/libnv.a
117 LIBNVPAIR?=     ${LIBDESTDIR}${LIBDIR_BASE}/libnvpair.a
118 LIBOPENCSD?=    ${LIBDESTDIR}${LIBDIR_BASE}/libopencsd.a
119 LIBOPENSM?=     ${LIBDESTDIR}${LIBDIR_BASE}/libopensm.a
120 LIBOSMCOMP?=    ${LIBDESTDIR}${LIBDIR_BASE}/libosmcomp.a
121 LIBOSMVENDOR?=  ${LIBDESTDIR}${LIBDIR_BASE}/libosmvendor.a
122 LIBPAM?=        ${LIBDESTDIR}${LIBDIR_BASE}/libpam.a
123 LIBPANEL?=      ${LIBDESTDIR}${LIBDIR_BASE}/libpanel.a
124 LIBPANELW?=     ${LIBDESTDIR}${LIBDIR_BASE}/libpanelw.a
125 LIBPCAP?=       ${LIBDESTDIR}${LIBDIR_BASE}/libpcap.a
126 LIBPJDLOG?=     ${LIBDESTDIR}${LIBDIR_BASE}/libpjdlog.a
127 LIBPMC?=        ${LIBDESTDIR}${LIBDIR_BASE}/libpmc.a
128 LIBPROC?=       ${LIBDESTDIR}${LIBDIR_BASE}/libproc.a
129 LIBPROCSTAT?=   ${LIBDESTDIR}${LIBDIR_BASE}/libprocstat.a
130 LIBPTHREAD?=    ${LIBDESTDIR}${LIBDIR_BASE}/libpthread.a
131 LIBRADIUS?=     ${LIBDESTDIR}${LIBDIR_BASE}/libradius.a
132 LIBRDMACM?=     ${LIBDESTDIR}${LIBDIR_BASE}/librdmacm.a
133 LIBREGEX?=      ${LIBDESTDIR}${LIBDIR_BASE}/libregex.a
134 LIBROKEN?=      ${LIBDESTDIR}${LIBDIR_BASE}/libroken.a
135 LIBRPCSEC_GSS?= ${LIBDESTDIR}${LIBDIR_BASE}/librpcsec_gss.a
136 LIBRPCSVC?=     ${LIBDESTDIR}${LIBDIR_BASE}/librpcsvc.a
137 LIBRT?=         ${LIBDESTDIR}${LIBDIR_BASE}/librt.a
138 LIBRTLD_DB?=    ${LIBDESTDIR}${LIBDIR_BASE}/librtld_db.a
139 LIBSBUF?=       ${LIBDESTDIR}${LIBDIR_BASE}/libsbuf.a
140 LIBSDP?=        ${LIBDESTDIR}${LIBDIR_BASE}/libsdp.a
141 LIBSMB?=        ${LIBDESTDIR}${LIBDIR_BASE}/libsmb.a
142 LIBSPL?=        ${LIBDESTDIR}${LIBDIR_BASE}/libspl.a
143 LIBSSL?=        ${LIBDESTDIR}${LIBDIR_BASE}/libssl.a
144 LIBSSP_NONSHARED?=      ${LIBDESTDIR}${LIBDIR_BASE}/libssp_nonshared.a
145 LIBSTATS?=      ${LIBDESTDIR}${LIBDIR_BASE}/libstats.a
146 LIBSTDTHREADS?= ${LIBDESTDIR}${LIBDIR_BASE}/libstdthreads.a
147 LIBSYSDECODE?=  ${LIBDESTDIR}${LIBDIR_BASE}/libsysdecode.a
148 LIBTACPLUS?=    ${LIBDESTDIR}${LIBDIR_BASE}/libtacplus.a
149 LIBTERMCAP?=    ${LIBDESTDIR}${LIBDIR_BASE}/libtermcap.a
150 LIBTERMCAPW?=   ${LIBDESTDIR}${LIBDIR_BASE}/libtermcapw.a
151 LIBTERMLIB?=    "don't use LIBTERMLIB, use LIBTERMCAP"
152 LIBTINFOW=      ${LIBDESTDIR}${LIBDIR_BASE}/libtinfow.a
153 LIBTPOOL?=      ${LIBDESTDIR}${LIBDIR_BASE}/libtpool.a
154 LIBUFS?=        ${LIBDESTDIR}${LIBDIR_BASE}/libufs.a
155 LIBUGIDFW?=     ${LIBDESTDIR}${LIBDIR_BASE}/libugidfw.a
156 LIBULOG?=       ${LIBDESTDIR}${LIBDIR_BASE}/libulog.a
157 LIBUMEM?=       ${LIBDESTDIR}${LIBDIR_BASE}/libumem.a
158 LIBUSB?=        ${LIBDESTDIR}${LIBDIR_BASE}/libusb.a
159 LIBUSBHID?=     ${LIBDESTDIR}${LIBDIR_BASE}/libusbhid.a
160 LIBUTIL?=       ${LIBDESTDIR}${LIBDIR_BASE}/libutil.a
161 LIBUUTIL?=      ${LIBDESTDIR}${LIBDIR_BASE}/libuutil.a
162 LIBVGL?=        ${LIBDESTDIR}${LIBDIR_BASE}/libvgl.a
163 LIBVMMAPI?=     ${LIBDESTDIR}${LIBDIR_BASE}/libvmmapi.a
164 LIBWIND?=       ${LIBDESTDIR}${LIBDIR_BASE}/libwind.a
165 LIBWRAP?=       ${LIBDESTDIR}${LIBDIR_BASE}/libwrap.a
166 LIBXO?=         ${LIBDESTDIR}${LIBDIR_BASE}/libxo.a
167 LIBXPG4?=       ${LIBDESTDIR}${LIBDIR_BASE}/libxpg4.a
168 LIBY?=          ${LIBDESTDIR}${LIBDIR_BASE}/liby.a
169 LIBYPCLNT?=     ${LIBDESTDIR}${LIBDIR_BASE}/libypclnt.a
170 LIBZ?=          ${LIBDESTDIR}${LIBDIR_BASE}/libz.a
171 LIBZFS?=        ${LIBDESTDIR}${LIBDIR_BASE}/libzfs.a
172 LIBZFS_CORE?=   ${LIBDESTDIR}${LIBDIR_BASE}/libzfs_core.a
173 LIBZFSBOOTENV?= ${LIBDESTDIR}${LIBDIR_BASE}/libzfsbootenv.a
174 LIBZPOOL?=      ${LIBDESTDIR}${LIBDIR_BASE}/libzpool.a
175 LIBZUTIL?=      ${LIBDESTDIR}${LIBDIR_BASE}/libzutil.a
176
177 # enforce the 2 -lpthread and -lc to always be the last in that exact order
178 .if defined(LDADD)
179 .if ${LDADD:M-lpthread}
180 LDADD:= ${LDADD:N-lpthread} -lpthread
181 .endif
182 .if ${LDADD:M-lc}
183 LDADD:= ${LDADD:N-lc} -lc
184 .endif
185 .endif
186
187 # Only do this for src builds.
188 .if defined(SRCTOP)
189 .if defined(_LIBRARIES) && defined(LIB) && \
190     ${_LIBRARIES:M${LIB}} != ""
191 .if !defined(LIB${LIB:tu})
192 .error ${.CURDIR}: Missing value for LIB${LIB:tu} in ${_this:T}.  Likely should be: LIB${LIB:tu}?= $${LIBDESTDIR}$${LIBDIR_BASE}/lib${LIB}.a
193 .endif
194 .endif
195
196 # Derive LIB*SRCDIR from LIB*DIR
197 .for lib in ${_LIBRARIES}
198 LIB${lib:tu}SRCDIR?=    ${SRCTOP}/${LIB${lib:tu}DIR:S,^${OBJTOP}/,,}
199 .endfor
200 .else
201
202 # Out of tree builds
203
204 # There are LIBADD defined in an out-of-tree build.  Are they *all*
205 # in-tree libraries?  If so convert them to LDADD to support
206 # partial checkouts.
207 .if !empty(LIBADD)
208 _convert_libadd=        1
209 .for l in ${LIBADD}
210 .if empty(LIB${l:tu})
211 _convert_libadd=        0
212 .endif
213 .endfor
214 .if ${_convert_libadd} == 1
215 .warning Converting out-of-tree build LIBADDs into LDADD.  This is not fully supported.
216 .for l in ${LIBADD}
217 LDADD+= -l${l}
218 .endfor
219 .endif
220 .endif
221
222 .endif  # defined(SRCTOP)