]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - lib/Makefile
Add man page for nfslockd.
[FreeBSD/FreeBSD.git] / lib / Makefile
1
2 .include <src.opts.mk>
3
4 # The SUBDIR_BOOTSTRAP list is a small set of libraries which are used by many
5 # of the other libraries.  These are built first with a .WAIT between them
6 # and the main list to avoid needing a SUBDIR_DEPEND line on every library
7 # naming just these few items.
8
9 SUBDIR_BOOTSTRAP= \
10         csu \
11         .WAIT \
12         libc \
13         libc_nonshared \
14         libcompiler_rt \
15         ${_libclang_rt} \
16         libc++ \
17         libc++experimental \
18         libcxxrt \
19         libdiff \
20         libelf \
21         libssp \
22         libssp_nonshared \
23         libsys \
24         msun
25
26 # The main list; please keep these sorted alphabetically.
27 # The only exception is sqlite3: we place it at the start of the list since it
28 # takes a long time to build and starting it first improves parallelism.
29
30 SUBDIR= ${SUBDIR_BOOTSTRAP} \
31         .WAIT \
32         libsqlite3 \
33         geom \
34         lib9p \
35         libalias \
36         libarchive \
37         libauditd \
38         libbegemot \
39         libblocksruntime \
40         libbsddialog \
41         libbsdstat \
42         libbsm \
43         libbz2 \
44         libcalendar \
45         libcam \
46         libcapsicum \
47         libcasper \
48         libcompat \
49         libcrypt \
50         libdevctl \
51         libdevdctl \
52         libdevinfo \
53         libdevstat \
54         libdl \
55         libdwarf \
56         libedit \
57         libelftc \
58         libevent1 \
59         libexecinfo \
60         libexpat \
61         libfetch \
62         libgcc_eh \
63         libgcc_s \
64         libgeom \
65         libifconfig \
66         libipsec \
67         libiscsiutil \
68         libjail \
69         libkiconv \
70         libkvm \
71         liblua \
72         liblzma \
73         libmemstat \
74         libmd \
75         libmixer \
76         libmt \
77         lib80211 \
78         libnetbsd \
79         libnetmap \
80         libnv \
81         libnvmf \
82         libopenbsd \
83         libpam \
84         libpathconv \
85         libpcap \
86         libpjdlog \
87         libproc \
88         libprocstat \
89         libregex \
90         librpcsvc \
91         librss \
92         librt \
93         librtld_db \
94         libsbuf \
95         libsmb \
96         libstdbuf \
97         libstdthreads \
98         libsysdecode \
99         libtacplus \
100         libthr \
101         libthread_db \
102         libucl \
103         libufs \
104         libugidfw \
105         libulog \
106         libutil \
107         ${_libvgl} \
108         libwrap \
109         libxo \
110         liby \
111         libz \
112         libzstd \
113         ncurses \
114         nss_tacplus
115
116 # Inter-library dependencies.  When the makefile for a library contains LDADD
117 # libraries, those libraries should be listed as build order dependencies here.
118
119 SUBDIR_DEPEND_geom=     libufs
120 SUBDIR_DEPEND_googletest= libregex
121 SUBDIR_DEPEND_libarchive= libz libbz2 libexpat liblzma libmd libzstd
122 SUBDIR_DEPEND_libauditdm= libbsm
123 SUBDIR_DEPEND_libbsddialog= ncurses
124 SUBDIR_DEPEND_libbsnmp= ${_libnetgraph}
125 SUBDIR_DEPEND_libc++:= libcxxrt
126 # libssp_nonshared doesn't need to be linked into libc on every arch, but it is
127 # small enough to build that this bit of serialization is likely insignificant.
128 SUBDIR_DEPEND_libc= libsys libcompiler_rt libssp_nonshared
129 SUBDIR_DEPEND_libcam= libsbuf
130 SUBDIR_DEPEND_libcasper= libnv
131 SUBDIR_DEPEND_libdevstat= libkvm
132 SUBDIR_DEPEND_libdpv= libfigpar ncurses libutil
133 SUBDIR_DEPEND_libedit= ncurses
134 SUBDIR_DEPEND_libgeom= libexpat libsbuf
135 SUBDIR_DEPEND_librpcsec_gss= libgssapi
136 SUBDIR_DEPEND_libmagic= libz
137 SUBDIR_DEPEND_libmemstat= libkvm
138 SUBDIR_DEPEND_libpam= libcrypt ${_libradius} librpcsvc libtacplus libutil ${_libypclnt} ${_libcom_err}
139 SUBDIR_DEPEND_libpjdlog= libutil
140 SUBDIR_DEPEND_libprocstat= libkvm libutil
141 SUBDIR_DEPEND_libradius= libmd
142 SUBDIR_DEPEND_libsmb= libkiconv
143 # See comment above about libssp_nonshared
144 SUBDIR_DEPEND_libsys= libcompiler_rt libssp_nonshared
145 SUBDIR_DEPEND_libtacplus= libmd
146 SUBDIR_DEPEND_libulog= libmd
147 SUBDIR_DEPEND_libunbound= ${_libldns}
148 SUBDIR_DEPEND_liblzma= libthr
149 .if ${MK_OFED} != "no"
150 SUBDIR_DEPEND_libpcap= ofed
151 .endif
152 SUBDIR_DEPEND_nss_tacplus= libtacplus
153
154 .if !defined(COMPAT_LIBCOMPAT)
155 SUBDIR+=        flua
156 SUBDIR_DEPEND_flua=     libjail
157 .endif
158
159 # NB: keep these sorted by MK_* knobs
160
161 SUBDIR.${MK_BEARSSL}+=  libbearssl libsecureboot
162 SUBDIR.${MK_BLACKLIST}+=libblacklist
163 SUBDIR.${MK_BLUETOOTH}+=libbluetooth libsdp
164 SUBDIR.${MK_BSNMP}+=    libbsnmp
165
166 .if !defined(COMPAT_LIBCOMPAT)
167 .if ${MK_CLANG} != "no" || ${MK_LLD} != "no" || \
168     ${MK_LLDB} != "no" || ${MK_LLVM_BINUTILS} != "no"
169 SUBDIR+=        clang
170 .endif
171 .endif
172
173 SUBDIR.${MK_CUSE}+=     libcuse
174 SUBDIR.${MK_TOOLCHAIN}+=libpe
175 SUBDIR.${MK_DIALOG}+=   libdpv libfigpar
176 SUBDIR.${MK_FDT}+=      libfdt
177 SUBDIR.${MK_FILE}+=     libmagic
178 SUBDIR.${MK_GPIO}+=     libgpio
179 SUBDIR.${MK_GSSAPI}+=   libgssapi librpcsec_gss
180 SUBDIR.${MK_ICONV}+=    libiconv_modules
181 SUBDIR.${MK_KERBEROS_SUPPORT}+= libcom_err
182 SUBDIR.${MK_LDNS}+=     libldns
183 SUBDIR.${MK_STATS}+=    libstats
184
185 # The libraries under libclang_rt can only be built by clang.
186 .if ${COMPILER_TYPE} == "clang" && ${MK_CLANG} != "no"
187 _libclang_rt=   libclang_rt
188 .elif (${MK_ASAN} != "no" || ${MK_UBSAN} != "no") && make(all)
189 .error Requested build with sanitizers but cannot build runtime libraries!
190 .endif
191
192 SUBDIR.${MK_EFI}+=      libefivar
193 SUBDIR.${MK_GOOGLETEST}+=       googletest
194 SUBDIR.${MK_NETGRAPH}+= libnetgraph
195 SUBDIR.${MK_NIS}+=      libypclnt
196
197 .if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
198 _libvgl=        libvgl
199 .endif
200
201 .if ${MACHINE_CPUARCH} == "aarch64"
202 SUBDIR.${MK_PMC}+=      libopencsd
203 .endif
204
205 .if ${MACHINE_CPUARCH} == "amd64"
206 SUBDIR.${MK_PMC}+=      libipt
207 .endif
208
209 .if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "aarch64"
210 SUBDIR.${MK_BHYVE}+=    libvmmapi
211 .endif
212
213 .if ${MACHINE_ARCH} != "powerpc" && ${MACHINE_CPUARCH} != "arm"
214 SUBDIR.${MK_OPENMP}+=   libomp
215 .endif
216 .if ${MK_USB} != "no"
217 SUBDIR.${MK_OPENSSH}+=  libcbor libfido2
218 .endif
219 SUBDIR.${MK_OPENSSL}+=  libmp
220 SUBDIR.${MK_PF}+=       libpfctl
221 SUBDIR.${MK_PMC}+=      libpmc libpmcstat
222 SUBDIR.${MK_RADIUS_SUPPORT}+=   libradius
223 SUBDIR.${MK_SENDMAIL}+= libmilter libsm libsmdb libsmutil
224 SUBDIR.${MK_TELNET}+=   libtelnet
225 SUBDIR.${MK_TESTS_SUPPORT}+=    atf
226 SUBDIR.${MK_TESTS_SUPPORT}+=    liblutok
227 SUBDIR.${MK_TESTS}+=    tests
228 SUBDIR.${MK_UNBOUND}+=  libunbound
229 SUBDIR.${MK_USB}+=      libusbhid libusb
230 SUBDIR.${MK_OFED}+=     ofed
231 SUBDIR.${MK_VERIEXEC}+= libveriexec
232 SUBDIR.${MK_ZFS}+=      libbe
233
234 .if !make(install)
235 SUBDIR_PARALLEL=
236 .endif
237
238 .include <bsd.subdir.mk>