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. 12eae951c9SWarner Losh# libcom_err must be built before libpam. 13eae951c9SWarner Losh# 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. 29eae951c9SWarner Losh# 30eae951c9SWarner Losh# Except it appears bind needs to be compiled last 31c9811e98SBruce Evans 329b3e440bSWarner LoshSUBDIR_ORDERED= ${_csu} \ 339b3e440bSWarner Losh libc \ 349b3e440bSWarner Losh libbsm \ 359b3e440bSWarner Losh libauditd \ 369b3e440bSWarner Losh libcom_err \ 379b3e440bSWarner Losh libcrypt \ 389b3e440bSWarner Losh libelf \ 399b3e440bSWarner Losh libkvm \ 409b3e440bSWarner Losh msun \ 419b3e440bSWarner Losh libmd \ 429b3e440bSWarner Losh ncurses \ 439b3e440bSWarner Losh ${_libnetgraph} \ 449b3e440bSWarner Losh libradius \ 459b3e440bSWarner Losh librpcsvc \ 469b3e440bSWarner Losh libsbuf \ 479b3e440bSWarner Losh libtacplus \ 489b3e440bSWarner Losh libutil \ 499b3e440bSWarner Losh ${_libypclnt} 509b3e440bSWarner Losh 519b3e440bSWarner LoshSUBDIR= ${SUBDIR_ORDERED} \ 529b3e440bSWarner Losh libalias \ 539b3e440bSWarner Losh libarchive \ 549b3e440bSWarner Losh ${_libatm} \ 559b3e440bSWarner Losh libbegemot \ 569b3e440bSWarner Losh ${_libbluetooth} \ 579b3e440bSWarner Losh ${_libbsnmp} \ 589b3e440bSWarner Losh libbz2 \ 599b3e440bSWarner Losh libcalendar \ 609b3e440bSWarner Losh libcam \ 619b3e440bSWarner Losh libcompat \ 629b3e440bSWarner Losh libdevinfo \ 639b3e440bSWarner Losh libdevstat \ 649b3e440bSWarner Losh libdisk \ 659b3e440bSWarner Losh libdwarf \ 669b3e440bSWarner Losh libedit \ 679b3e440bSWarner Losh ${_libefi} \ 689b3e440bSWarner Losh libexpat \ 699b3e440bSWarner Losh libfetch \ 709b3e440bSWarner Losh libftpio \ 719b3e440bSWarner Losh libgeom \ 729b3e440bSWarner Losh ${_libgpib} \ 739b3e440bSWarner Losh ${_libgssapi} \ 749b3e440bSWarner Losh ${_librpcsec_gss} \ 759b3e440bSWarner Losh libipsec \ 769b3e440bSWarner Losh ${_libipx} \ 779b3e440bSWarner Losh libjail \ 789b3e440bSWarner Losh libkiconv \ 79*81ad8388SMartin Matuska liblzma \ 809b3e440bSWarner Losh libmagic \ 819b3e440bSWarner Losh libmemstat \ 829b3e440bSWarner Losh ${_libmilter} \ 839b3e440bSWarner Losh ${_libmp} \ 849b3e440bSWarner Losh ${_libncp} \ 859b3e440bSWarner Losh ${_libngatm} \ 869b3e440bSWarner Losh libopie \ 879b3e440bSWarner Losh libpam \ 889b3e440bSWarner Losh libpcap \ 89762c7db2SFlorent Thoumie ${_libpkg} \ 909b3e440bSWarner Losh ${_libpmc} \ 919b3e440bSWarner Losh libproc \ 929b3e440bSWarner Losh librt \ 939b3e440bSWarner Losh ${_libsdp} \ 949b3e440bSWarner Losh ${_libsm} \ 959b3e440bSWarner Losh ${_libsmb} \ 969b3e440bSWarner Losh ${_libsmdb} \ 979b3e440bSWarner Losh ${_libsmutil} \ 989b3e440bSWarner Losh libstand \ 999b3e440bSWarner Losh ${_libtelnet} \ 1009b3e440bSWarner Losh ${_libthr} \ 1019b3e440bSWarner Losh libthread_db \ 1029b3e440bSWarner Losh libufs \ 1039b3e440bSWarner Losh libugidfw \ 1049b3e440bSWarner Losh libulog \ 1059b3e440bSWarner Losh ${_libusbhid} \ 1069b3e440bSWarner Losh ${_libusb} \ 1079b3e440bSWarner Losh ${_libvgl} \ 1089b3e440bSWarner Losh libwrap \ 1099b3e440bSWarner Losh liby \ 1109b3e440bSWarner Losh libz \ 11117c79ad0SEd Schouten ${_bind} 11258f0484fSRodney W. Grimes 11366422f5bSPeter Wemm.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf) 11466422f5bSPeter Wemm_csu=csu/${MACHINE_ARCH}-elf 11556a91a6fSDavid E. O'Brien.elif exists(${.CURDIR}/csu/${MACHINE_ARCH}/Makefile) 116c9811e98SBruce Evans_csu=csu/${MACHINE_ARCH} 11756a91a6fSDavid E. O'Brien.else 11856a91a6fSDavid E. O'Brien_csu=csu 119b09f41a4SJohn Birrell.endif 120b09f41a4SJohn Birrell 121690f477dSSam Leffler# NB: keep these sorted by MK_* knobs 122690f477dSSam Leffler 123e1fe3dbaSRuslan Ermilov.if ${MK_ATM} != "no" 1249e9dbe04SHartmut Brandt_libngatm= libngatm 1255e1847b4SPoul-Henning Kamp.endif 1265e1847b4SPoul-Henning Kamp 127e1fe3dbaSRuslan Ermilov.if ${MK_BIND} != "no" 128cd3ee173SDag-Erling Smørgrav_bind= bind 129072355e0SPeter Wemm.endif 130072355e0SPeter Wemm 131e1fe3dbaSRuslan Ermilov.if ${MK_BLUETOOTH} != "no" 1320986ab12SMaksim Yevmenkin_libbluetooth= libbluetooth 1330986ab12SMaksim Yevmenkin_libsdp= libsdp 13418d948adSMaksim Yevmenkin.endif 13523d1e148SMaksim Yevmenkin 136690f477dSSam Leffler.if ${MK_BSNMP} != "no" 137690f477dSSam Leffler_libbsnmp= libbsnmp 138690f477dSSam Leffler.endif 139690f477dSSam Leffler 140690f477dSSam Leffler.if ${MK_GPIB} != "no" 141690f477dSSam Leffler_libgpib= libgpib 142690f477dSSam Leffler.endif 143690f477dSSam Leffler 1446dc51ecaSRuslan Ermilov.if ${MK_GSSAPI} != "no" 1453fe21f77SDoug Barton_libgssapi= libgssapi 1468f55a568SDoug Rabson_librpcsec_gss= librpcsec_gss 1473fe21f77SDoug Barton.endif 1483fe21f77SDoug Barton 149cea557adSRuslan Ermilov.if ${MK_IPX} != "no" 150cea557adSRuslan Ermilov_libipx= libipx 151cea557adSRuslan Ermilov.endif 152cea557adSRuslan Ermilov 153690f477dSSam Leffler.if ${MK_LIBTHR} != "no" 154690f477dSSam Leffler_libthr= libthr 155690f477dSSam Leffler.endif 156690f477dSSam Leffler 157690f477dSSam Leffler.if ${MK_NETGRAPH} != "no" 158690f477dSSam Leffler_libnetgraph= libnetgraph 159690f477dSSam Leffler.endif 160690f477dSSam Leffler 161690f477dSSam Leffler.if ${MK_NIS} != "no" 162690f477dSSam Leffler_libypclnt= libypclnt 163690f477dSSam Leffler.endif 164690f477dSSam Leffler 16523d1e148SMaksim Yevmenkin.if ${MACHINE_ARCH} == "i386" 166cea557adSRuslan Ermilov.if ${MK_NCP} != "no" 16718d948adSMaksim Yevmenkin_libncp= libncp 168cea557adSRuslan Ermilov.endif 16923eb26faSSheldon Hearn_libsmb= libsmb 170c9811e98SBruce Evans_libvgl= libvgl 171abbb0b30SMarcel Moolenaar.endif 172abbb0b30SMarcel Moolenaar 173e108ac65SMarcel Moolenaar.if ${MACHINE_ARCH} == "ia64" 174eb0a7e41SMarcel Moolenaar_libefi= libefi 175e108ac65SMarcel Moolenaar_libsmb= libsmb 176e108ac65SMarcel Moolenaar.endif 177e108ac65SMarcel Moolenaar 17855434686SPeter Wemm.if ${MACHINE_ARCH} == "amd64" 179cea557adSRuslan Ermilov.if ${MK_NCP} != "no" 18055434686SPeter Wemm_libncp= libncp 181cea557adSRuslan Ermilov.endif 18255434686SPeter Wemm_libsmb= libsmb 183ee5e90daSXin LI_libvgl= libvgl 1843d823985SDaniel Eischen.endif 1853d823985SDaniel Eischen 18659fa7082SR. Imura.if ${MACHINE_ARCH} == "powerpc" 18759fa7082SR. Imura_libsmb= libsmb 18859fa7082SR. Imura.endif 18959fa7082SR. Imura 19069618fcfSPyun YongHyeon.if ${MACHINE_ARCH} == "sparc64" 19169618fcfSPyun YongHyeon_libsmb= libsmb 19269618fcfSPyun YongHyeon.endif 19369618fcfSPyun YongHyeon 194690f477dSSam Leffler.if ${MK_OPENSSL} != "no" 195690f477dSSam Leffler_libmp= libmp 196690f477dSSam Leffler.endif 197690f477dSSam Leffler 198690f477dSSam Leffler.if ${MK_PMC} != "no" 199690f477dSSam Leffler_libpmc= libpmc 200690f477dSSam Leffler.endif 201690f477dSSam Leffler 202762c7db2SFlorent Thoumie.if ${MK_PKGTOOLS} != "no" 203762c7db2SFlorent Thoumie_libpkg= libpkg 204762c7db2SFlorent Thoumie.endif 205762c7db2SFlorent Thoumie 206690f477dSSam Leffler.if ${MK_SENDMAIL} != "no" 207690f477dSSam Leffler_libmilter= libmilter 208690f477dSSam Leffler_libsm= libsm 209690f477dSSam Leffler_libsmdb= libsmdb 210690f477dSSam Leffler_libsmutil= libsmutil 211690f477dSSam Leffler.endif 212690f477dSSam Leffler 213690f477dSSam Leffler.if ${MK_TELNET} != "no" 214690f477dSSam Leffler_libtelnet= libtelnet 215e9043a12SMike Makonnen.endif 216e9043a12SMike Makonnen 217e1fe3dbaSRuslan Ermilov.if ${MK_USB} != "no" 218f3e5ff40SBruce Evans_libusbhid= libusbhid 2196df55934SAndrew Thompson_libusb= libusb 220a8ec1b48SMaxim Sobolev.endif 221a8ec1b48SMaxim Sobolev 22258f0484fSRodney W. Grimes.include <bsd.subdir.mk> 223