1# @(#)Makefile 8.1 (Berkeley) 6/4/93 2# $FreeBSD$ 3 4.include <src.opts.mk> 5 6# To satisfy shared library or ELF linkage when only the libraries being 7# built are visible: 8# 9# csu must be built before all shared libaries for ELF. 10# libc must be built before all other shared libraries. 11# libbsm must be built before libauditd. 12# libcom_err must be built before libpam. 13# libcrypt must be built before libpam. 14# libkvm must be built before libdevstat. 15# libldns must be built before libunbound. 16# msun must be built before libg++ and libstdc++. 17# libmd must be built before libatm, libopie, libradius, and libtacplus. 18# ncurses must be built before libdialog, libedit and libreadline. 19# libnetgraph must be built before libbsnmp/modules/snmp_netgraph. 20# libopie must be built before libpam. 21# libradius must be built before libpam. 22# librpcsvc must be built before libpam. 23# libsbuf must be built before libcam. 24# libtacplus must be built before libpam. 25# libutil must be built before libpam. 26# libypclnt must be built before libpam. 27# libgssapi must be built before librpcsec_gss 28# 29# Otherwise, the SUBDIR list should be in alphabetical order. 30# 31# Except it appears bind needs to be compiled last 32 33SUBDIR_ORDERED= ${_csu} \ 34 .WAIT \ 35 libc \ 36 libc_nonshared \ 37 .WAIT \ 38 msun \ 39 .WAIT \ 40 libbsm \ 41 libauditd \ 42 libutil \ 43 libpjdlog \ 44 libnv \ 45 ${_libcapsicum} \ 46 libcompiler_rt \ 47 libcrypt \ 48 libelf \ 49 ${_libiconv_modules} \ 50 libkvm \ 51 ${_libldns} \ 52 libmd \ 53 ncurses \ 54 ${_libnetgraph} \ 55 libradius \ 56 librpcsvc \ 57 libsbuf \ 58 libtacplus \ 59 ${_libypclnt} \ 60 ${_libcxxrt} \ 61 ${_libcplusplus} 62 63.if ${MK_KERBEROS_SUPPORT} != "no" 64SUBDIR_ORDERED+= libcom_err 65.endif 66 67SUBDIR= ${SUBDIR_ORDERED} \ 68 .WAIT \ 69 libalias \ 70 libarchive \ 71 ${_libatm} \ 72 libbegemot \ 73 libblocksruntime \ 74 ${_libbluetooth} \ 75 ${_libbsnmp} \ 76 libbsdstat \ 77 libbz2 \ 78 libcalendar \ 79 libcam \ 80 ${_libcasper} \ 81 libcompat \ 82 libdevinfo \ 83 libdevstat \ 84 libdwarf \ 85 libedit \ 86 ${_libefi} \ 87 libexecinfo \ 88 libexpat \ 89 libfetch \ 90 libgeom \ 91 ${_libgpib} \ 92 ${_libgssapi} \ 93 ${_librpcsec_gss} \ 94 libipsec \ 95 libjail \ 96 libkiconv \ 97 liblzma \ 98 libmagic \ 99 libmandoc \ 100 libmemstat \ 101 ${_libmilter} \ 102 ${_libmp} \ 103 ${_libnandfs} \ 104 libnetbsd \ 105 ${_libngatm} \ 106 libopie \ 107 libpam \ 108 libpcap \ 109 ${_libpmc} \ 110 ${_libproc} \ 111 libprocstat \ 112 librt \ 113 ${_librtld_db} \ 114 ${_libsdp} \ 115 ${_libsm} \ 116 ${_libsmb} \ 117 ${_libsmdb} \ 118 ${_libsmutil} \ 119 libstand \ 120 libstdbuf \ 121 libstdthreads \ 122 ${_libtelnet} \ 123 ${_libthr} \ 124 libthread_db \ 125 libucl \ 126 libufs \ 127 libugidfw \ 128 libulog \ 129 ${_libunbound} \ 130 ${_libusbhid} \ 131 ${_libusb} \ 132 ${_libvgl} \ 133 ${_libvmmapi} \ 134 libwrap \ 135 liby \ 136 libz \ 137 ${_atf} \ 138 ${_clang} \ 139 ${_cuse} \ 140 ${_tests} 141 142.if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf) 143_csu=csu/${MACHINE_ARCH}-elf 144.elif exists(${.CURDIR}/csu/${MACHINE_ARCH}) 145_csu=csu/${MACHINE_ARCH} 146.elif exists(${.CURDIR}/csu/${MACHINE_CPUARCH}/Makefile) 147_csu=csu/${MACHINE_CPUARCH} 148.else 149_csu=csu 150.endif 151 152# NB: keep these sorted by MK_* knobs 153 154.if ${MK_ATM} != "no" 155_libngatm= libngatm 156.endif 157 158.if ${MK_BLUETOOTH} != "no" 159_libbluetooth= libbluetooth 160_libsdp= libsdp 161.endif 162 163.if ${MK_BSNMP} != "no" 164_libbsnmp= libbsnmp 165.endif 166 167.if ${MK_CASPER} != "no" 168_libcapsicum= libcapsicum 169_libcasper= libcasper 170.endif 171 172.if ${MK_CLANG} != "no" && !defined(COMPAT_32BIT) 173_clang= clang 174.endif 175 176.if ${MK_CUSE} != "no" 177_cuse= libcuse 178.endif 179 180.if ${MK_GPIB} != "no" 181_libgpib= libgpib 182.endif 183 184.if ${MK_GSSAPI} != "no" 185_libgssapi= libgssapi 186_librpcsec_gss= librpcsec_gss 187.endif 188 189.if ${MK_ICONV} != "no" 190_libiconv_modules= libiconv_modules 191.endif 192 193.if ${MK_LDNS} != "no" 194_libldns= libldns 195.endif 196 197.if ${MK_LIBCPLUSPLUS} != "no" 198_libcxxrt= libcxxrt 199_libcplusplus= libc++ 200.endif 201 202.if ${MK_LIBTHR} != "no" 203_libthr= libthr 204.endif 205 206.if ${MK_NAND} != "no" 207_libnandfs= libnandfs 208.endif 209 210.if ${MK_NETGRAPH} != "no" 211_libnetgraph= libnetgraph 212.endif 213 214.if ${MK_NIS} != "no" 215_libypclnt= libypclnt 216.endif 217 218.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64" 219_libsmb= libsmb 220_libvgl= libvgl 221_libproc= libproc 222_librtld_db= librtld_db 223.endif 224 225.if ${MACHINE_CPUARCH} == "amd64" 226_libvmmapi= libvmmapi 227.endif 228 229.if ${MACHINE_CPUARCH} == "ia64" 230_libefi= libefi 231_libsmb= libsmb 232.endif 233 234.if ${MACHINE_CPUARCH} == "mips" 235_libproc= libproc 236_librtld_db= librtld_db 237.endif 238 239.if ${MACHINE_CPUARCH} == "powerpc" 240_libproc= libproc 241_librtld_db= librtld_db 242_libsmb= libsmb 243.endif 244 245.if ${MACHINE_CPUARCH} == "sparc64" 246_libsmb= libsmb 247.endif 248 249.if ${MK_OPENSSL} != "no" 250_libmp= libmp 251.endif 252 253.if ${MK_PMC} != "no" 254_libpmc= libpmc 255.endif 256 257.if ${MK_SENDMAIL} != "no" 258_libmilter= libmilter 259_libsm= libsm 260_libsmdb= libsmdb 261_libsmutil= libsmutil 262.endif 263 264.if ${MK_TELNET} != "no" 265_libtelnet= libtelnet 266.endif 267 268.if ${MK_TESTS} != "no" 269_atf= atf 270_tests= tests 271.endif 272 273.if ${MK_UNBOUND} != "no" 274_libunbound= libunbound 275.endif 276 277.if ${MK_USB} != "no" 278_libusbhid= libusbhid 279_libusb= libusb 280.endif 281 282.if !defined(LIBRARIES_ONLY) 283afterinstall: 284 ${INSTALL_SYMLINK} ../include ${DESTDIR}/usr/lib/include 285.endif 286 287.if !make(install) 288SUBDIR_PARALLEL= 289.endif 290 291.include <bsd.subdir.mk> 292