xref: /freebsd/lib/Makefile (revision 379e47715a1e0bd31de9fa9f92897026c41aa63b)
158f0484fSRodney W. Grimes#	@(#)Makefile	8.1 (Berkeley) 6/4/93
27f3dea24SPeter Wemm# $FreeBSD$
3c9811e98SBruce Evans
4e1fe3dbaSRuslan Ermilov.include <bsd.own.mk>
5e1fe3dbaSRuslan Ermilov
6c9811e98SBruce Evans# To satisfy shared library or ELF linkage when only the libraries being
7c9811e98SBruce Evans# built are visible:
8c9811e98SBruce Evans#
90f09aefaSBruce Evans# csu must be built before all shared libaries for ELF.
104064334fSRuslan Ermilov# libc must be built before all other shared libraries.
117a0a89d2SRobert Watson# libbsm must be built before ibauditd.
12*379e4771SMartin Matuska# libcom_err must be built before libpam.
13*379e4771SMartin Matuska# libcrypt must be built before libpam.
14c4a5ef6eSThomas Moestl# libkvm must be built before libdevstat.
15a04f2acdSJosef Karthauser# msun must be built before libg++ and libstdc++.
16ccdee0d9SMark Murray# libmd must be built before libatm, libopie, libradius, and libtacplus.
17af5b5a0fSRong-En Fan# ncurses must be built before libdialog, libedit and libreadline.
18360b288fSHartmut Brandt# libnetgraph must be built before libbsnmp/modules/snmp_netgraph.
1914b42810SKris Kennaway# libopie must be built before libpam.
2060da54eeSJohn Polstra# libradius must be built before libpam.
2176ed168aSMark Murray# librpcsvc must be built before libpam.
2297b877c9SDag-Erling Smørgrav# libsbuf must be built before libcam.
2360da54eeSJohn Polstra# libtacplus must be built before libpam.
24c5da4b13SBruce Evans# libutil must be built before libpam.
2597b877c9SDag-Erling Smørgrav# libypclnt must be built before libpam.
268f55a568SDoug Rabson# libgssapi must be built before librpcsec_gss
27c9811e98SBruce Evans#
28c9811e98SBruce Evans# Otherwise, the SUBDIR list should be in alphabetical order.
29*379e4771SMartin Matuska#
30*379e4771SMartin Matuska# Except it appears bind needs to be compiled last
31c9811e98SBruce Evans
32*379e4771SMartin MatuskaSUBDIR_ORDERED=	${_csu} \
33*379e4771SMartin Matuska	libc \
34*379e4771SMartin Matuska	libbsm \
35*379e4771SMartin Matuska	libauditd \
36*379e4771SMartin Matuska	libcom_err \
37*379e4771SMartin Matuska	libcrypt \
38*379e4771SMartin Matuska	libelf \
39*379e4771SMartin Matuska	libkvm \
40*379e4771SMartin Matuska	msun \
417a0a89d2SRobert Watson	libmd \
42*379e4771SMartin Matuska	ncurses \
43*379e4771SMartin Matuska	${_libnetgraph} \
44*379e4771SMartin Matuska	libradius \
45*379e4771SMartin Matuska	librpcsvc \
46*379e4771SMartin Matuska	libsbuf \
47*379e4771SMartin Matuska	libtacplus \
48*379e4771SMartin Matuska	libutil \
49*379e4771SMartin Matuska	${_libypclnt}
50*379e4771SMartin Matuska
51*379e4771SMartin MatuskaSUBDIR= ${SUBDIR_ORDERED} \
52*379e4771SMartin Matuska	libalias \
53*379e4771SMartin Matuska	libarchive \
54*379e4771SMartin Matuska	${_libatm} \
55*379e4771SMartin Matuska	libbegemot \
56*379e4771SMartin Matuska	${_libbluetooth} \
57*379e4771SMartin Matuska	${_libbsnmp} \
58*379e4771SMartin Matuska	libbz2 \
59*379e4771SMartin Matuska	libcalendar \
60*379e4771SMartin Matuska	libcam \
61*379e4771SMartin Matuska	libcompat \
62*379e4771SMartin Matuska	libdevinfo \
63*379e4771SMartin Matuska	libdevstat \
64*379e4771SMartin Matuska	libdisk \
65*379e4771SMartin Matuska	libdwarf \
66*379e4771SMartin Matuska	libedit \
67*379e4771SMartin Matuska	libexpat \
68*379e4771SMartin Matuska	libfetch \
69*379e4771SMartin Matuska	libftpio \
70*379e4771SMartin Matuska	libgeom \
71*379e4771SMartin Matuska	${_libgpib} \
72*379e4771SMartin Matuska	${_libgssapi} \
73*379e4771SMartin Matuska	${_librpcsec_gss} \
74*379e4771SMartin Matuska	libipsec \
75*379e4771SMartin Matuska	${_libipx} \
76*379e4771SMartin Matuska	libjail \
77*379e4771SMartin Matuska	libkiconv \
78*379e4771SMartin Matuska	libmagic \
79*379e4771SMartin Matuska	libmemstat \
80*379e4771SMartin Matuska	${_libmilter} \
81*379e4771SMartin Matuska	${_libmp} \
82*379e4771SMartin Matuska	${_libncp} \
83*379e4771SMartin Matuska	${_libngatm} \
84*379e4771SMartin Matuska	libopie \
85*379e4771SMartin Matuska	libpam \
86*379e4771SMartin Matuska	libpcap \
87*379e4771SMartin Matuska	${_libpmc} \
88*379e4771SMartin Matuska	libproc \
89*379e4771SMartin Matuska	librt \
90*379e4771SMartin Matuska	${_libsdp} \
91*379e4771SMartin Matuska	${_libsm} \
92*379e4771SMartin Matuska	${_libsmb} \
937ae5a033SDavid Xu	${_libsmdb} \
94*379e4771SMartin Matuska	${_libsmutil} \
95*379e4771SMartin Matuska	libstand \
96*379e4771SMartin Matuska	${_libtelnet} \
97*379e4771SMartin Matuska	${_libthr} \
98*379e4771SMartin Matuska	libthread_db \
99*379e4771SMartin Matuska	libufs \
100*379e4771SMartin Matuska	libugidfw \
101*379e4771SMartin Matuska	${_libusbhid} \
102*379e4771SMartin Matuska	${_libusb} \
103*379e4771SMartin Matuska	${_libvgl} \
104*379e4771SMartin Matuska	libwrap \
105*379e4771SMartin Matuska	liby \
106*379e4771SMartin Matuska	libz \
1076f0e1ffdSAlfred Perlstein	${_bind}
10858f0484fSRodney W. Grimes
10966422f5bSPeter Wemm.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf)
11066422f5bSPeter Wemm_csu=csu/${MACHINE_ARCH}-elf
11156a91a6fSDavid E. O'Brien.elif exists(${.CURDIR}/csu/${MACHINE_ARCH}/Makefile)
112c9811e98SBruce Evans_csu=csu/${MACHINE_ARCH}
11356a91a6fSDavid E. O'Brien.else
11456a91a6fSDavid E. O'Brien_csu=csu
115b09f41a4SJohn Birrell.endif
116b09f41a4SJohn Birrell
117690f477dSSam Leffler# NB: keep these sorted by MK_* knobs
118690f477dSSam Leffler
119e1fe3dbaSRuslan Ermilov.if ${MK_ATM} != "no"
1209e9dbe04SHartmut Brandt_libngatm=	libngatm
1215e1847b4SPoul-Henning Kamp.endif
1225e1847b4SPoul-Henning Kamp
123e1fe3dbaSRuslan Ermilov.if ${MK_BIND} != "no"
124cd3ee173SDag-Erling Smørgrav_bind=		bind
125072355e0SPeter Wemm.endif
126072355e0SPeter Wemm
127e1fe3dbaSRuslan Ermilov.if ${MK_BLUETOOTH} != "no"
1280986ab12SMaksim Yevmenkin_libbluetooth=	libbluetooth
1290986ab12SMaksim Yevmenkin_libsdp=	libsdp
13018d948adSMaksim Yevmenkin.endif
13123d1e148SMaksim Yevmenkin
132690f477dSSam Leffler.if ${MK_BSNMP} != "no"
133690f477dSSam Leffler_libbsnmp=	libbsnmp
134690f477dSSam Leffler.endif
135690f477dSSam Leffler
136690f477dSSam Leffler.if ${MK_GPIB} != "no"
137690f477dSSam Leffler_libgpib=	libgpib
138690f477dSSam Leffler.endif
139690f477dSSam Leffler
1406dc51ecaSRuslan Ermilov.if ${MK_GSSAPI} != "no"
1413fe21f77SDoug Barton_libgssapi=	libgssapi
1428f55a568SDoug Rabson_librpcsec_gss=	librpcsec_gss
1433fe21f77SDoug Barton.endif
1443fe21f77SDoug Barton
145cea557adSRuslan Ermilov.if ${MK_IPX} != "no"
146cea557adSRuslan Ermilov_libipx=	libipx
147cea557adSRuslan Ermilov.endif
148cea557adSRuslan Ermilov
149690f477dSSam Leffler.if ${MK_LIBTHR} != "no"
150690f477dSSam Leffler_libthr=	libthr
151690f477dSSam Leffler.endif
152690f477dSSam Leffler
153690f477dSSam Leffler.if ${MK_NETGRAPH} != "no"
154690f477dSSam Leffler_libnetgraph=	libnetgraph
155690f477dSSam Leffler.endif
156690f477dSSam Leffler
157690f477dSSam Leffler.if ${MK_NIS} != "no"
158690f477dSSam Leffler_libypclnt=	libypclnt
159690f477dSSam Leffler.endif
160690f477dSSam Leffler
16123d1e148SMaksim Yevmenkin.if ${MACHINE_ARCH} == "i386"
162cea557adSRuslan Ermilov.if ${MK_NCP} != "no"
16318d948adSMaksim Yevmenkin_libncp=	libncp
164cea557adSRuslan Ermilov.endif
16523eb26faSSheldon Hearn_libsmb=	libsmb
166c9811e98SBruce Evans_libvgl=	libvgl
167abbb0b30SMarcel Moolenaar.endif
168abbb0b30SMarcel Moolenaar
169e108ac65SMarcel Moolenaar.if ${MACHINE_ARCH} == "ia64"
170e108ac65SMarcel Moolenaar_libsmb=	libsmb
171e108ac65SMarcel Moolenaar.endif
172e108ac65SMarcel Moolenaar
17355434686SPeter Wemm.if ${MACHINE_ARCH} == "amd64"
174cea557adSRuslan Ermilov.if ${MK_NCP} != "no"
17555434686SPeter Wemm_libncp=	libncp
176cea557adSRuslan Ermilov.endif
17755434686SPeter Wemm_libsmb=	libsmb
178aa3d547dSXin LI_libvgl=	libvgl
1793d823985SDaniel Eischen.endif
1803d823985SDaniel Eischen
18159fa7082SR. Imura.if ${MACHINE_ARCH} == "powerpc"
18259fa7082SR. Imura_libsmb=	libsmb
18359fa7082SR. Imura.endif
18459fa7082SR. Imura
185690f477dSSam Leffler.if ${MK_OPENSSL} != "no"
186690f477dSSam Leffler_libmp=		libmp
187690f477dSSam Leffler.endif
188690f477dSSam Leffler
189690f477dSSam Leffler.if ${MK_PMC} != "no"
190690f477dSSam Leffler_libpmc=	libpmc
191690f477dSSam Leffler.endif
192690f477dSSam Leffler
193690f477dSSam Leffler.if ${MK_SENDMAIL} != "no"
194690f477dSSam Leffler_libmilter=	libmilter
195690f477dSSam Leffler_libsm=		libsm
196690f477dSSam Leffler_libsmdb=	libsmdb
197690f477dSSam Leffler_libsmutil=	libsmutil
198690f477dSSam Leffler.endif
199690f477dSSam Leffler
200690f477dSSam Leffler.if ${MK_TELNET} != "no"
201690f477dSSam Leffler_libtelnet=	libtelnet
202e9043a12SMike Makonnen.endif
203e9043a12SMike Makonnen
204e1fe3dbaSRuslan Ermilov.if ${MK_USB} != "no"
205f3e5ff40SBruce Evans_libusbhid=	libusbhid
2066df55934SAndrew Thompson_libusb=	libusb
207a8ec1b48SMaxim Sobolev.endif
208a8ec1b48SMaxim Sobolev
20958f0484fSRodney W. Grimes.include <bsd.subdir.mk>
210