]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - share/man/man5/src.conf.5
MFC r365640: Improvements for the src.conf(5) and build(7) man pages
[FreeBSD/FreeBSD.git] / share / man / man5 / src.conf.5
1 .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman.
2 .\" $FreeBSD$
3 .Dd September 28, 2020
4 .Dt SRC.CONF 5
5 .Os
6 .Sh NAME
7 .Nm src.conf
8 .Nd "source build options"
9 .Sh DESCRIPTION
10 The
11 .Nm
12 file contains variables that control what components will be generated during
13 the build process of the
14 .Fx
15 source tree; see
16 .Xr build 7 .
17 .Pp
18 The
19 .Nm
20 file uses the standard makefile syntax.
21 However,
22 .Nm
23 should not specify any dependencies to
24 .Xr make 1 .
25 Instead,
26 .Nm
27 is to set
28 .Xr make 1
29 variables that control the aspects of how the system builds.
30 .Pp
31 The default location of
32 .Nm
33 is
34 .Pa /etc/src.conf ,
35 though an alternative location can be specified in the
36 .Xr make 1
37 variable
38 .Va SRCCONF .
39 Overriding the location of
40 .Nm
41 may be necessary if the system-wide settings are not suitable
42 for a particular build.
43 For instance, setting
44 .Va SRCCONF
45 to
46 .Pa /dev/null
47 effectively resets all build controls to their defaults.
48 .Pp
49 The only purpose of
50 .Nm
51 is to control the compilation of the
52 .Fx
53 source code, which is usually located in
54 .Pa /usr/src .
55 As a rule, the system administrator creates
56 .Nm
57 when the values of certain control variables need to be changed
58 from their defaults.
59 .Pp
60 In addition, control variables can be specified
61 for a particular build via the
62 .Fl D
63 option of
64 .Xr make 1
65 or in its environment; see
66 .Xr environ 7 .
67 .Pp
68 The environment of
69 .Xr make 1
70 for the build can be controlled via the
71 .Va SRC_ENV_CONF
72 variable, which defaults to
73 .Pa /etc/src-env.conf .
74 Some examples that may only be set in this file are
75 .Va WITH_DIRDEPS_BUILD ,
76 and
77 .Va WITH_META_MODE ,
78 and
79 .Va MAKEOBJDIRPREFIX
80 as they are environment-only variables.
81 .Pp
82 The values of variables are ignored regardless of their setting;
83 even if they would be set to
84 .Dq Li FALSE
85 or
86 .Dq Li NO .
87 The presence of an option causes
88 it to be honored by
89 .Xr make 1 .
90 .Pp
91 This list provides a name and short description for variables
92 that can be used for source builds.
93 .Bl -tag -width indent
94 .It Va WITHOUT_ACCT
95 Set to not build process accounting tools such as
96 .Xr accton 8
97 and
98 .Xr sa 8 .
99 .It Va WITHOUT_ACPI
100 Set to not build
101 .Xr acpiconf 8 ,
102 .Xr acpidump 8
103 and related programs.
104 .It Va WITHOUT_AMD
105 Set to not build
106 .Xr amd 8 ,
107 and related programs.
108 .It Va WITHOUT_APM
109 Set to not build
110 .Xr apm 8 ,
111 .Xr apmd 8
112 and related programs.
113 .It Va WITHOUT_ASSERT_DEBUG
114 Set to compile programs and libraries without the
115 .Xr assert 3
116 checks.
117 .It Va WITHOUT_AT
118 Set to not build
119 .Xr at 1
120 and related utilities.
121 .It Va WITHOUT_ATM
122 Set to not build
123 programs and libraries related to ATM networking.
124 .It Va WITHOUT_AUDIT
125 Set to not build audit support into system programs.
126 .It Va WITHOUT_AUTHPF
127 Set to not build
128 .Xr authpf 8 .
129 .It Va WITHOUT_AUTOFS
130 Set to not build
131 .Xr autofs 5
132 related programs, libraries, and kernel modules.
133 .It Va WITHOUT_AUTO_OBJ
134 Disable automatic creation of objdirs.
135 This is enabled by default if the wanted OBJDIR is writable by the current user.
136 .Pp
137 This must be set in the environment, make command line, or
138 .Pa /etc/src-env.conf ,
139 not
140 .Pa /etc/src.conf .
141 .It Va WITH_BEARSSL
142 Build the BearSSL library.
143 .Pp
144 BearSSL is a tiny SSL library suitable for embedded environments.
145 For details see
146 .Lk http://www.BearSSL.org/
147 .Pp
148 This library is currently only used to perform
149 signature verification and related operations
150 for Verified Exec and
151 .Xr loader 8 .
152 When set, these options are also in effect:
153 .Pp
154 .Bl -inset -compact
155 .It Va WITH_LOADER_EFI_SECUREBOOT
156 (unless
157 .Va WITHOUT_LOADER_EFI_SECUREBOOT
158 is set explicitly)
159 .It Va WITH_LOADER_VERIEXEC
160 (unless
161 .Va WITHOUT_LOADER_VERIEXEC
162 is set explicitly)
163 .It Va WITH_LOADER_VERIEXEC_VECTX
164 (unless
165 .Va WITHOUT_LOADER_VERIEXEC_VECTX
166 is set explicitly)
167 .It Va WITH_VERIEXEC
168 (unless
169 .Va WITHOUT_VERIEXEC
170 is set explicitly)
171 .El
172 .It Va WITHOUT_BHYVE
173 Set to not build or install
174 .Xr bhyve 8 ,
175 associated utilities, and examples.
176 .Pp
177 This option only affects amd64/amd64.
178 .It Va WITH_BIND_NOW
179 Build all binaries with the
180 .Dv DF_BIND_NOW
181 flag set to indicate that the run-time loader should perform all relocation
182 processing at process startup rather than on demand.
183 .It Va WITHOUT_BINUTILS
184 Do not build or install GNU
185 .Xr as 1 ,
186 .Xr ld.bfd 1 , and
187 .Xr objdump 1
188 as part
189 of the normal system build.
190 .Pp
191 This is a default setting on
192 arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
193 When set, it enforces these options:
194 .Pp
195 .Bl -item -compact
196 .It
197 .Va WITHOUT_GDB
198 .El
199 .It Va WITH_BINUTILS
200 Set to build and install GNU
201 .Xr as 1 ,
202 .Xr objdump 1 ,
203 and for some CPU architectures
204 .Xr ld.bfd 1
205 as part
206 of the normal system build.
207 .Pp
208 This is a default setting on
209 amd64/amd64, arm/arm, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
210 .It Va WITHOUT_BINUTILS_BOOTSTRAP
211 Do not build GNU binutils
212 as part of the bootstrap process.
213 .Pp
214 This is a default setting on
215 arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
216 .It Va WITH_BINUTILS_BOOTSTRAP
217 Build GNU binutils
218 as part of the bootstrap process.
219 .Pp
220 This is a default setting on
221 amd64/amd64, arm/arm, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
222 .It Va WITHOUT_BLACKLIST
223 Set this if you do not want to build
224 .Xr blacklistd 8
225 and
226 .Xr blacklistctl 8 .
227 When set, these options are also in effect:
228 .Pp
229 .Bl -inset -compact
230 .It Va WITHOUT_BLACKLIST_SUPPORT
231 (unless
232 .Va WITH_BLACKLIST_SUPPORT
233 is set explicitly)
234 .El
235 .It Va WITHOUT_BLACKLIST_SUPPORT
236 Set to build some programs without
237 .Xr libblacklist 3
238 support, like
239 .Xr fingerd 8 ,
240 .Xr ftpd 8 ,
241 and
242 .Xr sshd 8 .
243 .It Va WITHOUT_BLUETOOTH
244 Set to not build Bluetooth related kernel modules, programs and libraries.
245 .It Va WITHOUT_BOOT
246 Set to not build the boot blocks and loader.
247 .It Va WITHOUT_BOOTPARAMD
248 Set to not build or install
249 .Xr bootparamd 8 .
250 .It Va WITHOUT_BOOTPD
251 Set to not build or install
252 .Xr bootpd 8 .
253 .It Va WITHOUT_BSDINSTALL
254 Set to not build
255 .Xr bsdinstall 8 ,
256 .Xr sade 8 ,
257 and related programs.
258 .It Va WITHOUT_BSD_CPIO
259 Set to not build the BSD licensed version of cpio based on
260 .Xr libarchive 3 .
261 .It Va WITH_BSD_CRTBEGIN
262 Enable the BSD licensed
263 .Pa crtbegin.o
264 and
265 .Pa crtend.o .
266 .It Va WITH_BSD_GREP
267 Install BSD-licensed grep as '[ef]grep' instead of GNU grep.
268 .It Va WITHOUT_BSNMP
269 Set to not build or install
270 .Xr bsnmpd 1
271 and related libraries and data files.
272 .It Va WITHOUT_BZIP2
273 Set to not build contributed bzip2 software as a part of the base system.
274 .Bf -symbolic
275 The option has no effect yet.
276 .Ef
277 When set, these options are also in effect:
278 .Pp
279 .Bl -inset -compact
280 .It Va WITHOUT_BZIP2_SUPPORT
281 (unless
282 .Va WITH_BZIP2_SUPPORT
283 is set explicitly)
284 .El
285 .It Va WITHOUT_BZIP2_SUPPORT
286 Set to build some programs without optional bzip2 support.
287 .It Va WITHOUT_CALENDAR
288 Set to not build
289 .Xr calendar 1 .
290 .It Va WITHOUT_CAPSICUM
291 Set to not build Capsicum support into system programs.
292 When set, it enforces these options:
293 .Pp
294 .Bl -item -compact
295 .It
296 .Va WITHOUT_CASPER
297 .El
298 .It Va WITHOUT_CAROOT
299 Set to not add the trusted certificates from the Mozilla NSS bundle to
300 base.
301 .It Va WITHOUT_CASPER
302 Set to not build Casper program and related libraries.
303 .It Va WITH_CCACHE_BUILD
304 Set to use
305 .Xr ccache 1
306 for the build.
307 No configuration is required except to install the
308 .Sy devel/ccache
309 package.
310 When using with
311 .Xr distcc 1 ,
312 set
313 .Sy CCACHE_PREFIX=/usr/local/bin/distcc .
314 The default cache directory of
315 .Pa $HOME/.ccache
316 will be used, which can be overridden by setting
317 .Sy CCACHE_DIR .
318 The
319 .Sy CCACHE_COMPILERCHECK
320 option defaults to
321 .Sy content
322 when using the in-tree bootstrap compiler,
323 and
324 .Sy mtime
325 when using an external compiler.
326 The
327 .Sy CCACHE_CPP2
328 option is used for Clang but not GCC.
329 .Pp
330 Sharing a cache between multiple work directories requires using a layout
331 similar to
332 .Pa /some/prefix/src
333 .Pa /some/prefix/obj
334 and an environment such as:
335 .Bd -literal -offset indent
336 CCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj'
337 .Ed
338 .Pp
339 See
340 .Xr ccache 1
341 for more configuration options.
342 .It Va WITHOUT_CCD
343 Set to not build
344 .Xr geom_ccd 4
345 and related utilities.
346 .It Va WITHOUT_CDDL
347 Set to not build code licensed under Sun's CDDL.
348 When set, it enforces these options:
349 .Pp
350 .Bl -item -compact
351 .It
352 .Va WITHOUT_CTF
353 .It
354 .Va WITHOUT_LOADER_ZFS
355 .It
356 .Va WITHOUT_ZFS
357 .El
358 .It Va WITHOUT_CLANG
359 Set to not build the Clang C/C++ compiler during the regular phase of the build.
360 .Pp
361 This is a default setting on
362 sparc64/sparc64.
363 When set, it enforces these options:
364 .Pp
365 .Bl -item -compact
366 .It
367 .Va WITHOUT_CLANG_EXTRAS
368 .It
369 .Va WITHOUT_CLANG_FORMAT
370 .It
371 .Va WITHOUT_CLANG_FULL
372 .It
373 .Va WITHOUT_LLVM_COV
374 .El
375 .It Va WITH_CLANG
376 Set to build the Clang C/C++ compiler during the normal phase of the build.
377 .Pp
378 This is a default setting on
379 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf.
380 .It Va WITHOUT_CLANG_BOOTSTRAP
381 Set to not build the Clang C/C++ compiler during the bootstrap phase of
382 the build.
383 To be able to build the system, either gcc or clang bootstrap must be
384 enabled unless an alternate compiler is provided via XCC.
385 .Pp
386 This is a default setting on
387 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
388 .It Va WITH_CLANG_BOOTSTRAP
389 Set to build the Clang C/C++ compiler during the bootstrap phase of the build.
390 .Pp
391 This is a default setting on
392 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
393 .It Va WITH_CLANG_EXTRAS
394 Set to build additional clang and llvm tools, such as bugpoint.
395 .It Va WITH_CLANG_FORMAT
396 Set to build clang-format.
397 .It Va WITHOUT_CLANG_FULL
398 Set to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
399 the Clang C/C++ compiler.
400 .Pp
401 This is a default setting on
402 sparc64/sparc64.
403 .It Va WITH_CLANG_FULL
404 Set to build the ARCMigrate, Rewriter and StaticAnalyzer components of the
405 Clang C/C++ compiler.
406 .Pp
407 This is a default setting on
408 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf.
409 .It Va WITHOUT_CLANG_IS_CC
410 Set to install the GCC compiler as
411 .Pa /usr/bin/cc ,
412 .Pa /usr/bin/c++
413 and
414 .Pa /usr/bin/cpp .
415 .Pp
416 This is a default setting on
417 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
418 .It Va WITH_CLANG_IS_CC
419 Set to install the Clang C/C++ compiler as
420 .Pa /usr/bin/cc ,
421 .Pa /usr/bin/c++
422 and
423 .Pa /usr/bin/cpp .
424 .Pp
425 This is a default setting on
426 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
427 .It Va WITHOUT_CPP
428 Set to not build
429 .Xr cpp 1 .
430 .It Va WITHOUT_CROSS_COMPILER
431 Set to not build any cross compiler in the cross-tools stage of buildworld.
432 When compiling a different version of
433 .Fx
434 than what is installed on the system, provide an alternate
435 compiler with XCC to ensure success.
436 When compiling with an identical version of
437 .Fx
438 to the host, this option may be safely used.
439 This option may also be safe when the host version of
440 .Fx
441 is close to the sources being built, but all bets are off if there have
442 been any changes to the toolchain between the versions.
443 When set, it enforces these options:
444 .Pp
445 .Bl -item -compact
446 .It
447 .Va WITHOUT_BINUTILS_BOOTSTRAP
448 .It
449 .Va WITHOUT_CLANG_BOOTSTRAP
450 .It
451 .Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
452 .It
453 .Va WITHOUT_GCC_BOOTSTRAP
454 .It
455 .Va WITHOUT_LLD_BOOTSTRAP
456 .El
457 .It Va WITHOUT_CRYPT
458 Set to not build any crypto code.
459 When set, it enforces these options:
460 .Pp
461 .Bl -item -compact
462 .It
463 .Va WITHOUT_DMAGENT
464 .It
465 .Va WITHOUT_KERBEROS
466 .It
467 .Va WITHOUT_LDNS
468 .It
469 .Va WITHOUT_LDNS_UTILS
470 .It
471 .Va WITHOUT_OPENSSH
472 .It
473 .Va WITHOUT_OPENSSL
474 .It
475 .Va WITHOUT_PKGBOOTSTRAP
476 .It
477 .Va WITHOUT_SVN
478 .It
479 .Va WITHOUT_SVNLITE
480 .It
481 .Va WITHOUT_UNBOUND
482 .It
483 .Va WITHOUT_WIRELESS
484 .El
485 .Pp
486 When set, these options are also in effect:
487 .Pp
488 .Bl -inset -compact
489 .It Va WITHOUT_GSSAPI
490 (unless
491 .Va WITH_GSSAPI
492 is set explicitly)
493 .El
494 .It Va WITH_CTF
495 Set to compile with CTF (Compact C Type Format) data.
496 CTF data encapsulates a reduced form of debugging information
497 similar to DWARF and the venerable stabs and is required for DTrace.
498 .It Va WITHOUT_CTM
499 Set to not build
500 .Xr ctm 1
501 and related utilities.
502 .It Va WITHOUT_CUSE
503 Set to not build CUSE-related programs and libraries.
504 .It Va WITHOUT_CXGBETOOL
505 Set to not build
506 .Xr cxgbetool 8
507 .Pp
508 This is a default setting on
509 arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf.
510 .It Va WITH_CXGBETOOL
511 Set to build
512 .Xr cxgbetool 8
513 .Pp
514 This is a default setting on
515 amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and sparc64/sparc64.
516 .It Va WITHOUT_CXX
517 Set to not build
518 .Xr c++ 1
519 and related libraries.
520 It will also prevent building of
521 .Xr gperf 1
522 and
523 .Xr devd 8 .
524 When set, it enforces these options:
525 .Pp
526 .Bl -item -compact
527 .It
528 .Va WITHOUT_CLANG
529 .It
530 .Va WITHOUT_CLANG_EXTRAS
531 .It
532 .Va WITHOUT_CLANG_FORMAT
533 .It
534 .Va WITHOUT_CLANG_FULL
535 .It
536 .Va WITHOUT_DTRACE_TESTS
537 .It
538 .Va WITHOUT_GNUCXX
539 .It
540 .Va WITHOUT_LLVM_COV
541 .It
542 .Va WITHOUT_TESTS
543 .El
544 .It Va WITHOUT_DEBUG_FILES
545 Set to avoid building or installing standalone debug files for each
546 executable binary and shared library.
547 .It Va WITHOUT_DIALOG
548 Set to not build
549 .Xr dialog 1 ,
550 .Xr dialog 3 ,
551 .Xr dpv 1 ,
552 and
553 .Xr dpv 3 .
554 When set, it enforces these options:
555 .Pp
556 .Bl -item -compact
557 .It
558 .Va WITHOUT_BSDINSTALL
559 .El
560 .It Va WITHOUT_DICT
561 Set to not build the Webster dictionary files.
562 .It Va WITH_DIRDEPS_BUILD
563 This is an experimental build system.
564 For details see
565 http://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
566 Build commands can be seen from the top-level with:
567 .Dl make show-valid-targets
568 The build is driven by dirdeps.mk using
569 .Va DIRDEPS
570 stored in
571 Makefile.depend files found in each directory.
572 .Pp
573 The build can be started from anywhere, and behaves the same.
574 The initial instance of
575 .Xr make 1
576 recursively reads
577 .Va DIRDEPS
578 from
579 .Pa Makefile.depend ,
580 computing a graph of tree dependencies from the current origin.
581 Setting
582 .Va NO_DIRDEPS
583 skips checking dirdep dependencies and will only build in the current
584 and child directories.
585 .Va NO_DIRDEPS_BELOW
586 skips building any dirdeps and only build the current directory.
587 .Pp
588 This also utilizes the
589 .Va WITH_META_MODE
590 logic for incremental builds.
591 .Pp
592 The build hides commands executed unless
593 .Va NO_SILENT
594 is defined.
595 .Pp
596 Note that there is currently no mass install feature for this.
597 .Pp
598 When set, it enforces these options:
599 .Pp
600 .Bl -item -compact
601 .It
602 .Va WITH_INSTALL_AS_USER
603 .El
604 .Pp
605 When set, these options are also in effect:
606 .Pp
607 .Bl -inset -compact
608 .It Va WITH_META_MODE
609 (unless
610 .Va WITHOUT_META_MODE
611 is set explicitly)
612 .It Va WITH_STAGING
613 (unless
614 .Va WITHOUT_STAGING
615 is set explicitly)
616 .It Va WITH_STAGING_MAN
617 (unless
618 .Va WITHOUT_STAGING_MAN
619 is set explicitly)
620 .It Va WITH_STAGING_PROG
621 (unless
622 .Va WITHOUT_STAGING_PROG
623 is set explicitly)
624 .It Va WITH_SYSROOT
625 (unless
626 .Va WITHOUT_SYSROOT
627 is set explicitly)
628 .El
629 .Pp
630 This must be set in the environment, make command line, or
631 .Pa /etc/src-env.conf ,
632 not
633 .Pa /etc/src.conf .
634 .It Va WITH_DIRDEPS_CACHE
635 Cache result of dirdeps.mk which can save significant time
636 for subsequent builds.
637 Depends on
638 .Va WITH_DIRDEPS_BUILD .
639 .Pp
640 This must be set in the environment, make command line, or
641 .Pa /etc/src-env.conf ,
642 not
643 .Pa /etc/src.conf .
644 .It Va WITHOUT_DMAGENT
645 Set to not build dma Mail Transport Agent.
646 .It Va WITHOUT_DOCCOMPRESS
647 Set to not install compressed system documentation.
648 Only the uncompressed version will be installed.
649 .It Va WITH_DTRACE_TESTS
650 Set to build and install the DTrace test suite in
651 .Pa /usr/tests/cddl/usr.sbin/dtrace .
652 This test suite is considered experimental on architectures other than
653 amd64/amd64 and running it may cause system instability.
654 .It Va WITHOUT_DYNAMICROOT
655 Set this if you do not want to link
656 .Pa /bin
657 and
658 .Pa /sbin
659 dynamically.
660 .It Va WITHOUT_ED_CRYPTO
661 Set to build
662 .Xr ed 1
663 without support for encryption/decryption.
664 .It Va WITHOUT_EE
665 Set to not build and install
666 .Xr edit 1 ,
667 .Xr ee 1 ,
668 and related programs.
669 .It Va WITHOUT_EFI
670 Set not to build
671 .Xr efivar 3
672 and
673 .Xr efivar 8 .
674 .Pp
675 This is a default setting on
676 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
677 .It Va WITH_EFI
678 Set to build
679 .Xr efivar 3
680 and
681 .Xr efivar 8 .
682 .Pp
683 This is a default setting on
684 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
685 .It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
686 Set to not build ELF Tool Chain tools
687 (addr2line, nm, size, strings and strip)
688 as part of the bootstrap process.
689 .Bf -symbolic
690 An alternate bootstrap tool chain must be provided.
691 .Ef
692 .It Va WITHOUT_EXAMPLES
693 Set to avoid installing examples to
694 .Pa /usr/share/examples/ .
695 .It Va WITH_EXTRA_TCP_STACKS
696 Set to build extra TCP stack modules.
697 .It Va WITHOUT_FDT
698 Set to not build Flattened Device Tree support as part of the base system.
699 This includes the device tree compiler (dtc) and libfdt support library.
700 .It Va WITHOUT_FILE
701 Set to not build
702 .Xr file 1
703 and related programs.
704 .It Va WITHOUT_FINGER
705 Set to not build or install
706 .Xr finger 1
707 and
708 .Xr fingerd 8 .
709 .It Va WITHOUT_FLOPPY
710 Set to not build or install programs
711 for operating floppy disk driver.
712 .It Va WITHOUT_FMTREE
713 Set to not build and install
714 .Pa /usr/sbin/fmtree .
715 .It Va WITHOUT_FORMAT_EXTENSIONS
716 Set to not enable
717 .Fl fformat-extensions
718 when compiling the kernel.
719 Also disables all format checking.
720 .It Va WITHOUT_FORTH
721 Set to build bootloaders without Forth support.
722 .It Va WITHOUT_FP_LIBC
723 Set to build
724 .Nm libc
725 without floating-point support.
726 .It Va WITHOUT_FREEBSD_UPDATE
727 Set to not build
728 .Xr freebsd-update 8 .
729 .It Va WITHOUT_FTP
730 Set to not build or install
731 .Xr ftp 1
732 and
733 .Xr ftpd 8 .
734 .It Va WITHOUT_GAMES
735 Set to not build games.
736 .It Va WITHOUT_GCC
737 Set to not build and install gcc and g++ as part of the normal build process.
738 .Pp
739 This is a default setting on
740 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
741 .It Va WITH_GCC
742 Set to build and install gcc and g++.
743 .Pp
744 This is a default setting on
745 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
746 .It Va WITHOUT_GCC_BOOTSTRAP
747 Set to not build gcc and g++ as part of the bootstrap process.
748 You must enable either gcc or clang bootstrap to be able to build the system,
749 unless an alternative compiler is provided via
750 XCC.
751 .Pp
752 This is a default setting on
753 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
754 .It Va WITH_GCC_BOOTSTRAP
755 Set to build gcc and g++ as part of the bootstrap process.
756 .Pp
757 This is a default setting on
758 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
759 .It Va WITHOUT_GCOV
760 Set to not build the
761 .Xr gcov 1
762 tool.
763 .It Va WITHOUT_GDB
764 Set to not build
765 .Xr gdb 1 .
766 .Pp
767 This is a default setting on
768 arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
769 .It Va WITH_GDB
770 Set to build
771 .Xr gdb 1 .
772 .Pp
773 This is a default setting on
774 amd64/amd64, arm/arm, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
775 .It Va WITHOUT_GDB_LIBEXEC
776 Set to install
777 .Xr gdb 1
778 into
779 .Pa /usr/bin .
780 .Pp
781 This is a default setting on
782 sparc64/sparc64.
783 .It Va WITH_GDB_LIBEXEC
784 Set to install
785 .Xr gdb 1
786 into
787 .Pa /usr/libexec .
788 This permits
789 .Xr gdb 1
790 to be used as a fallback for
791 .Xr crashinfo 8
792 if a newer version is not installed.
793 .Pp
794 This is a default setting on
795 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf.
796 .It Va WITH_GH_BC
797 Set this option to install the enhanced
798 .Xr bc 1
799 and
800 .Xr dc 1
801 programs instead of the traditional FreeBSD versions.
802 .It Va WITHOUT_GNUCXX
803 Do not build the GNU C++ stack (g++, libstdc++).
804 This is the default on platforms where clang is the system compiler.
805 .Pp
806 This is a default setting on
807 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
808 .It Va WITH_GNUCXX
809 Build the GNU C++ stack (g++, libstdc++).
810 This is the default on platforms where gcc is the system compiler.
811 .Pp
812 This is a default setting on
813 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
814 .It Va WITHOUT_GNU_DIFF
815 Set to not build GNU
816 .Xr diff 1
817 and
818 .Xr diff3 1 .
819 .It Va WITHOUT_GNU_GREP
820 Set to not build GNU
821 .Xr grep 1 .
822 .It Va WITH_GNU_GREP_COMPAT
823 Set this option to include GNU extensions in
824 .Xr bsdgrep 1
825 by linking against libgnuregex.
826 .It Va WITHOUT_GOOGLETEST
827 Set to neither build nor install
828 .Lb libgmock ,
829 .Lb libgtest ,
830 and dependent tests.
831 .It Va WITHOUT_GPIO
832 Set to not build
833 .Xr gpioctl 8
834 as part of the base system.
835 .It Va WITHOUT_GPL_DTC
836 Set to build the BSD licensed version of the device tree compiler rather
837 than the GPLed one from elinux.org.
838 .Pp
839 This is a default setting on
840 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
841 .It Va WITH_GPL_DTC
842 Set to build the GPL'd version of the device tree compiler from elinux.org,
843 instead of the BSD licensed one.
844 .Pp
845 This is a default setting on
846 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
847 .It Va WITHOUT_GSSAPI
848 Set to not build libgssapi.
849 .It Va WITHOUT_HAST
850 Set to not build
851 .Xr hastd 8
852 and related utilities.
853 .It Va WITH_HESIOD
854 Set to build Hesiod support.
855 .It Va WITHOUT_HTML
856 Set to not build HTML docs.
857 .It Va WITHOUT_HYPERV
858 Set to not build or install HyperV utilities.
859 .Pp
860 This is a default setting on
861 arm/arm, arm/armv6, arm/armv7, arm64/aarch64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
862 .It Va WITH_HYPERV
863 Set to build or install HyperV utilities.
864 .Pp
865 This is a default setting on
866 amd64/amd64 and i386/i386.
867 .It Va WITHOUT_ICONV
868 Set to not build iconv as part of libc.
869 .It Va WITHOUT_INCLUDES
870 Set to not install header files.
871 This option used to be spelled
872 .Va NO_INCS .
873 .Bf -symbolic
874 The option does not work for build targets.
875 .Ef
876 .It Va WITHOUT_INET
877 Set to not build programs and libraries related to IPv4 networking.
878 When set, it enforces these options:
879 .Pp
880 .Bl -item -compact
881 .It
882 .Va WITHOUT_INET_SUPPORT
883 .El
884 .It Va WITHOUT_INET6
885 Set to not build
886 programs and libraries related to IPv6 networking.
887 When set, it enforces these options:
888 .Pp
889 .Bl -item -compact
890 .It
891 .Va WITHOUT_INET6_SUPPORT
892 .El
893 .It Va WITHOUT_INET6_SUPPORT
894 Set to build libraries, programs, and kernel modules without IPv6 support.
895 .It Va WITHOUT_INETD
896 Set to not build
897 .Xr inetd 8 .
898 .It Va WITHOUT_INET_SUPPORT
899 Set to build libraries, programs, and kernel modules without IPv4 support.
900 .It Va WITHOUT_INSTALLLIB
901 Set this to not install optional libraries.
902 For example, when creating a
903 .Xr nanobsd 8
904 image.
905 .Bf -symbolic
906 The option does not work for build targets.
907 .Ef
908 .It Va WITH_INSTALL_AS_USER
909 Set to make install targets succeed for non-root users by installing
910 files with owner and group attributes set to that of the user running
911 the
912 .Xr make 1
913 command.
914 The user still must set the
915 .Va DESTDIR
916 variable to point to a directory where the user has write permissions.
917 .It Va WITHOUT_IPFILTER
918 Set to not build IP Filter package.
919 .It Va WITHOUT_IPFW
920 Set to not build IPFW tools.
921 .It Va WITHOUT_IPSEC_SUPPORT
922 Set to not build the kernel with
923 .Xr ipsec 4
924 support.
925 This option is needed for
926 .Xr ipsec 4
927 and
928 .Xr tcpmd5 4 .
929 .It Va WITHOUT_ISCSI
930 Set to not build
931 .Xr iscsid 8
932 and related utilities.
933 .It Va WITHOUT_JAIL
934 Set to not build tools for the support of jails; e.g.,
935 .Xr jail 8 .
936 .It Va WITHOUT_KDUMP
937 Set to not build
938 .Xr kdump 1
939 and
940 .Xr truss 1 .
941 .It Va WITHOUT_KERBEROS
942 Set this to not build Kerberos 5 (KTH Heimdal).
943 When set, these options are also in effect:
944 .Pp
945 .Bl -inset -compact
946 .It Va WITHOUT_GSSAPI
947 (unless
948 .Va WITH_GSSAPI
949 is set explicitly)
950 .It Va WITHOUT_KERBEROS_SUPPORT
951 (unless
952 .Va WITH_KERBEROS_SUPPORT
953 is set explicitly)
954 .El
955 .It Va WITHOUT_KERBEROS_SUPPORT
956 Set to build some programs without Kerberos support, like
957 .Xr ssh 1 ,
958 .Xr telnet 1 ,
959 .Xr sshd 8 ,
960 and
961 .Xr telnetd 8 .
962 .It Va WITH_KERNEL_RETPOLINE
963 Set to enable the "retpoline" mitigation for CVE-2017-5715 in the kernel
964 build.
965 .It Va WITHOUT_KERNEL_SYMBOLS
966 Set to not install kernel symbol files.
967 .Bf -symbolic
968 This option is recommended for those people who have small root partitions.
969 .Ef
970 .It Va WITHOUT_KVM
971 Set to not build the
972 .Nm libkvm
973 library as a part of the base system.
974 .Bf -symbolic
975 The option has no effect yet.
976 .Ef
977 When set, these options are also in effect:
978 .Pp
979 .Bl -inset -compact
980 .It Va WITHOUT_KVM_SUPPORT
981 (unless
982 .Va WITH_KVM_SUPPORT
983 is set explicitly)
984 .El
985 .It Va WITHOUT_KVM_SUPPORT
986 Set to build some programs without optional
987 .Nm libkvm
988 support.
989 .It Va WITHOUT_LDNS
990 Setting this variable will prevent the LDNS library from being built.
991 When set, it enforces these options:
992 .Pp
993 .Bl -item -compact
994 .It
995 .Va WITHOUT_LDNS_UTILS
996 .It
997 .Va WITHOUT_UNBOUND
998 .El
999 .It Va WITHOUT_LDNS_UTILS
1000 Setting this variable will prevent building the LDNS utilities
1001 .Xr drill 1
1002 and
1003 .Xr host 1 .
1004 .It Va WITHOUT_LEGACY_CONSOLE
1005 Set to not build programs that support a legacy PC console; e.g.,
1006 .Xr kbdcontrol 1
1007 and
1008 .Xr vidcontrol 1 .
1009 .It Va WITHOUT_LIB32
1010 On 64-bit platforms, set to not build 32-bit library set and a
1011 .Nm ld-elf32.so.1
1012 runtime linker.
1013 .It Va WITHOUT_LIBCPLUSPLUS
1014 Set to avoid building libcxxrt and libc++.
1015 .It Va WITHOUT_LIBPTHREAD
1016 Set to not build the
1017 .Nm libpthread
1018 providing library,
1019 .Nm libthr .
1020 When set, it enforces these options:
1021 .Pp
1022 .Bl -item -compact
1023 .It
1024 .Va WITHOUT_LIBTHR
1025 .El
1026 .It Va WITH_LIBSOFT
1027 On armv6 only, set to enable soft float ABI compatibility libraries.
1028 This option is for transitioning to the new hard float ABI.
1029 .It Va WITHOUT_LIBTHR
1030 Set to not build the
1031 .Nm libthr
1032 (1:1 threading)
1033 library.
1034 .It Va WITHOUT_LLD
1035 Set to not build LLVM's lld linker.
1036 .Pp
1037 This is a default setting on
1038 sparc64/sparc64.
1039 .It Va WITH_LLD
1040 Set to build LLVM's lld linker.
1041 .Pp
1042 This is a default setting on
1043 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf.
1044 .It Va WITHOUT_LLDB
1045 Set to not build the LLDB debugger.
1046 .Pp
1047 This is a default setting on
1048 arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1049 .It Va WITH_LLDB
1050 Set to build the LLDB debugger.
1051 .Pp
1052 This is a default setting on
1053 amd64/amd64, arm64/aarch64 and i386/i386.
1054 .It Va WITHOUT_LLD_BOOTSTRAP
1055 Set to not build the LLD linker during the bootstrap phase of
1056 the build.
1057 To be able to build the system, either Binutils or LLD bootstrap must be
1058 enabled unless an alternate linker is provided via XLD.
1059 .Pp
1060 This is a default setting on
1061 arm/arm, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1062 .It Va WITH_LLD_BOOTSTRAP
1063 Set to build the LLD linker during the bootstrap phase of the build.
1064 .Pp
1065 This is a default setting on
1066 amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
1067 .It Va WITHOUT_LLD_IS_LD
1068 Set to use GNU binutils ld as the system linker, instead of LLVM's LLD.
1069 .Pp
1070 This is a default setting on
1071 arm/arm, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1072 .It Va WITH_LLD_IS_LD
1073 Set to use LLVM's LLD as the system linker, instead of GNU binutils ld.
1074 .Pp
1075 This is a default setting on
1076 amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
1077 .It Va WITH_LLVM_ASSERTIONS
1078 Set to enable debugging assertions in LLVM.
1079 .It Va WITHOUT_LLVM_COV
1080 Set to not build the
1081 .Xr llvm-cov 1
1082 tool.
1083 .Pp
1084 This is a default setting on
1085 sparc64/sparc64.
1086 .It Va WITH_LLVM_COV
1087 Set to build the
1088 .Xr llvm-cov 1
1089 tool.
1090 .Pp
1091 This is a default setting on
1092 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf.
1093 .It Va WITHOUT_LLVM_LIBUNWIND
1094 Set to use GCC's stack unwinder (instead of LLVM's libunwind).
1095 .Pp
1096 This is a default setting on
1097 arm/arm, arm/armv6, arm/armv7, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1098 .It Va WITH_LLVM_LIBUNWIND
1099 Set to use LLVM's libunwind stack unwinder (instead of GCC's unwinder).
1100 .Pp
1101 This is a default setting on
1102 amd64/amd64, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf.
1103 .It Va WITHOUT_LLVM_TARGET_AARCH64
1104 Set to not build LLVM target support for AArch64.
1105 The
1106 .Va LLVM_TARGET_ALL
1107 option should be used rather than this in most cases.
1108 .Pp
1109 This is a default setting on
1110 arm/arm.
1111 .It Va WITH_LLVM_TARGET_AARCH64
1112 Set to build LLVM target support for AArch64.
1113 The
1114 .Va LLVM_TARGET_ALL
1115 option should be used rather than this in most cases.
1116 .Pp
1117 This is a default setting on
1118 amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1119 .It Va WITHOUT_LLVM_TARGET_ALL
1120 Set to only build the required LLVM target support.
1121 This option is preferred to specific target support options.
1122 When set, these options are also in effect:
1123 .Pp
1124 .Bl -inset -compact
1125 .It Va WITHOUT_LLVM_TARGET_AARCH64
1126 (unless
1127 .Va WITH_LLVM_TARGET_AARCH64
1128 is set explicitly)
1129 .It Va WITHOUT_LLVM_TARGET_ARM
1130 (unless
1131 .Va WITH_LLVM_TARGET_ARM
1132 is set explicitly)
1133 .It Va WITHOUT_LLVM_TARGET_MIPS
1134 (unless
1135 .Va WITH_LLVM_TARGET_MIPS
1136 is set explicitly)
1137 .It Va WITHOUT_LLVM_TARGET_POWERPC
1138 (unless
1139 .Va WITH_LLVM_TARGET_POWERPC
1140 is set explicitly)
1141 .It Va WITHOUT_LLVM_TARGET_RISCV
1142 (unless
1143 .Va WITH_LLVM_TARGET_RISCV
1144 is set explicitly)
1145 .It Va WITHOUT_LLVM_TARGET_SPARC
1146 (unless
1147 .Va WITH_LLVM_TARGET_SPARC
1148 is set explicitly)
1149 .El
1150 .It Va WITHOUT_LLVM_TARGET_ARM
1151 Set to not build LLVM target support for ARM.
1152 The
1153 .Va LLVM_TARGET_ALL
1154 option should be used rather than this in most cases.
1155 .It Va WITH_LLVM_TARGET_BPF
1156 Set to build LLVM target support for BPF.
1157 The
1158 .Va LLVM_TARGET_ALL
1159 option should be used rather than this in most cases.
1160 .It Va WITHOUT_LLVM_TARGET_MIPS
1161 Set to not build LLVM target support for MIPS.
1162 The
1163 .Va LLVM_TARGET_ALL
1164 option should be used rather than this in most cases.
1165 .Pp
1166 This is a default setting on
1167 arm/arm.
1168 .It Va WITH_LLVM_TARGET_MIPS
1169 Set to build LLVM target support for MIPS.
1170 The
1171 .Va LLVM_TARGET_ALL
1172 option should be used rather than this in most cases.
1173 .Pp
1174 This is a default setting on
1175 amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1176 .It Va WITHOUT_LLVM_TARGET_POWERPC
1177 Set to not build LLVM target support for PowerPC.
1178 The
1179 .Va LLVM_TARGET_ALL
1180 option should be used rather than this in most cases.
1181 .Pp
1182 This is a default setting on
1183 arm/arm.
1184 .It Va WITH_LLVM_TARGET_POWERPC
1185 Set to build LLVM target support for PowerPC.
1186 The
1187 .Va LLVM_TARGET_ALL
1188 option should be used rather than this in most cases.
1189 .Pp
1190 This is a default setting on
1191 amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1192 .It Va WITHOUT_LLVM_TARGET_RISCV
1193 Set to not build LLVM target support for RISC-V.
1194 The
1195 .Va LLVM_TARGET_ALL
1196 option should be used rather than this in most cases.
1197 .Pp
1198 This is a default setting on
1199 arm/arm.
1200 .It Va WITH_LLVM_TARGET_RISCV
1201 Set to build LLVM target support for RISC-V.
1202 The
1203 .Va LLVM_TARGET_ALL
1204 option should be used rather than this in most cases.
1205 .Pp
1206 This is a default setting on
1207 amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1208 .It Va WITHOUT_LLVM_TARGET_SPARC
1209 Set to not build LLVM target support for SPARC.
1210 The
1211 .Va LLVM_TARGET_ALL
1212 option should be used rather than this in most cases.
1213 .Pp
1214 This is a default setting on
1215 arm/arm.
1216 .It Va WITH_LLVM_TARGET_SPARC
1217 Set to build LLVM target support for SPARC.
1218 The
1219 .Va LLVM_TARGET_ALL
1220 option should be used rather than this in most cases.
1221 .Pp
1222 This is a default setting on
1223 amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1224 .It Va WITHOUT_LLVM_TARGET_X86
1225 Set to not build LLVM target support for X86.
1226 The
1227 .Va LLVM_TARGET_ALL
1228 option should be used rather than this in most cases.
1229 .Pp
1230 This is a default setting on
1231 arm/arm.
1232 .It Va WITH_LLVM_TARGET_X86
1233 Set to build LLVM target support for X86.
1234 The
1235 .Va LLVM_TARGET_ALL
1236 option should be used rather than this in most cases.
1237 .Pp
1238 This is a default setting on
1239 amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1240 .It Va WITH_LOADER_EFI_SECUREBOOT
1241 Enable building
1242 .Xr loader 8
1243 with support for verification based on certificates obtained from UEFI.
1244 .Pp
1245 .It Va WITH_LOADER_FIREWIRE
1246 Enable firewire support in /boot/loader on x86. This option is a nop
1247 on all other platforms.
1248 .It Va WITH_LOADER_FORCE_LE
1249 Set to force the powerpc boot loader to launch the kernel in little
1250 endian mode.
1251 .It Va WITHOUT_LOADER_GELI
1252 Disable inclusion of GELI crypto support in the boot chain binaries.
1253 .Pp
1254 This is a default setting on
1255 powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1256 .It Va WITH_LOADER_GELI
1257 Set to build GELI bootloader support.
1258 .Pp
1259 This is a default setting on
1260 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf.
1261 .It Va WITHOUT_LOADER_LUA
1262 Set to not build LUA bindings for the boot loader.
1263 .Pp
1264 This is a default setting on
1265 powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1266 .It Va WITH_LOADER_LUA
1267 Set to build LUA bindings for the boot loader.
1268 .Pp
1269 This is a default setting on
1270 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf.
1271 .It Va WITHOUT_LOADER_OFW
1272 Disable building of openfirmware bootloader components.
1273 .Pp
1274 This is a default setting on
1275 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf.
1276 .It Va WITH_LOADER_OFW
1277 Set to build openfirmware bootloader components.
1278 .Pp
1279 This is a default setting on
1280 powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1281 .It Va WITHOUT_LOADER_UBOOT
1282 Disable building of ubldr.
1283 .Pp
1284 This is a default setting on
1285 amd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1286 .It Va WITH_LOADER_UBOOT
1287 Set to build ubldr.
1288 .Pp
1289 This is a default setting on
1290 arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
1291 .It Va WITH_LOADER_VERIEXEC
1292 Enable building
1293 .Xr loader 8
1294 with support for verification similar to Verified Exec.
1295 .Pp
1296 Depends on
1297 .Va WITH_BEARSSL .
1298 When set, these options are also in effect:
1299 .Pp
1300 .Bl -inset -compact
1301 .It Va WITH_LOADER_EFI_SECUREBOOT
1302 (unless
1303 .Va WITHOUT_LOADER_EFI_SECUREBOOT
1304 is set explicitly)
1305 .It Va WITH_LOADER_VERIEXEC_VECTX
1306 (unless
1307 .Va WITHOUT_LOADER_VERIEXEC_VECTX
1308 is set explicitly)
1309 .El
1310 .It Va WITH_LOADER_VERIEXEC_PASS_MANIFEST
1311 Enable building
1312 .Xr loader 8
1313 with support to pass a verified manifest to the kernel.
1314 The kernel has to be built with a module to parse the manifest.
1315 .Pp
1316 Depends on
1317 .Va WITH_LOADER_VERIEXEC .
1318 .It Va WITHOUT_LOADER_ZFS
1319 Set to not build ZFS file system boot loader support.
1320 .It Va WITHOUT_LOCALES
1321 Set to not build localization files; see
1322 .Xr locale 1 .
1323 .It Va WITHOUT_LOCATE
1324 Set to not build
1325 .Xr locate 1
1326 and related programs.
1327 .It Va WITHOUT_LPR
1328 Set to not build
1329 .Xr lpr 1
1330 and related programs.
1331 .It Va WITHOUT_LS_COLORS
1332 Set to build
1333 .Xr ls 1
1334 without support for colors to distinguish file types.
1335 .It Va WITHOUT_LZMA_SUPPORT
1336 Set to build some programs without optional lzma compression support.
1337 .It Va WITHOUT_MAIL
1338 Set to not build any mail support (MUA or MTA).
1339 When set, it enforces these options:
1340 .Pp
1341 .Bl -item -compact
1342 .It
1343 .Va WITHOUT_DMAGENT
1344 .It
1345 .Va WITHOUT_MAILWRAPPER
1346 .It
1347 .Va WITHOUT_SENDMAIL
1348 .El
1349 .It Va WITHOUT_MAILWRAPPER
1350 Set to not build the
1351 .Xr mailwrapper 8
1352 MTA selector.
1353 .It Va WITHOUT_MAKE
1354 Set to not install
1355 .Xr make 1
1356 and related support files.
1357 .It Va WITHOUT_MAKE_CHECK_USE_SANDBOX
1358 Set to not execute
1359 .Dq Li "make check"
1360 in limited sandbox mode.
1361 This option should be paired with
1362 .Va WITH_INSTALL_AS_USER
1363 if executed as an unprivileged user.
1364 See
1365 .Xr tests 7
1366 for more details.
1367 .It Va WITHOUT_MALLOC_PRODUCTION
1368 Set to enable assertions and statistics gathering in
1369 .Xr malloc 3 .
1370 It also defaults the A and J runtime options to on.
1371 .It Va WITHOUT_MAN
1372 Set to not build manual pages.
1373 When set, these options are also in effect:
1374 .Pp
1375 .Bl -inset -compact
1376 .It Va WITHOUT_MAN_UTILS
1377 (unless
1378 .Va WITH_MAN_UTILS
1379 is set explicitly)
1380 .El
1381 .It Va WITHOUT_MANCOMPRESS
1382 Set to not to install compressed man pages.
1383 Only the uncompressed versions will be installed.
1384 .It Va WITHOUT_MAN_UTILS
1385 Set to not build utilities for manual pages,
1386 .Xr apropos 1 ,
1387 .Xr makewhatis 1 ,
1388 .Xr man 1 ,
1389 .Xr whatis 1 ,
1390 .Xr manctl 8 ,
1391 and related support files.
1392 .It Va WITH_META_MODE
1393 Create
1394 .Xr make 1
1395 meta files when building, which can provide a reliable incremental build when
1396 using
1397 .Xr filemon 4 .
1398 The meta file is created in OBJDIR as
1399 .Pa target.meta .
1400 These meta files track the command that was executed, its output, and the
1401 current directory.
1402 The
1403 .Xr filemon 4
1404 module is required unless
1405 .Va NO_FILEMON
1406 is defined.
1407 When the module is loaded, any files used by the commands executed are
1408 tracked as dependencies for the target in its meta file.
1409 The target is considered out-of-date and rebuilt if any of these
1410 conditions are true compared to the last build:
1411 .Bl -bullet -compact
1412 .It
1413 The command to execute changes.
1414 .It
1415 The current working directory changes.
1416 .It
1417 The target's meta file is missing.
1418 .It
1419 The target's meta file is missing filemon data when filemon is loaded
1420 and a previous run did not have it loaded.
1421 .It
1422 [requires
1423 .Xr filemon 4 ]
1424 Files read, executed or linked to are newer than the target.
1425 .It
1426 [requires
1427 .Xr filemon 4 ]
1428 Files read, written, executed or linked are missing.
1429 .El
1430 The meta files can also be useful for debugging.
1431 .Pp
1432 The build hides commands that are executed unless
1433 .Va NO_SILENT
1434 is defined.
1435 Errors cause
1436 .Xr make 1
1437 to show some of its environment for further debugging.
1438 .Pp
1439 The build operates as it normally would otherwise.
1440 This option originally invoked a different build system but that was renamed
1441 to
1442 .Va WITH_DIRDEPS_BUILD .
1443 .Pp
1444 This must be set in the environment, make command line, or
1445 .Pa /etc/src-env.conf ,
1446 not
1447 .Pa /etc/src.conf .
1448 .It Va WITHOUT_MLX5TOOL
1449 Set to not build
1450 .Xr mlx5tool 8
1451 .Pp
1452 This is a default setting on
1453 arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf.
1454 .It Va WITH_MLX5TOOL
1455 Set to build
1456 .Xr mlx5tool 8
1457 .Pp
1458 This is a default setting on
1459 amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and sparc64/sparc64.
1460 .It Va WITHOUT_MODULE_DRM
1461 Disable creation of old drm video modules.
1462
1463 .It Va WITHOUT_MODULE_DRM2
1464 Disable creation of old drm2 video modules.
1465 .It Va WITH_NAND
1466 Set to build the NAND Flash components.
1467 .It Va WITHOUT_NDIS
1468 Set to not build programs and libraries
1469 related to NDIS emulation support.
1470 .It Va WITHOUT_NETCAT
1471 Set to not build
1472 .Xr nc 1
1473 utility.
1474 .It Va WITHOUT_NETGRAPH
1475 Set to not build applications to support
1476 .Xr netgraph 4 .
1477 When set, it enforces these options:
1478 .Pp
1479 .Bl -item -compact
1480 .It
1481 .Va WITHOUT_ATM
1482 .It
1483 .Va WITHOUT_BLUETOOTH
1484 .El
1485 .Pp
1486 When set, these options are also in effect:
1487 .Pp
1488 .Bl -inset -compact
1489 .It Va WITHOUT_NETGRAPH_SUPPORT
1490 (unless
1491 .Va WITH_NETGRAPH_SUPPORT
1492 is set explicitly)
1493 .El
1494 .It Va WITHOUT_NETGRAPH_SUPPORT
1495 Set to build libraries, programs, and kernel modules without netgraph support.
1496 .It Va WITHOUT_NIS
1497 Set to not build
1498 .Xr NIS 8
1499 support and related programs.
1500 If set, you might need to adopt your
1501 .Xr nsswitch.conf 5
1502 and remove
1503 .Sq nis
1504 entries.
1505 .It Va WITHOUT_NLS
1506 Set to not build NLS catalogs.
1507 When set, it enforces these options:
1508 .Pp
1509 .Bl -item -compact
1510 .It
1511 .Va WITHOUT_NLS_CATALOGS
1512 .El
1513 .It Va WITHOUT_NLS_CATALOGS
1514 Set to not build NLS catalog support for
1515 .Xr csh 1 .
1516 .It Va WITHOUT_NS_CACHING
1517 Set to disable name caching in the
1518 .Pa nsswitch
1519 subsystem.
1520 The generic caching daemon,
1521 .Xr nscd 8 ,
1522 will not be built either if this option is set.
1523 .It Va WITHOUT_NTP
1524 Set to not build
1525 .Xr ntpd 8
1526 and related programs.
1527 .It Va WITHOUT_NVME
1528 Set to not build nvme related tools and kernel modules.
1529 .Pp
1530 This is a default setting on
1531 arm/arm, arm/armv6, arm/armv7, arm64/aarch64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1532 .It Va WITH_NVME
1533 Set to build nvme related tools and kernel modules.
1534
1535 .Pp
1536 This is a default setting on
1537 amd64/amd64, i386/i386 and powerpc/powerpc64.
1538 .It Va WITH_OFED
1539 Set to build the
1540 .Dq "OpenFabrics Enterprise Distribution"
1541 Infiniband software stack.
1542 .It Va WITH_OFED_EXTRA
1543 Set to build the non-essential components of the
1544 .Dq "OpenFabrics Enterprise Distribution"
1545 Infiniband software stack, mostly examples.
1546 .It Va WITH_OPENLDAP
1547 Enable building openldap support for kerberos.
1548 .It Va WITHOUT_OPENMP
1549 Set to not build LLVM's OpenMP runtime.
1550 .Pp
1551 This is a default setting on
1552 arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1553 .It Va WITH_OPENMP
1554 Set to build LLVM's OpenMP runtime.
1555 .Pp
1556 This is a default setting on
1557 amd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64.
1558 .It Va WITHOUT_OPENSSH
1559 Set to not build OpenSSH.
1560 .It Va WITHOUT_OPENSSL
1561 Set to not build OpenSSL.
1562 When set, it enforces these options:
1563 .Pp
1564 .Bl -item -compact
1565 .It
1566 .Va WITHOUT_DMAGENT
1567 .It
1568 .Va WITHOUT_KERBEROS
1569 .It
1570 .Va WITHOUT_LDNS
1571 .It
1572 .Va WITHOUT_LDNS_UTILS
1573 .It
1574 .Va WITHOUT_OPENSSH
1575 .It
1576 .Va WITHOUT_PKGBOOTSTRAP
1577 .It
1578 .Va WITHOUT_SVN
1579 .It
1580 .Va WITHOUT_SVNLITE
1581 .It
1582 .Va WITHOUT_UNBOUND
1583 .It
1584 .Va WITHOUT_WIRELESS
1585 .El
1586 .Pp
1587 When set, these options are also in effect:
1588 .Pp
1589 .Bl -inset -compact
1590 .It Va WITHOUT_GSSAPI
1591 (unless
1592 .Va WITH_GSSAPI
1593 is set explicitly)
1594 .El
1595 .It Va WITHOUT_PAM
1596 Set to not build PAM library and modules.
1597 .Bf -symbolic
1598 This option is deprecated and does nothing.
1599 .Ef
1600 When set, these options are also in effect:
1601 .Pp
1602 .Bl -inset -compact
1603 .It Va WITHOUT_PAM_SUPPORT
1604 (unless
1605 .Va WITH_PAM_SUPPORT
1606 is set explicitly)
1607 .El
1608 .It Va WITHOUT_PAM_SUPPORT
1609 Set to build some programs without PAM support, particularly
1610 .Xr ftpd 8
1611 and
1612 .Xr ppp 8 .
1613 .It Va WITHOUT_PC_SYSINSTALL
1614 Set to not build
1615 .Xr pc-sysinstall 8
1616 and related programs.
1617 .It Va WITHOUT_PF
1618 Set to not build PF firewall package.
1619 When set, it enforces these options:
1620 .Pp
1621 .Bl -item -compact
1622 .It
1623 .Va WITHOUT_AUTHPF
1624 .El
1625 .It Va WITH_PIE
1626 Build dynamically linked binaries as
1627 Position-Independent Executable (PIE).
1628 .It Va WITHOUT_PKGBOOTSTRAP
1629 Set to not build
1630 .Xr pkg 7
1631 bootstrap tool.
1632 .It Va WITHOUT_PMC
1633 Set to not build
1634 .Xr pmccontrol 8
1635 and related programs.
1636 .It Va WITHOUT_PORTSNAP
1637 Set to not build or install
1638 .Xr portsnap 8
1639 and related files.
1640 .It Va WITHOUT_PPP
1641 Set to not build
1642 .Xr ppp 8
1643 and related programs.
1644 .It Va WITHOUT_PROFILE
1645 Set to not build profiled libraries for use with
1646 .Xr gprof 8 .
1647 .Pp
1648 This is a default setting on
1649 mips/mips64el, mips/mips64, mips/mips64elhf and mips/mips64hf.
1650 .It Va WITH_PROFILE
1651 Set to build profiled libraries for use with
1652 .Xr gprof 8 .
1653 .Pp
1654 This is a default setting on
1655 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mipsn32, mips/mipselhf, mips/mipshf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1656 .It Va WITHOUT_QUOTAS
1657 Set to not build
1658 .Xr quota 1
1659 and related programs.
1660 .It Va WITHOUT_RADIUS_SUPPORT
1661 Set to not build radius support into various applications, like
1662 .Xr pam_radius 8
1663 and
1664 .Xr ppp 8 .
1665 .It Va WITH_RATELIMIT
1666 Set to build the system with rate limit support.
1667 .Pp
1668 This makes
1669 .Dv SO_MAX_PACING_RATE
1670 effective in
1671 .Xr getsockopt 2 ,
1672 and
1673 .Ar txrlimit
1674 support in
1675 .Xr ifconfig 8 ,
1676 by proxy.
1677 .It Va WITHOUT_RBOOTD
1678 Set to not build or install
1679 .Xr rbootd 8 .
1680 .It Va WITHOUT_REPRODUCIBLE_BUILD
1681 Set to include build metadata (such as the build time, user, and host)
1682 in the kernel, boot loaders, and uname output.
1683 Successive builds will not be bit-for-bit identical.
1684 .It Va WITHOUT_RESCUE
1685 Set to not build
1686 .Xr rescue 8 .
1687 .It Va WITH_RETPOLINE
1688 Set to build the base system with the retpoline speculative execution
1689 vulnerability mitigation for CVE-2017-5715.
1690 .It Va WITHOUT_ROUTED
1691 Set to not build
1692 .Xr routed 8
1693 utility.
1694 .It Va WITH_RPCBIND_WARMSTART_SUPPORT
1695 Set to build
1696 .Xr rpcbind 8
1697 with warmstart support.
1698 .It Va WITHOUT_SENDMAIL
1699 Set to not build
1700 .Xr sendmail 8
1701 and related programs.
1702 .It Va WITHOUT_SERVICESDB
1703 Set to not install
1704 .Pa /var/db/services.db .
1705 .It Va WITHOUT_SETUID_LOGIN
1706 Set this to disable the installation of
1707 .Xr login 1
1708 as a set-user-ID root program.
1709 .It Va WITHOUT_SHAREDOCS
1710 Set to not build the
1711 .Bx 4.4
1712 legacy docs.
1713 .It Va WITH_SHARED_TOOLCHAIN
1714 Set to build the toolchain binaries as dynamically linked executables.
1715 The set includes
1716 .Xr cc 1 ,
1717 .Xr make 1
1718 and necessary utilities like assembler, linker and library archive manager.
1719 .It Va WITH_SORT_THREADS
1720 Set to enable threads in
1721 .Xr sort 1 .
1722 .It Va WITHOUT_SOURCELESS
1723 Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
1724 When set, it enforces these options:
1725 .Pp
1726 .Bl -item -compact
1727 .It
1728 .Va WITHOUT_SOURCELESS_HOST
1729 .It
1730 .Va WITHOUT_SOURCELESS_UCODE
1731 .El
1732 .It Va WITHOUT_SOURCELESS_HOST
1733 Set to not build kernel modules that include sourceless native code for host CPU.
1734 .It Va WITHOUT_SOURCELESS_UCODE
1735 Set to not build kernel modules that include sourceless microcode.
1736 .It Va WITHOUT_SSP
1737 Set to not build world with propolice stack smashing protection.
1738 .Pp
1739 This is a default setting on
1740 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1741 .It Va WITH_SSP
1742 Set to build world with propolice stack smashing protection.
1743 .Pp
1744 This is a default setting on
1745 amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1746 .It Va WITH_STAGING
1747 Enable staging of files to a stage tree.
1748 This can be best thought of as auto-install to
1749 .Va DESTDIR
1750 with some extra meta data to ensure dependencies can be tracked.
1751 Depends on
1752 .Va WITH_DIRDEPS_BUILD .
1753 When set, these options are also in effect:
1754 .Pp
1755 .Bl -inset -compact
1756 .It Va WITH_STAGING_MAN
1757 (unless
1758 .Va WITHOUT_STAGING_MAN
1759 is set explicitly)
1760 .It Va WITH_STAGING_PROG
1761 (unless
1762 .Va WITHOUT_STAGING_PROG
1763 is set explicitly)
1764 .El
1765 .Pp
1766 This must be set in the environment, make command line, or
1767 .Pa /etc/src-env.conf ,
1768 not
1769 .Pa /etc/src.conf .
1770 .It Va WITH_STAGING_MAN
1771 Enable staging of man pages to stage tree.
1772 .It Va WITH_STAGING_PROG
1773 Enable staging of PROGs to stage tree.
1774 .It Va WITH_STALE_STAGED
1775 Check staged files are not stale.
1776 .It Va WITH_SVN
1777 Set to install
1778 .Xr svnlite 1
1779 as
1780 .Xr svn 1 .
1781 .It Va WITHOUT_SVNLITE
1782 Set to not build
1783 .Xr svnlite 1
1784 and related programs.
1785 .It Va WITHOUT_SYMVER
1786 Set to disable symbol versioning when building shared libraries.
1787 .It Va WITHOUT_SYSCONS
1788 Set to not build
1789 .Xr syscons 4
1790 support files such as keyboard maps, fonts, and screen output maps.
1791 .It Va WITH_SYSROOT
1792 Enable use of sysroot during build.
1793 Depends on
1794 .Va WITH_DIRDEPS_BUILD .
1795 .Pp
1796 This must be set in the environment, make command line, or
1797 .Pa /etc/src-env.conf ,
1798 not
1799 .Pa /etc/src.conf .
1800 .It Va WITHOUT_SYSTEM_COMPILER
1801 Set to not opportunistically skip building a cross-compiler during the
1802 bootstrap phase of the build.
1803 Normally, if the currently installed compiler matches the planned bootstrap
1804 compiler type and revision, then it will not be built.
1805 This does not prevent a compiler from being built for installation though,
1806 only for building one for the build itself.
1807 The
1808 .Va WITHOUT_CLANG
1809 and
1810 .Va WITHOUT_GCC
1811 options control those.
1812 .It Va WITHOUT_SYSTEM_LINKER
1813 Set to not opportunistically skip building a cross-linker during the
1814 bootstrap phase of the build.
1815 Normally, if the currently installed linker matches the planned bootstrap
1816 linker type and revision, then it will not be built.
1817 This does not prevent a linker from being built for installation though,
1818 only for building one for the build itself.
1819 The
1820 .Va WITHOUT_LLD
1821 and
1822 .Va WITHOUT_BINUTILS
1823 options control those.
1824 .Pp
1825 This option is only relevant when
1826 .Va WITH_LLD_BOOTSTRAP
1827 is set.
1828 .It Va WITHOUT_TALK
1829 Set to not build or install
1830 .Xr talk 1
1831 and
1832 .Xr talkd 8 .
1833 .It Va WITHOUT_TCP_WRAPPERS
1834 Set to not build or install
1835 .Xr tcpd 8 ,
1836 and related utilities.
1837 .It Va WITHOUT_TCSH
1838 Set to not build and install
1839 .Pa /bin/csh
1840 (which is
1841 .Xr tcsh 1 ) .
1842 .It Va WITHOUT_TELNET
1843 Set to not build
1844 .Xr telnet 1
1845 and related programs.
1846 .It Va WITHOUT_TESTS
1847 Set to not build nor install the
1848 .Fx
1849 Test Suite in
1850 .Pa /usr/tests/ .
1851 See
1852 .Xr tests 7
1853 for more details.
1854 This also disables the build of all test-related dependencies, including ATF.
1855 When set, it enforces these options:
1856 .Pp
1857 .Bl -item -compact
1858 .It
1859 .Va WITHOUT_DTRACE_TESTS
1860 .El
1861 .Pp
1862 When set, these options are also in effect:
1863 .Pp
1864 .Bl -inset -compact
1865 .It Va WITHOUT_GOOGLETEST
1866 (unless
1867 .Va WITH_GOOGLETEST
1868 is set explicitly)
1869 .It Va WITHOUT_TESTS_SUPPORT
1870 (unless
1871 .Va WITH_TESTS_SUPPORT
1872 is set explicitly)
1873 .El
1874 .It Va WITHOUT_TESTS_SUPPORT
1875 Set to disables the build of all test-related dependencies, including ATF.
1876 When set, it enforces these options:
1877 .Pp
1878 .Bl -item -compact
1879 .It
1880 .Va WITHOUT_GOOGLETEST
1881 .El
1882 .It Va WITHOUT_TEXTPROC
1883 Set to not build
1884 programs used for text processing.
1885 .It Va WITHOUT_TFTP
1886 Set to not build or install
1887 .Xr tftp 1
1888 and
1889 .Xr tftpd 8 .
1890 .It Va WITHOUT_TIMED
1891 Set to not build or install
1892 .Xr timed 8 .
1893 .It Va WITHOUT_TOOLCHAIN
1894 Set to not install header or
1895 programs used for program development,
1896 compilers, debuggers etc.
1897 When set, it enforces these options:
1898 .Pp
1899 .Bl -item -compact
1900 .It
1901 .Va WITHOUT_BINUTILS
1902 .It
1903 .Va WITHOUT_CLANG
1904 .It
1905 .Va WITHOUT_CLANG_EXTRAS
1906 .It
1907 .Va WITHOUT_CLANG_FORMAT
1908 .It
1909 .Va WITHOUT_CLANG_FULL
1910 .It
1911 .Va WITHOUT_GCC
1912 .It
1913 .Va WITHOUT_GDB
1914 .It
1915 .Va WITHOUT_INCLUDES
1916 .It
1917 .Va WITHOUT_LLD
1918 .It
1919 .Va WITHOUT_LLDB
1920 .It
1921 .Va WITHOUT_LLVM_COV
1922 .El
1923 .It Va WITHOUT_UNBOUND
1924 Set to not build
1925 .Xr unbound 8
1926 and related programs.
1927 .It Va WITHOUT_UNIFIED_OBJDIR
1928 Set to use the historical object directory format for
1929 .Xr build 7
1930 targets.
1931 For native-builds and builds done directly in sub-directories the format of
1932 .Pa ${MAKEOBJDIRPREFIX}/${.CURDIR}
1933 is used,
1934 while for cross-builds
1935 .Pa ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR}
1936 is used.
1937 .Pp
1938 This option is transitional and will be removed before the 12.0 release,
1939 at which time
1940 .va WITH_UNIFIED_OBJDIR
1941 will be enabled permanently.
1942 .Pp
1943 This must be set in the environment, make command line, or
1944 .Pa /etc/src-env.conf ,
1945 not
1946 .Pa /etc/src.conf .
1947 .It Va WITHOUT_USB
1948 Set to not build USB-related programs and libraries.
1949 .It Va WITHOUT_USB_GADGET_EXAMPLES
1950 Set to not build USB gadget kernel modules.
1951 .It Va WITHOUT_UTMPX
1952 Set to not build user accounting tools such as
1953 .Xr last 1 ,
1954 .Xr users 1 ,
1955 .Xr who 1 ,
1956 .Xr ac 8 ,
1957 .Xr lastlogin 8
1958 and
1959 .Xr utx 8 .
1960 .It Va WITH_VERIEXEC
1961 Enable building
1962 .Xr veriexec 8
1963 which loads the contents of verified manifests into the kernel
1964 for use by
1965 .Xr mac_veriexec 4
1966 .Pp
1967 Depends on
1968 .Va WITH_BEARSSL .
1969 .It Va WITHOUT_VI
1970 Set to not build and install vi, view, ex and related programs.
1971 .It Va WITHOUT_VT
1972 Set to not build
1973 .Xr vt 4
1974 support files (fonts and keymaps).
1975 .It Va WITHOUT_WARNS
1976 Set this to not add warning flags to the compiler invocations.
1977 Useful as a temporary workaround when code enters the tree
1978 which triggers warnings in environments that differ from the
1979 original developer.
1980 .It Va WITHOUT_WIRELESS
1981 Set to not build programs used for 802.11 wireless networks; especially
1982 .Xr wpa_supplicant 8
1983 and
1984 .Xr hostapd 8 .
1985 When set, these options are also in effect:
1986 .Pp
1987 .Bl -inset -compact
1988 .It Va WITHOUT_WIRELESS_SUPPORT
1989 (unless
1990 .Va WITH_WIRELESS_SUPPORT
1991 is set explicitly)
1992 .El
1993 .It Va WITHOUT_WIRELESS_SUPPORT
1994 Set to build libraries, programs, and kernel modules without
1995 802.11 wireless support.
1996 .It Va WITHOUT_WPA_SUPPLICANT_EAPOL
1997 Build
1998 .Xr wpa_supplicant 8
1999 without support for the IEEE 802.1X protocol and without
2000 support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS
2001 protocols (usable only via 802.1X).
2002 .It Va WITHOUT_ZFS
2003 Set to not build ZFS file system kernel module, libraries, and user commands.
2004 .It Va WITHOUT_ZONEINFO
2005 Set to not build the timezone database.
2006 When set, it enforces these options:
2007 .Pp
2008 .Bl -item -compact
2009 .It
2010 .Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT
2011 .El
2012 .It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
2013 Set to build leapsecond information in to the timezone database.
2014 .El
2015 .Sh FILES
2016 .Bl -tag -compact -width Pa
2017 .It Pa /etc/src.conf
2018 .It Pa /etc/src-env.conf
2019 .It Pa /usr/share/mk/bsd.own.mk
2020 .El
2021 .Sh SEE ALSO
2022 .Xr make 1 ,
2023 .Xr make.conf 5 ,
2024 .Xr build 7 ,
2025 .Xr ports 7
2026 .Sh HISTORY
2027 The
2028 .Nm
2029 file appeared in
2030 .Fx 7.0 .
2031 .Sh AUTHORS
2032 This manual page was autogenerated by
2033 .An tools/build/options/makeman .