1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-23 11:18:54 +00:00
freebsd/lib/Makefile
Ed Schouten 39cd938c39 Replace libgcc.a by libcompiler_rt.a.
libcompiler_rt.a is a BSD licensed C language runtime, which implements
many routines which are linked into binaries on architectures where
certain functionality is missing (e.g. 64 bits mul/div on i386).

Unfortunately, libcompiler_rt cannot replace libgcc entirely. Certain
features, such as an unwinder for exception handling, are missing.
That's why only libgcc.a is replaced for now, because this one does seem
to be complete.

Tested by:	rene (amd64), nwhitehorn (powerpc), droso (i386 exprun)
		and many others. Thanks!
Obtained from:	user/ed/compiler-rt
2010-11-11 15:48:27 +00:00

233 lines
4.0 KiB
Makefile

# @(#)Makefile 8.1 (Berkeley) 6/4/93
# $FreeBSD$
.include <bsd.own.mk>
# To satisfy shared library or ELF linkage when only the libraries being
# built are visible:
#
# csu must be built before all shared libaries for ELF.
# libc must be built before all other shared libraries.
# libbsm must be built before ibauditd.
# libcom_err must be built before libpam.
# libcrypt must be built before libpam.
# libkvm must be built before libdevstat.
# msun must be built before libg++ and libstdc++.
# libmd must be built before libatm, libopie, libradius, and libtacplus.
# ncurses must be built before libdialog, libedit and libreadline.
# libnetgraph must be built before libbsnmp/modules/snmp_netgraph.
# libopie must be built before libpam.
# libradius must be built before libpam.
# librpcsvc must be built before libpam.
# libsbuf must be built before libcam.
# libtacplus must be built before libpam.
# libutil must be built before libpam.
# libypclnt must be built before libpam.
# libgssapi must be built before librpcsec_gss
#
# Otherwise, the SUBDIR list should be in alphabetical order.
#
# Except it appears bind needs to be compiled last
SUBDIR_ORDERED= ${_csu} \
libc \
libbsm \
libauditd \
libcom_err \
libcompiler_rt \
libcrypt \
libelf \
libkvm \
msun \
libmd \
ncurses \
${_libnetgraph} \
libradius \
librpcsvc \
libsbuf \
libtacplus \
libutil \
${_libypclnt}
SUBDIR= ${SUBDIR_ORDERED} \
libalias \
libarchive \
${_libatm} \
libbegemot \
libblocksruntime \
${_libbluetooth} \
${_libbsnmp} \
libbz2 \
libcalendar \
libcam \
libcompat \
libdevinfo \
libdevstat \
libdisk \
libdwarf \
libedit \
${_libefi} \
libexpat \
libfetch \
libftpio \
libgeom \
${_libgpib} \
${_libgssapi} \
${_librpcsec_gss} \
libipsec \
${_libipx} \
libjail \
libkiconv \
liblzma \
libmagic \
libmemstat \
${_libmilter} \
${_libmp} \
${_libncp} \
${_libngatm} \
libopie \
libpam \
libpcap \
${_libpkg} \
${_libpmc} \
${_libproc} \
librt \
${_librtld_db} \
${_libsdp} \
${_libsm} \
${_libsmb} \
${_libsmdb} \
${_libsmutil} \
libstand \
${_libtelnet} \
${_libthr} \
libthread_db \
libufs \
libugidfw \
libulog \
${_libusbhid} \
${_libusb} \
${_libvgl} \
libwrap \
liby \
libz \
${_bind} \
${_clang}
.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf)
_csu=csu/${MACHINE_ARCH}-elf
.elif exists(${.CURDIR}/csu/${MACHINE_ARCH})
_csu=csu/${MACHINE_ARCH}
.elif exists(${.CURDIR}/csu/${MACHINE_CPUARCH}/Makefile)
_csu=csu/${MACHINE_CPUARCH}
.else
_csu=csu
.endif
# NB: keep these sorted by MK_* knobs
.if ${MK_ATM} != "no"
_libngatm= libngatm
.endif
.if ${MK_BIND} != "no"
_bind= bind
.endif
.if ${MK_BLUETOOTH} != "no"
_libbluetooth= libbluetooth
_libsdp= libsdp
.endif
.if ${MK_BSNMP} != "no"
_libbsnmp= libbsnmp
.endif
.if ${MK_CLANG} != "no" && !defined(COMPAT_32BIT)
_clang= clang
.endif
.if ${MK_GPIB} != "no"
_libgpib= libgpib
.endif
.if ${MK_GSSAPI} != "no"
_libgssapi= libgssapi
_librpcsec_gss= librpcsec_gss
.endif
.if ${MK_IPX} != "no"
_libipx= libipx
.endif
.if ${MK_LIBTHR} != "no"
_libthr= libthr
.endif
.if ${MK_NETGRAPH} != "no"
_libnetgraph= libnetgraph
.endif
.if ${MK_NIS} != "no"
_libypclnt= libypclnt
.endif
.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
.if ${MK_NCP} != "no"
_libncp= libncp
.endif
_libsmb= libsmb
_libvgl= libvgl
_libproc= libproc
_librtld_db= librtld_db
.endif
.if ${MACHINE_CPUARCH} == "ia64"
_libefi= libefi
_libsmb= libsmb
.endif
.if ${MACHINE_CPUARCH} == "amd64"
.if ${MK_NCP} != "no"
_libncp= libncp
.endif
.endif
.if ${MACHINE_CPUARCH} == "powerpc"
_libsmb= libsmb
.endif
.if ${MACHINE_CPUARCH} == "sparc64"
_libsmb= libsmb
.endif
.if ${MK_OPENSSL} != "no"
_libmp= libmp
.endif
.if ${MK_PMC} != "no"
_libpmc= libpmc
.endif
.if ${MK_PKGTOOLS} != "no"
_libpkg= libpkg
.endif
.if ${MK_SENDMAIL} != "no"
_libmilter= libmilter
_libsm= libsm
_libsmdb= libsmdb
_libsmutil= libsmutil
.endif
.if ${MK_TELNET} != "no"
_libtelnet= libtelnet
.endif
.if ${MK_USB} != "no"
_libusbhid= libusbhid
_libusb= libusb
.endif
.include <bsd.subdir.mk>