xref: /freebsd/lib/Makefile (revision a7c9f05a712a86a7f1ea73b8d0bde37b16499901)
158f0484fSRodney W. Grimes#	@(#)Makefile	8.1 (Berkeley) 6/4/93
27f3dea24SPeter Wemm# $FreeBSD$
3c9811e98SBruce Evans
4c9811e98SBruce Evans# To satisfy shared library or ELF linkage when only the libraries being
5c9811e98SBruce Evans# built are visible:
6c9811e98SBruce Evans#
70f09aefaSBruce Evans# csu must be built before all shared libaries for ELF.
8c5da4b13SBruce Evans# libcom_err must be built before libkrb, libpam and libss.
9c5da4b13SBruce Evans# libcrypt must be built before libkrb, libpam and libskey.
10c5da4b13SBruce Evans# libm must be built before libg++ and libstdc++.
11a7c9f05aSBruce Evans# libmd must be built before libatm, libopie, libradius, libskey, and
12a7c9f05aSBruce Evans# libtacplus.
1368db2328SPeter Wemm# libncurses must be built before libdialog, libedit and libreadline.
1460da54eeSJohn Polstra# libradius must be built before libpam.
1560da54eeSJohn Polstra# libskey must be built before libpam.
1660da54eeSJohn Polstra# libtacplus must be built before libpam.
17c5da4b13SBruce Evans# libutil must be built before libpam.
18c9811e98SBruce Evans#
19c9811e98SBruce Evans# Otherwise, the SUBDIR list should be in alphabetical order.
20c9811e98SBruce Evans
21a7c9f05aSBruce EvansSUBDIR=	${_csu} libcom_err ${_libcrypt} ${_libm} libmd \
225f34a652SBruce Evans	libncurses libradius libskey libtacplus libutil \
23072355e0SPeter Wemm	${_compat} libalias libatm ${_libbind} libc ${_libc_r} libcalendar \
24072355e0SPeter Wemm	libcam libcompat libdevstat libdisk libedit libfetch libform \
259a4365d0SYoshinobu Inoue	libftpio libgnumalloc ${_libio} libipsec libipx libkvm libmenu \
269a4365d0SYoshinobu Inoue	${_libncp} \
27cd7249ffSRobert Watson	libnetgraph libopie libpam libpanel libpcap \
28cd7249ffSRobert Watson	libposix1e libresolv librpcsvc libss \
295f34a652SBruce Evans	libstand ${_libtelnet} ${_libvgl} libwrap libxpg4 liby libz
3058f0484fSRodney W. Grimes
318deb7ff0SJohn Birrell.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-${OBJFORMAT})
328deb7ff0SJohn Birrell_csu=csu/${MACHINE_ARCH}-${OBJFORMAT}
335f160d14SJohn Birrell.elif exists(${.CURDIR}/csu/${MACHINE_ARCH})
34c9811e98SBruce Evans_csu=csu/${MACHINE_ARCH}
35b09f41a4SJohn Birrell.endif
36b09f41a4SJohn Birrell
375f160d14SJohn Birrell.if !defined(NOLIBC_R)
38c9811e98SBruce Evans_libc_r=	libc_r
395f160d14SJohn Birrell.endif
40ff2edf0cSPeter Wemm
4183b8ab27SPeter Wemm.if !defined(NO_BIND)
42072355e0SPeter Wemm_libbind=	libbind
43072355e0SPeter Wemm.endif
44072355e0SPeter Wemm
457b2d810aSMark Murray_libcrypt=	libcrypt
467b2d810aSMark Murray.if exists(${.CURDIR}/../secure) && !defined(NOSECURE) && !defined(NOCRYPT)
47efa3929eSMark Murray# Build both libraries. They have different names, so no harm,
48efa3929eSMark Murray# and this avoids having stale libscrypt.*
497b2d810aSMark Murray_libcrypt+=	../secure/lib/libcrypt
50e6af2dc8SAndrey A. Chernov.endif
51e6af2dc8SAndrey A. Chernov
52c9811e98SBruce Evans.if ${MACHINE_ARCH} == "i386"
53d78dcde2SGary Palmer_compat=	compat
54f24bb3a4SBoris Popov_libncp=	libncp
55c9811e98SBruce Evans_libvgl=	libvgl
56d788c4fbSJohn Birrell.endif
57c9811e98SBruce Evans
586a7a98c9SJohn Birrell.if defined(WANT_CSRG_LIBM)
59c9811e98SBruce Evans_libm=		libm
60b6059979SJordan K. Hubbard.else
61c9811e98SBruce Evans_libm=		msun
62b6059979SJordan K. Hubbard.endif
63b6059979SJordan K. Hubbard
6412e25f33SDoug Rabson.if ${MACHINE_ARCH} == "alpha"
6512e25f33SDoug Rabson_libio=		libio
6612e25f33SDoug Rabson.endif
6712e25f33SDoug Rabson
68f05d1ad2SMark Murray.if defined(RELEASEDIR) || \
69f05d1ad2SMark Murray    (!exists(${.CURDIR}/../secure) && !exists(${.CURDIR}/../kerberosIV)) || \
70c9811e98SBruce Evans    defined(NOCRYPT) || !defined(MAKE_KERBEROS4)
71c9811e98SBruce Evans_libtelnet=	libtelnet
72c9811e98SBruce Evans.endif
738ff10292SPeter Wemm
7458f0484fSRodney W. Grimes.include <bsd.subdir.mk>
75