158f0484fSRodney W. Grimes# @(#)Makefile 8.1 (Berkeley) 6/4/93 27f3dea24SPeter Wemm# $FreeBSD$ 3c9811e98SBruce Evans 4c6063d0dSWarner Losh.include <src.opts.mk> 5e1fe3dbaSRuslan Ermilov 6a1c70d69SIan Lepore# The SUBDIR_ORDERED list is a small set of libraries which are used by many 7a1c70d69SIan Lepore# of the other libraries. These are built first with a .WAIT between them 8a1c70d69SIan Lepore# and the main list to avoid needing a SUBDIR_DEPEND line on every library 9a1c70d69SIan Lepore# naming just these few items. 10c9811e98SBruce Evans 119b3e440bSWarner LoshSUBDIR_ORDERED= ${_csu} \ 12b8fffe16SWarner Losh .WAIT \ 139b3e440bSWarner Losh libc \ 14091b8336SPeter Wemm libc_nonshared \ 1539cd938cSEd Schouten libcompiler_rt \ 16a1c70d69SIan Lepore ${_libcplusplus} \ 1749c8e5e7SDimitry Andric ${_libcxxrt} \ 18a1c70d69SIan Lepore libelf \ 19a1c70d69SIan Lepore msun 209b3e440bSWarner Losh 21a1c70d69SIan Lepore# The main list; please keep these sorted alphabetically. 220e46933cSStanislav Sedov 239b3e440bSWarner LoshSUBDIR= ${SUBDIR_ORDERED} \ 24b8fffe16SWarner Losh .WAIT \ 259b3e440bSWarner Losh libalias \ 269b3e440bSWarner Losh libarchive \ 279b3e440bSWarner Losh ${_libatm} \ 28a1c70d69SIan Lepore libauditd \ 299b3e440bSWarner Losh libbegemot \ 3039cd938cSEd Schouten libblocksruntime \ 319b3e440bSWarner Losh ${_libbluetooth} \ 329b3e440bSWarner Losh ${_libbsnmp} \ 3381bd3d89SAdrian Chadd libbsdstat \ 34a1c70d69SIan Lepore libbsm \ 359b3e440bSWarner Losh libbz2 \ 369b3e440bSWarner Losh libcalendar \ 379b3e440bSWarner Losh libcam \ 38a1c70d69SIan Lepore ${_libcapsicum} \ 3942a85952SPawel Jakub Dawidek ${_libcasper} \ 40a1c70d69SIan Lepore ${_libcom_err} \ 419b3e440bSWarner Losh libcompat \ 42a1c70d69SIan Lepore libcrypt \ 439b3e440bSWarner Losh libdevinfo \ 449b3e440bSWarner Losh libdevstat \ 457fc89952SDevin Teske libdpv \ 469b3e440bSWarner Losh libdwarf \ 479b3e440bSWarner Losh libedit \ 48*31942939SEd Maste ${_libelftc} \ 49f9721976SXin LI ${_libevent} \ 504b1fb8ffSEd Maste libexecinfo \ 519b3e440bSWarner Losh libexpat \ 529b3e440bSWarner Losh libfetch \ 53041394f3SDevin Teske libfigpar \ 549b3e440bSWarner Losh libgeom \ 559b3e440bSWarner Losh ${_libgpib} \ 56f12128e4SRui Paulo libgpio \ 579b3e440bSWarner Losh ${_libgssapi} \ 589b3e440bSWarner Losh ${_librpcsec_gss} \ 59a1c70d69SIan Lepore ${_libiconv_modules} \ 609b3e440bSWarner Losh libipsec \ 619b3e440bSWarner Losh libjail \ 629b3e440bSWarner Losh libkiconv \ 63a1c70d69SIan Lepore libkvm \ 64a1c70d69SIan Lepore ${_libldns} \ 6581ad8388SMartin Matuska liblzma \ 669b3e440bSWarner Losh libmagic \ 67cc4842a1SUlrich Spörlein libmandoc \ 689b3e440bSWarner Losh libmemstat \ 69a1c70d69SIan Lepore libmd \ 709b3e440bSWarner Losh ${_libmilter} \ 719b3e440bSWarner Losh ${_libmp} \ 727f725bcdSGrzegorz Bernacki ${_libnandfs} \ 736bea8766SBrooks Davis libnetbsd \ 74a1c70d69SIan Lepore ${_libnetgraph} \ 759b3e440bSWarner Losh ${_libngatm} \ 76a1c70d69SIan Lepore libnv \ 77e806d508SBaptiste Daroussin libohash \ 789b3e440bSWarner Losh libopie \ 799b3e440bSWarner Losh libpam \ 809b3e440bSWarner Losh libpcap \ 81a1c70d69SIan Lepore libpjdlog \ 829b3e440bSWarner Losh ${_libpmc} \ 8354bb94d7SRui Paulo ${_libproc} \ 840daf62d9SStanislav Sedov libprocstat \ 85a1c70d69SIan Lepore libradius \ 86a1c70d69SIan Lepore librpcsvc \ 879b3e440bSWarner Losh librt \ 88fb05b666SRui Paulo ${_librtld_db} \ 89a1c70d69SIan Lepore libsbuf \ 909b3e440bSWarner Losh ${_libsdp} \ 919b3e440bSWarner Losh ${_libsm} \ 92237abf0cSDavide Italiano ${_libsmb} \ 939b3e440bSWarner Losh ${_libsmdb} \ 949b3e440bSWarner Losh ${_libsmutil} \ 95362492e5SBaptiste Daroussin libsqlite3 \ 969b3e440bSWarner Losh libstand \ 976486b015SJeremie Le Hen libstdbuf \ 98fc6f0665SEd Schouten libstdthreads \ 99a1c70d69SIan Lepore libtacplus \ 1009b3e440bSWarner Losh ${_libtelnet} \ 1019b3e440bSWarner Losh ${_libthr} \ 1029b3e440bSWarner Losh libthread_db \ 1034ca4d6a8SBaptiste Daroussin libucl \ 1049b3e440bSWarner Losh libufs \ 1059b3e440bSWarner Losh libugidfw \ 1069b3e440bSWarner Losh libulog \ 1078f8790cdSDag-Erling Smørgrav ${_libunbound} \ 1089b3e440bSWarner Losh ${_libusbhid} \ 1099b3e440bSWarner Losh ${_libusb} \ 110a1c70d69SIan Lepore libutil \ 1119b3e440bSWarner Losh ${_libvgl} \ 112366f6083SPeter Grehan ${_libvmmapi} \ 1139b3e440bSWarner Losh libwrap \ 114d7790611SMarcel Moolenaar libxo \ 1159b3e440bSWarner Losh liby \ 116a1c70d69SIan Lepore ${_libypclnt} \ 1179b3e440bSWarner Losh libz \ 118a1c70d69SIan Lepore ncurses \ 119c175365cSMarcel Moolenaar ${_atf} \ 120cc21b86fSJulio Merino ${_clang} \ 12136716419SHans Petter Selasky ${_cuse} \ 122cc21b86fSJulio Merino ${_tests} 12358f0484fSRodney W. Grimes 124a1c70d69SIan Lepore# Inter-library dependencies. When the makefile for a library contains LDADD 125a1c70d69SIan Lepore# libraries, those libraries should be listed as build order dependencies here. 126a1c70d69SIan Lepore 127a1c70d69SIan LeporeSUBDIR_DEPEND_libarchive= libz libbz2 libexpat liblzma libmd 128a1c70d69SIan LeporeSUBDIR_DEPEND_libatm= libmd 129a1c70d69SIan LeporeSUBDIR_DEPEND_libauditdm= libbsm 130a1c70d69SIan LeporeSUBDIR_DEPEND_libbsnmp= ${_libnetgraph} 131a1c70d69SIan LeporeSUBDIR_DEPEND_libc++= libcxxrt 132a1c70d69SIan LeporeSUBDIR_DEPEND_libc= libcompiler_rt 133a1c70d69SIan LeporeSUBDIR_DEPEND_libcam= libsbuf 134a1c70d69SIan LeporeSUBDIR_DEPEND_libcapsicum= libnv 135a1c70d69SIan LeporeSUBDIR_DEPEND_libcasper= libcapsicum libnv libpjdlog 136a1c70d69SIan LeporeSUBDIR_DEPEND_libdevstat= libkvm 1377fc89952SDevin TeskeSUBDIR_DEPEND_libdpv= libfigpar ncurses libutil 138a1c70d69SIan LeporeSUBDIR_DEPEND_libedit= ncurses 139a1c70d69SIan LeporeSUBDIR_DEPEND_libg++= msun 140a1c70d69SIan LeporeSUBDIR_DEPEND_libgeom= libexpat libsbuf 141a1c70d69SIan LeporeSUBDIR_DEPEND_liblibrpcsec_gss= libgssapi 142a1c70d69SIan LeporeSUBDIR_DEPEND_libmagic= libz 143a1c70d69SIan LeporeSUBDIR_DEPEND_libmemstat= libkvm 144a1c70d69SIan LeporeSUBDIR_DEPEND_libopie= libmd 145a1c70d69SIan LeporeSUBDIR_DEPEND_libpam= libcrypt libopie libradius librpcsvc libtacplus libutil ${_libypclnt} ${_libcom_err} 146a1c70d69SIan LeporeSUBDIR_DEPEND_libpjdlog= libutil 147a1c70d69SIan LeporeSUBDIR_DEPEND_libprocstat= libkvm libutil 148a1c70d69SIan LeporeSUBDIR_DEPEND_libradius= libmd 149a1c70d69SIan LeporeSUBDIR_DEPEND_libreadline= ncurses 150a1c70d69SIan LeporeSUBDIR_DEPEND_libsmb= libkiconv 151a1c70d69SIan LeporeSUBDIR_DEPEND_libstdc++= msun 152a1c70d69SIan LeporeSUBDIR_DEPEND_libtacplus= libmd 153a1c70d69SIan LeporeSUBDIR_DEPEND_libulog= libmd 154a1c70d69SIan LeporeSUBDIR_DEPEND_libunbound= ${_libldns} 155a1c70d69SIan Lepore 1562bef81cfSWarner Losh.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf) 1572bef81cfSWarner Losh_csu=csu/${MACHINE_ARCH}-elf 158b12277d1SNathan Whitehorn.elif exists(${.CURDIR}/csu/${MACHINE_ARCH}) 159b12277d1SNathan Whitehorn_csu=csu/${MACHINE_ARCH} 16025faff34SWarner Losh.elif exists(${.CURDIR}/csu/${MACHINE_CPUARCH}/Makefile) 16125faff34SWarner Losh_csu=csu/${MACHINE_CPUARCH} 16256a91a6fSDavid E. O'Brien.else 16356a91a6fSDavid E. O'Brien_csu=csu 164b09f41a4SJohn Birrell.endif 165b09f41a4SJohn Birrell 166690f477dSSam Leffler# NB: keep these sorted by MK_* knobs 167690f477dSSam Leffler 168e1fe3dbaSRuslan Ermilov.if ${MK_ATM} != "no" 1699e9dbe04SHartmut Brandt_libngatm= libngatm 1705e1847b4SPoul-Henning Kamp.endif 1715e1847b4SPoul-Henning Kamp 172e1fe3dbaSRuslan Ermilov.if ${MK_BLUETOOTH} != "no" 1730986ab12SMaksim Yevmenkin_libbluetooth= libbluetooth 1740986ab12SMaksim Yevmenkin_libsdp= libsdp 17518d948adSMaksim Yevmenkin.endif 17623d1e148SMaksim Yevmenkin 177690f477dSSam Leffler.if ${MK_BSNMP} != "no" 178690f477dSSam Leffler_libbsnmp= libbsnmp 179690f477dSSam Leffler.endif 180690f477dSSam Leffler 18142a85952SPawel Jakub Dawidek.if ${MK_CASPER} != "no" 18242a85952SPawel Jakub Dawidek_libcapsicum= libcapsicum 18342a85952SPawel Jakub Dawidek_libcasper= libcasper 18442a85952SPawel Jakub Dawidek.endif 18542a85952SPawel Jakub Dawidek 186bfc72ed5SEd Schouten.if ${MK_CLANG} != "no" && !defined(COMPAT_32BIT) 1876513cfc8SRoman Divacky_clang= clang 1886513cfc8SRoman Divacky.endif 1896513cfc8SRoman Divacky 19036716419SHans Petter Selasky.if ${MK_CUSE} != "no" 19136716419SHans Petter Selasky_cuse= libcuse 19236716419SHans Petter Selasky.endif 19336716419SHans Petter Selasky 194*31942939SEd Maste.if ${MK_ELFTOOLCHAIN_TOOLS} != "no" 195*31942939SEd Maste_libelftc= libelftc 196*31942939SEd Maste.endif 197*31942939SEd Maste 198690f477dSSam Leffler.if ${MK_GPIB} != "no" 199690f477dSSam Leffler_libgpib= libgpib 200690f477dSSam Leffler.endif 201690f477dSSam Leffler 2026dc51ecaSRuslan Ermilov.if ${MK_GSSAPI} != "no" 2033fe21f77SDoug Barton_libgssapi= libgssapi 2048f55a568SDoug Rabson_librpcsec_gss= librpcsec_gss 2053fe21f77SDoug Barton.endif 2063fe21f77SDoug Barton 207ad30f8e7SGabor Kovesdan.if ${MK_ICONV} != "no" 208ad30f8e7SGabor Kovesdan_libiconv_modules= libiconv_modules 209ad30f8e7SGabor Kovesdan.endif 210ad30f8e7SGabor Kovesdan 211a1c70d69SIan Lepore.if ${MK_KERBEROS_SUPPORT} != "no" 212a1c70d69SIan Lepore_libcom_err= libcom_err 213a1c70d69SIan Lepore.endif 214a1c70d69SIan Lepore 2157b5038d7SDag-Erling Smørgrav.if ${MK_LDNS} != "no" 2167b5038d7SDag-Erling Smørgrav_libldns= libldns 2177b5038d7SDag-Erling Smørgrav.endif 2187b5038d7SDag-Erling Smørgrav 21935e370a2SDag-Erling Smørgrav.if ${MK_LIBCPLUSPLUS} != "no" 22035e370a2SDag-Erling Smørgrav_libcxxrt= libcxxrt 22135e370a2SDag-Erling Smørgrav_libcplusplus= libc++ 22235e370a2SDag-Erling Smørgrav.endif 22335e370a2SDag-Erling Smørgrav 224690f477dSSam Leffler.if ${MK_LIBTHR} != "no" 225690f477dSSam Leffler_libthr= libthr 226690f477dSSam Leffler.endif 227690f477dSSam Leffler 2287f725bcdSGrzegorz Bernacki.if ${MK_NAND} != "no" 2297f725bcdSGrzegorz Bernacki_libnandfs= libnandfs 2307f725bcdSGrzegorz Bernacki.endif 2317f725bcdSGrzegorz Bernacki 232690f477dSSam Leffler.if ${MK_NETGRAPH} != "no" 233690f477dSSam Leffler_libnetgraph= libnetgraph 234690f477dSSam Leffler.endif 235690f477dSSam Leffler 236690f477dSSam Leffler.if ${MK_NIS} != "no" 237690f477dSSam Leffler_libypclnt= libypclnt 238690f477dSSam Leffler.endif 239690f477dSSam Leffler 240f9721976SXin LI.if ${MK_PF} != "no" 241f9721976SXin LI_libevent= libevent 242f9721976SXin LI.endif 243f9721976SXin LI 24425faff34SWarner Losh.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 245237abf0cSDavide Italiano_libsmb= libsmb 246c9811e98SBruce Evans_libvgl= libvgl 24754bb94d7SRui Paulo_libproc= libproc 248fb05b666SRui Paulo_librtld_db= librtld_db 249abbb0b30SMarcel Moolenaar.endif 250abbb0b30SMarcel Moolenaar 25170d8f36aSPeter Grehan.if ${MACHINE_CPUARCH} == "amd64" 25270d8f36aSPeter Grehan_libvmmapi= libvmmapi 25370d8f36aSPeter Grehan.endif 25470d8f36aSPeter Grehan 25507d39325SOleksandr Tymoshenko.if ${MACHINE_CPUARCH} == "mips" 25607d39325SOleksandr Tymoshenko_libproc= libproc 25707d39325SOleksandr Tymoshenko_librtld_db= librtld_db 25807d39325SOleksandr Tymoshenko.endif 25907d39325SOleksandr Tymoshenko 260c7570492SJustin Hibbits.if ${MACHINE_CPUARCH} == "powerpc" 261c7570492SJustin Hibbits_libproc= libproc 262c7570492SJustin Hibbits_librtld_db= librtld_db 263237abf0cSDavide Italiano_libsmb= libsmb 264237abf0cSDavide Italiano.endif 265237abf0cSDavide Italiano 266237abf0cSDavide Italiano.if ${MACHINE_CPUARCH} == "sparc64" 267237abf0cSDavide Italiano_libsmb= libsmb 268c7570492SJustin Hibbits.endif 269c7570492SJustin Hibbits 270690f477dSSam Leffler.if ${MK_OPENSSL} != "no" 271690f477dSSam Leffler_libmp= libmp 272690f477dSSam Leffler.endif 273690f477dSSam Leffler 274690f477dSSam Leffler.if ${MK_PMC} != "no" 275690f477dSSam Leffler_libpmc= libpmc 276690f477dSSam Leffler.endif 277690f477dSSam Leffler 278690f477dSSam Leffler.if ${MK_SENDMAIL} != "no" 279690f477dSSam Leffler_libmilter= libmilter 280690f477dSSam Leffler_libsm= libsm 281690f477dSSam Leffler_libsmdb= libsmdb 282690f477dSSam Leffler_libsmutil= libsmutil 283690f477dSSam Leffler.endif 284690f477dSSam Leffler 285690f477dSSam Leffler.if ${MK_TELNET} != "no" 286690f477dSSam Leffler_libtelnet= libtelnet 287e9043a12SMike Makonnen.endif 288e9043a12SMike Makonnen 289b55e8e6eSWarner Losh.if ${MK_TESTS_SUPPORT} != "no" 290e01d128aSJulio Merino_atf= atf 291b55e8e6eSWarner Losh.endif 292b55e8e6eSWarner Losh.if ${MK_TESTS} != "no" 293cc21b86fSJulio Merino_tests= tests 294e01d128aSJulio Merino.endif 295e01d128aSJulio Merino 2968f8790cdSDag-Erling Smørgrav.if ${MK_UNBOUND} != "no" 2978f8790cdSDag-Erling Smørgrav_libunbound= libunbound 2988f8790cdSDag-Erling Smørgrav.endif 2998f8790cdSDag-Erling Smørgrav 300e1fe3dbaSRuslan Ermilov.if ${MK_USB} != "no" 301f3e5ff40SBruce Evans_libusbhid= libusbhid 3026df55934SAndrew Thompson_libusb= libusb 303a8ec1b48SMaxim Sobolev.endif 304a8ec1b48SMaxim Sobolev 3057be23620SBrooks Davis.if !defined(LIBRARIES_ONLY) 3067c83e443STim Kientzleafterinstall: 3077be23620SBrooks Davis ${INSTALL_SYMLINK} ../include ${DESTDIR}/usr/lib/include 3087be23620SBrooks Davis.endif 3097c83e443STim Kientzle 31054ff5d73SDimitry Andric.if !make(install) 31154ff5d73SDimitry AndricSUBDIR_PARALLEL= 31254ff5d73SDimitry Andric.endif 31354ff5d73SDimitry Andric 31458f0484fSRodney W. Grimes.include <bsd.subdir.mk> 315