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