1# @(#)Makefile 8.1 (Berkeley) 6/4/93 2# $FreeBSD$ 3 4.include <src.opts.mk> 5 6# The SUBDIR_BOOTSTRAP list is a small set of libraries which are used by many 7# of the other libraries. These are built first with a .WAIT between them 8# and the main list to avoid needing a SUBDIR_DEPEND line on every library 9# naming just these few items. 10 11SUBDIR_BOOTSTRAP= \ 12 csu \ 13 .WAIT \ 14 libc \ 15 libc_nonshared \ 16 libcompiler_rt \ 17 ${_libclang_rt} \ 18 ${_libcplusplus} \ 19 ${_libcxxrt} \ 20 libelf \ 21 msun 22 23# The main list; please keep these sorted alphabetically. 24 25SUBDIR= ${SUBDIR_BOOTSTRAP} \ 26 .WAIT \ 27 libalias \ 28 libarchive \ 29 ${_libatm} \ 30 libauditd \ 31 libbegemot \ 32 ${_libblacklist} \ 33 libblocksruntime \ 34 ${_libbluetooth} \ 35 ${_libbsnmp} \ 36 libbsdstat \ 37 libbsm \ 38 libbz2 \ 39 libcalendar \ 40 libcam \ 41 ${_libcasper} \ 42 ${_libcom_err} \ 43 libcompat \ 44 libcrypt \ 45 libdevctl \ 46 ${_libdevdctl} \ 47 libdevinfo \ 48 libdevstat \ 49 libdwarf \ 50 libedit \ 51 ${_libelftc} \ 52 libevent \ 53 libexecinfo \ 54 libexpat \ 55 libfetch \ 56 libfigpar \ 57 libgeom \ 58 ${_libgpio} \ 59 ${_libgssapi} \ 60 ${_librpcsec_gss} \ 61 ${_libiconv_modules} \ 62 libifconfig \ 63 libipsec \ 64 libjail \ 65 libkiconv \ 66 libkvm \ 67 ${_libldns} \ 68 liblzma \ 69 ${_libmagic} \ 70 libmemstat \ 71 libmd \ 72 ${_libmilter} \ 73 ${_libmp} \ 74 libmt \ 75 ${_libnandfs} \ 76 lib80211 \ 77 libnetbsd \ 78 ${_libnetgraph} \ 79 ${_libngatm} \ 80 libnv \ 81 libopenbsd \ 82 libopie \ 83 libpam \ 84 libpcap \ 85 ${_libpe} \ 86 libpjdlog \ 87 ${_libpmc} \ 88 ${_libproc} \ 89 libprocstat \ 90 ${_libradius} \ 91 librpcsvc \ 92 librss \ 93 librt \ 94 ${_librtld_db} \ 95 libsbuf \ 96 ${_libsdp} \ 97 ${_libsm} \ 98 libsmb \ 99 ${_libsmdb} \ 100 ${_libsmutil} \ 101 libsqlite3 \ 102 libstand \ 103 libstdbuf \ 104 libstdthreads \ 105 libsysdecode \ 106 libtacplus \ 107 ${_libtelnet} \ 108 ${_libthr} \ 109 libthread_db \ 110 libucl \ 111 libufs \ 112 libugidfw \ 113 libulog \ 114 ${_libunbound} \ 115 ${_libusbhid} \ 116 ${_libusb} \ 117 libutil \ 118 ${_libvgl} \ 119 ${_libvmmapi} \ 120 libwrap \ 121 libxo \ 122 liby \ 123 ${_libypclnt} \ 124 libz \ 125 ncurses \ 126 ${_atf} \ 127 ${_clang} \ 128 ${_cuse} \ 129 ${_tests} 130 131# Inter-library dependencies. When the makefile for a library contains LDADD 132# libraries, those libraries should be listed as build order dependencies here. 133 134SUBDIR_DEPEND_libarchive= libz libbz2 libexpat liblzma libmd 135SUBDIR_DEPEND_libatm= libmd 136SUBDIR_DEPEND_libauditdm= libbsm 137SUBDIR_DEPEND_libbsnmp= ${_libnetgraph} 138SUBDIR_DEPEND_libc++:= libcxxrt 139SUBDIR_DEPEND_libc= libcompiler_rt 140SUBDIR_DEPEND_libcam= libsbuf 141SUBDIR_DEPEND_libcasper= libnv 142SUBDIR_DEPEND_libdevstat= libkvm 143SUBDIR_DEPEND_libdpv= libfigpar ncurses libutil 144SUBDIR_DEPEND_libedit= ncurses 145SUBDIR_DEPEND_libgeom= libexpat libsbuf 146SUBDIR_DEPEND_liblibrpcsec_gss= libgssapi 147SUBDIR_DEPEND_libmagic= libz 148SUBDIR_DEPEND_libmemstat= libkvm 149SUBDIR_DEPEND_libopie= libmd 150SUBDIR_DEPEND_libpam= libcrypt libopie ${_libradius} librpcsvc libtacplus libutil ${_libypclnt} ${_libcom_err} 151SUBDIR_DEPEND_libpjdlog= libutil 152SUBDIR_DEPEND_libprocstat= libkvm libutil 153SUBDIR_DEPEND_libradius= libmd 154SUBDIR_DEPEND_libsmb= libkiconv 155SUBDIR_DEPEND_libtacplus= libmd 156SUBDIR_DEPEND_libulog= libmd 157SUBDIR_DEPEND_libunbound= ${_libldns} 158SUBDIR_DEPEND_liblzma= ${_libthr} 159 160# NB: keep these sorted by MK_* knobs 161 162.if ${MK_ATM} != "no" 163_libngatm= libngatm 164.endif 165 166.if ${MK_BLACKLIST} != "no" 167_libblacklist= libblacklist 168.endif 169 170.if ${MK_BLUETOOTH} != "no" 171_libbluetooth= libbluetooth 172_libsdp= libsdp 173.endif 174 175.if ${MK_BSNMP} != "no" 176_libbsnmp= libbsnmp 177.endif 178 179.if ${MK_CASPER} != "no" 180_libcasper= libcasper 181.endif 182 183.if ${MK_CLANG} != "no" && !defined(COMPAT_32BIT) && !defined(COMPAT_SOFTFP) 184_clang= clang 185.endif 186 187.if ${MK_CUSE} != "no" 188_cuse= libcuse 189.endif 190 191.if ${MK_CXX} != "no" 192_libdevdctl= libdevdctl 193.endif 194 195.if ${MK_TOOLCHAIN} != "no" 196_libelftc= libelftc 197_libpe= libpe 198.endif 199 200SUBDIR.${MK_DIALOG}+= libdpv 201 202.if ${MK_FILE} != "no" 203_libmagic= libmagic 204.endif 205 206.if ${MK_GPIO} != "no" 207_libgpio= libgpio 208.endif 209 210.if ${MK_GSSAPI} != "no" 211_libgssapi= libgssapi 212_librpcsec_gss= librpcsec_gss 213.endif 214 215.if ${MK_ICONV} != "no" 216_libiconv_modules= libiconv_modules 217.endif 218 219.if ${MK_KERBEROS_SUPPORT} != "no" 220_libcom_err= libcom_err 221.endif 222 223.if ${MK_LDNS} != "no" 224_libldns= libldns 225.endif 226 227# The libraries under libclang_rt can only be built by clang, and only make 228# sense to build when clang is enabled at all. Furthermore, they can only be 229# built for certain architectures. 230.if ${MK_CLANG} != "no" && ${COMPILER_TYPE} == "clang" && \ 231 (${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \ 232 (${MACHINE_CPUARCH} == "arm" && ${MACHINE_ARCH} != "armeb") || \ 233 (${MACHINE_CPUARCH} == "i386")) 234_libclang_rt= libclang_rt 235.endif 236 237.if ${MK_LIBCPLUSPLUS} != "no" 238_libcxxrt= libcxxrt 239_libcplusplus= libc++ 240.endif 241 242.if ${MK_LIBTHR} != "no" 243_libthr= libthr 244.endif 245 246.if ${MK_NAND} != "no" 247_libnandfs= libnandfs 248.endif 249 250.if ${MK_NETGRAPH} != "no" 251_libnetgraph= libnetgraph 252.endif 253 254.if ${MK_NIS} != "no" 255_libypclnt= libypclnt 256.endif 257 258.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 259_libvgl= libvgl 260_libproc= libproc 261_librtld_db= librtld_db 262.endif 263 264.if ${MACHINE_CPUARCH} == "amd64" 265.if ${MK_BHYVE} != "no" 266_libvmmapi= libvmmapi 267.endif 268.endif 269 270.if ${MACHINE_CPUARCH} == "mips" 271_libproc= libproc 272_librtld_db= librtld_db 273.endif 274 275.if ${MACHINE_CPUARCH} == "powerpc" 276_libproc= libproc 277_librtld_db= librtld_db 278.endif 279 280.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" || \ 281 ${MACHINE_CPUARCH} == "riscv" 282_libproc= libproc 283_librtld_db= librtld_db 284.endif 285 286.if ${MK_OPENSSL} != "no" 287_libmp= libmp 288.endif 289 290.if ${MK_PMC} != "no" 291_libpmc= libpmc 292.endif 293 294.if ${MK_RADIUS_SUPPORT} != "no" 295_libradius= libradius 296.endif 297 298.if ${MK_SENDMAIL} != "no" 299_libmilter= libmilter 300_libsm= libsm 301_libsmdb= libsmdb 302_libsmutil= libsmutil 303.endif 304 305.if ${MK_TELNET} != "no" 306_libtelnet= libtelnet 307.endif 308 309.if ${MK_TESTS_SUPPORT} != "no" 310_atf= atf 311.endif 312.if ${MK_TESTS} != "no" 313_tests= tests 314.endif 315 316.if ${MK_UNBOUND} != "no" 317_libunbound= libunbound 318.endif 319 320.if ${MK_USB} != "no" 321_libusbhid= libusbhid 322_libusb= libusb 323.endif 324 325.if !make(install) 326SUBDIR_PARALLEL= 327.endif 328 329.include <bsd.subdir.mk> 330