1 .\" DO NOT EDIT-- this file is generated by tools/build/options/makeman.
8 .Nd "source build options"
12 file contains settings that will apply to every build involving the
19 file uses the standard makefile syntax.
22 should not specify any dependencies to
28 variables that control the aspects of how the system builds.
30 The default location of
34 though an alternative location can be specified in the
38 Overriding the location of
40 may be necessary if the system-wide settings are not suitable
41 for a particular build.
46 effectively resets all build controls to their defaults.
50 is to control the compilation of the
52 source code, which is usually located in
54 As a rule, the system administrator creates
56 when the values of certain control variables need to be changed
59 In addition, control variables can be specified
60 for a particular build via the
64 or in its environment; see
69 for the build can be controlled via the
71 variable, which defaults to
72 .Pa /etc/src-env.conf .
73 Some examples that may only be set in this file are
74 .Va WITH_DIRDEPS_BUILD ,
77 as they are environment-only variables.
80 may be set here only when using
81 .Va WITH_DIRDEPS_BUILD .
83 The values of variables are ignored regardless of their setting;
84 even if they would be set to
88 The presence of an option causes
92 This list provides a name and short description for variables
93 that can be used for source builds.
94 .Bl -tag -width indent
96 Set to not build process accounting tools such as
104 and related programs.
108 and related programs.
113 and related programs.
114 .It Va WITHOUT_ASSERT_DEBUG
115 Set to compile programs and libraries without the
121 and related utilities.
124 programs and libraries related to ATM networking.
126 Set to not build audit support into system programs.
127 .It Va WITHOUT_AUTHPF
130 .It Va WITHOUT_AUTOFS
133 related programs, libraries, and kernel modules.
135 Enable automatic creation of objdirs.
137 This must be set in the environment, make command line, or
138 .Pa /etc/src-env.conf ,
142 Set to not build or install
144 associated utilities, and examples.
146 This option only affects amd64/amd64.
147 .It Va WITHOUT_BINUTILS
148 Set to not build or install binutils (as, ld, objcopy, and objdump ) as part
149 of the normal system build.
150 The resulting system cannot build programs from source.
152 This is a default setting on
153 arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
154 When set, it enforces these options:
161 Set to build and install binutils (as, ld, objcopy, and objdump) as part
162 of the normal system build.
164 This is a default setting on
165 amd64/amd64, arm/arm, arm/armeb, arm/armv6, 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.
166 .It Va WITHOUT_BINUTILS_BOOTSTRAP
167 Set to not build binutils (as, ld, objcopy and objdump)
168 as part of the bootstrap process.
170 The option does not work for build targets unless some alternative
171 toolchain is provided.
174 This is a default setting on
175 arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
176 .It Va WITH_BINUTILS_BOOTSTRAP
177 Set build binutils (as, ld, objcopy and objdump)
178 as part of the bootstrap process.
180 This is a default setting on
181 amd64/amd64, arm/arm, arm/armeb, arm/armv6, 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.
182 .It Va WITHOUT_BLACKLIST
183 Set this if you do not want to build
187 When set, it enforces these options:
191 .Va WITHOUT_BLACKLIST_SUPPORT
193 .It Va WITHOUT_BLACKLIST_SUPPORT
194 Set to build some programs without
203 .It Va WITHOUT_BLUETOOTH
204 Set to not build Bluetooth related kernel modules, programs and libraries.
206 Set to not build the boot blocks and loader.
207 .It Va WITHOUT_BOOTPARAMD
208 Set to not build or install
210 .It Va WITHOUT_BOOTPD
211 Set to not build or install
213 .It Va WITHOUT_BSDINSTALL
217 and related programs.
218 .It Va WITHOUT_BSD_CPIO
219 Set to not build the BSD licensed version of cpio based on
222 Install BSD-licensed grep as '[ef]grep' instead of GNU grep.
223 .It Va WITHOUT_BSD_GREP_FASTMATCH
224 Set this option to exclude the fastmatch implementation from
229 Set to not build or install
231 and related libraries and data files.
233 Set to not build contributed bzip2 software as a part of the base system.
235 The option has no effect yet.
237 When set, it enforces these options:
241 .Va WITHOUT_BZIP2_SUPPORT
243 .It Va WITHOUT_BZIP2_SUPPORT
244 Set to build some programs without optional bzip2 support.
245 .It Va WITHOUT_CALENDAR
248 .It Va WITHOUT_CAPSICUM
249 Set to not build Capsicum support into system programs.
250 When set, it enforces these options:
256 .It Va WITHOUT_CASPER
257 Set to not build Casper program and related libraries.
258 .It Va WITH_CCACHE_BUILD
262 No configuration is required except to install the
268 .Sy CCACHE_PREFIX=/usr/local/bin/distcc .
269 The default cache directory of
271 will be used, which can be overridden by setting
274 .Sy CCACHE_COMPILERCHECK
277 when using the in-tree bootstrap compiler,
280 when using an external compiler.
283 option is used for Clang but not GCC.
285 Sharing a cache between multiple work directories requires using a layout
289 and an environment such as:
290 .Bd -literal -offset indent
291 CCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj'
296 for more configuration options.
300 and related utilities.
302 Set to not build code licensed under Sun's CDDL.
303 When set, it enforces these options:
312 Set to not build the Clang C/C++ compiler during the regular phase of the build.
314 This is a default setting on
315 riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
316 When set, it enforces these options:
320 .Va WITHOUT_CLANG_EXTRAS
322 .Va WITHOUT_CLANG_FULL
325 Set to build the Clang C/C++ compiler during the normal phase of the build.
327 This is a default setting on
328 amd64/amd64, arm/arm, arm/armeb, arm/armv6, 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 and powerpc/powerpcspe.
329 .It Va WITHOUT_CLANG_BOOTSTRAP
330 Set to not build the Clang C/C++ compiler during the bootstrap phase of
332 To be able to build the system, either gcc or clang bootstrap must be
333 enabled unless an alternate compiler is provided via XCC.
335 This is a default setting on
336 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.
337 .It Va WITH_CLANG_BOOTSTRAP
338 Set to build the Clang C/C++ compiler during the bootstrap phase of the build.
340 This is a default setting on
341 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64 and i386/i386.
342 .It Va WITH_CLANG_EXTRAS
343 Set to build additional clang and llvm tools, such as bugpoint.
344 .It Va WITHOUT_CLANG_FULL
345 Set to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
346 the Clang C/C++ compiler.
348 This is a default setting on
349 riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
350 .It Va WITH_CLANG_FULL
351 Set to build the ARCMigrate, Rewriter and StaticAnalyzer components of the
352 Clang C/C++ compiler.
354 This is a default setting on
355 amd64/amd64, arm/arm, arm/armeb, arm/armv6, 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 and powerpc/powerpcspe.
356 .It Va WITHOUT_CLANG_IS_CC
357 Set to install the GCC compiler as
363 This is a default setting on
364 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.
365 .It Va WITH_CLANG_IS_CC
366 Set to install the Clang C/C++ compiler as
372 This is a default setting on
373 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64 and i386/i386.
377 .It Va WITHOUT_CROSS_COMPILER
378 Set to not build any cross compiler in the cross-tools stage of buildworld.
379 When compiling a different version of
381 than what is installed on the system, provide an alternate
382 compiler with XCC to ensure success.
383 When compiling with an identical version of
385 to the host, this option may be safely used.
386 This option may also be safe when the host version of
388 is close to the sources being built, but all bets are off if there have
389 been any changes to the toolchain between the versions.
390 When set, it enforces these options:
394 .Va WITHOUT_BINUTILS_BOOTSTRAP
396 .Va WITHOUT_CLANG_BOOTSTRAP
398 .Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
400 .Va WITHOUT_GCC_BOOTSTRAP
403 Set to not build any crypto code.
404 When set, it enforces these options:
410 .Va WITHOUT_KERBEROS_SUPPORT
417 When set, these options are also in effect:
420 .It Va WITHOUT_GSSAPI
426 Set to compile with CTF (Compact C Type Format) data.
427 CTF data encapsulates a reduced form of debugging information
428 similar to DWARF and the venerable stabs and is required for DTrace.
432 and related utilities.
434 Set to not build CUSE-related programs and libraries.
435 .It Va WITHOUT_CXGBETOOL
439 This is a default setting on
440 arm/arm, arm/armeb, arm/armv6, 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.
441 .It Va WITH_CXGBETOOL
445 This is a default setting on
446 amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and sparc64/sparc64.
450 and related libraries.
451 It will also prevent building of
456 This is a default setting on
457 riscv/riscv64 and riscv/riscv64sf.
458 When set, it enforces these options:
464 .Va WITHOUT_CLANG_EXTRAS
466 .Va WITHOUT_CLANG_FULL
468 .Va WITHOUT_DTRACE_TESTS
474 .Va WITHOUT_TESTS_SUPPORT
479 and related libraries.
481 This is a default setting on
482 amd64/amd64, arm/arm, arm/armeb, arm/armv6, 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 and sparc64/sparc64.
483 .It Va WITHOUT_DEBUG_FILES
484 Set to avoid building or installing standalone debug files for each
485 executable binary and shared library.
486 .It Va WITHOUT_DIALOG
493 When set, it enforces these options:
497 .Va WITHOUT_BSDINSTALL
500 Set to not build the Webster dictionary files.
501 .It Va WITH_DIRDEPS_BUILD
502 This is an experimental build system.
504 http://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
505 Build commands can be seen from the top-level with:
506 .Dl make show-valid-targets
507 The build is driven by dirdeps.mk using
510 Makefile.depend files found in each directory.
512 The build can be started from anywhere, and behaves the same.
513 The initial instance of
518 .Pa Makefile.depend ,
519 computing a graph of tree dependencies from the current origin.
522 skips checking dirdep dependencies and will only build in the current
523 and child directories.
525 skips building any dirdeps and only build the current directory.
527 This also utilizes the
529 logic for incremental builds.
531 The build hides commands executed unless
535 Note that there is currently no mass install feature for this.
537 When set, it enforces these options:
541 .Va WITH_INSTALL_AS_USER
544 When set, these options are also in effect:
551 .It Va WITH_META_MODE
553 .Va WITHOUT_META_MODE
559 .It Va WITH_STAGING_MAN
561 .Va WITHOUT_STAGING_MAN
563 .It Va WITH_STAGING_PROG
565 .Va WITHOUT_STAGING_PROG
573 This must be set in the environment, make command line, or
574 .Pa /etc/src-env.conf ,
577 .It Va WITH_DIRDEPS_CACHE
578 Cache result of dirdeps.mk which can save significant time
579 for subsequent builds.
581 .Va WITH_DIRDEPS_BUILD .
583 This must be set in the environment, make command line, or
584 .Pa /etc/src-env.conf ,
587 .It Va WITHOUT_DMAGENT
588 Set to not build dma Mail Transport Agent.
589 .It Va WITHOUT_DOCCOMPRESS
590 Set to not install compressed system documentation.
591 Only the uncompressed version will be installed.
592 .It Va WITH_DTRACE_TESTS
593 Set to build and install the DTrace test suite in
594 .Pa /usr/tests/cddl/usr.sbin/dtrace .
595 This test suite is considered experimental on architectures other than
596 amd64/amd64 and running it may cause system instability.
597 .It Va WITHOUT_DYNAMICROOT
598 Set this if you do not want to link
603 .It Va WITHOUT_ED_CRYPTO
606 without support for encryption/decryption.
608 Set to not build and install
611 and related programs.
618 This is a default setting on
619 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.
626 This is a default setting on
627 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64 and i386/i386.
628 .It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
629 Set to not build ELF Tool Chain tools
630 (addr2line, nm, size, strings and strip)
631 as part of the bootstrap process.
633 An alternate bootstrap tool chain must be provided.
635 .It Va WITHOUT_EXAMPLES
636 Set to avoid installing examples to
637 .Pa /usr/share/examples/ .
638 .It Va WITH_EXTRA_TCP_STACKS
639 Set to build extra TCP stack modules.
641 Set to not build Flattened Device Tree support as part of the base system.
642 This includes the device tree compiler (dtc) and libfdt support library.
646 and related programs.
647 .It Va WITHOUT_FINGER
648 Set to not build or install
652 .It Va WITHOUT_FLOPPY
653 Set to not build or install programs
654 for operating floppy disk driver.
655 .It Va WITHOUT_FMTREE
656 Set to not build and install
657 .Pa /usr/sbin/fmtree .
658 .It Va WITHOUT_FORMAT_EXTENSIONS
660 .Fl fformat-extensions
661 when compiling the kernel.
662 Also disables all format checking.
664 Set to build bootloaders without Forth support.
665 .It Va WITHOUT_FP_LIBC
668 without floating-point support.
669 .It Va WITHOUT_FREEBSD_UPDATE
671 .Xr freebsd-update 8 .
673 Set to not build or install
678 Set to not build games.
680 Set to not build and install gcc and g++ as part of the normal build process.
682 This is a default setting on
683 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
685 Set to build and install gcc and g++.
687 This is a default setting on
688 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.
689 .It Va WITHOUT_GCC_BOOTSTRAP
690 Set to not build gcc and g++ as part of the bootstrap process.
691 You must enable either gcc or clang bootstrap to be able to build the system,
692 unless an alternative compiler is provided via
695 This is a default setting on
696 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
697 .It Va WITH_GCC_BOOTSTRAP
698 Set to build gcc and g++ as part of the bootstrap process.
700 This is a default setting on
701 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.
710 This is a default setting on
711 arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
716 This is a default setting on
717 amd64/amd64, arm/arm, arm/armeb, arm/armv6, 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.
718 .It Va WITHOUT_GDB_LIBEXEC
724 This is a default setting on
725 arm/arm, arm/armeb, arm/armv6 and sparc64/sparc64.
726 .It Va WITH_GDB_LIBEXEC
733 to be used as a fallback for
735 if a newer version is not installed.
737 This is a default setting on
738 amd64/amd64, 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.
739 .It Va WITHOUT_GNUCXX
740 Do not build the GNU C++ stack (g++, libstdc++).
741 This is the default on platforms where clang is the system compiler.
743 This is a default setting on
744 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
746 Build the GNU C++ stack (g++, libstdc++).
747 This is the default on platforms where gcc is the system compiler.
749 This is a default setting on
750 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.
751 .It Va WITHOUT_GNU_DIFF
756 .It Va WITHOUT_GNU_GREP
759 .It Va WITH_GNU_GREP_COMPAT
760 Set this option to include GNU extensions in
762 by linking against libgnuregex.
766 as part of the base system.
767 .It Va WITHOUT_GPL_DTC
768 Set to build the BSD licensed version of the device tree compiler rather
769 than the GPLed one from elinux.org.
771 This is a default setting on
772 amd64/amd64, arm/arm, arm/armeb, arm/armv6, 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 and powerpc/powerpcspe.
774 Set to build the GPL'd version of the device tree compiler from elinux.org,
775 instead of the BSD licensed one.
777 This is a default setting on
778 riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
779 .It Va WITHOUT_GSSAPI
780 Set to not build libgssapi.
784 and related utilities.
786 Set to build Hesiod support.
788 Set to not build HTML docs.
789 .It Va WITHOUT_HYPERV
790 Set to not build or install HyperV utilities.
792 Set to not build iconv as part of libc.
793 .It Va WITHOUT_INCLUDES
794 Set to not install header files.
795 This option used to be spelled
798 The option does not work for build targets.
801 Set to not build programs and libraries related to IPv4 networking.
802 When set, it enforces these options:
806 .Va WITHOUT_INET_SUPPORT
810 programs and libraries related to IPv6 networking.
811 When set, it enforces these options:
815 .Va WITHOUT_INET6_SUPPORT
817 .It Va WITHOUT_INET6_SUPPORT
818 Set to build libraries, programs, and kernel modules without IPv6 support.
822 .It Va WITHOUT_INET_SUPPORT
823 Set to build libraries, programs, and kernel modules without IPv4 support.
824 .It Va WITHOUT_INSTALLLIB
825 Set this to not install optional libraries.
826 For example, when creating a
830 The option does not work for build targets.
832 .It Va WITH_INSTALL_AS_USER
833 Set to make install targets succeed for non-root users by installing
834 files with owner and group attributes set to that of the user running
838 The user still must set the
840 variable to point to a directory where the user has write permissions.
841 .It Va WITHOUT_IPFILTER
842 Set to not build IP Filter package.
844 Set to not build IPFW tools.
845 .It Va WITHOUT_IPSEC_SUPPORT
846 Set to not build the kernel with
849 This option is needed for
856 and related utilities.
858 Set to not build tools for the support of jails; e.g.,
865 .It Va WITHOUT_KERBEROS
866 Set this to not build Kerberos 5 (KTH Heimdal).
867 When set, it enforces these options:
871 .Va WITHOUT_KERBEROS_SUPPORT
874 When set, these options are also in effect:
877 .It Va WITHOUT_GSSAPI
882 .It Va WITHOUT_KERBEROS_SUPPORT
883 Set to build some programs without Kerberos support, like
889 .It Va WITHOUT_KERNEL_SYMBOLS
890 Set to not install kernel symbol files.
892 This option is recommended for those people who have small root partitions.
897 library as a part of the base system.
899 The option has no effect yet.
901 When set, it enforces these options:
905 .Va WITHOUT_KVM_SUPPORT
907 .It Va WITHOUT_KVM_SUPPORT
908 Set to build some programs without optional
912 Setting this variable will prevent the LDNS library from being built.
913 When set, it enforces these options:
917 .Va WITHOUT_LDNS_UTILS
921 .It Va WITHOUT_LDNS_UTILS
922 Setting this variable will prevent building the LDNS utilities
926 .It Va WITHOUT_LEGACY_CONSOLE
927 Set to not build programs that support a legacy PC console; e.g.,
932 On 64-bit platforms, set to not build 32-bit library set and a
935 .It Va WITHOUT_LIBCPLUSPLUS
936 Set to avoid building libcxxrt and libc++.
937 .It Va WITHOUT_LIBPTHREAD
942 When set, it enforces these options:
949 On armv6 only, set to enable soft float ABI compatibility libraries.
950 This option is for transitioning to the new hard float ABI.
951 .It Va WITHOUT_LIBTHR
957 Set to not build LLVM's lld linker.
959 This is a default setting on
960 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.
962 Set to build LLVM's lld linker.
964 This is a default setting on
965 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64 and i386/i386.
967 Set to not build the LLDB debugger.
969 This is a default setting on
970 arm/arm, arm/armeb, arm/armv6, 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.
972 Set to build the LLDB debugger.
974 This is a default setting on
975 amd64/amd64, arm64/aarch64 and i386/i386.
976 .It Va WITHOUT_LLD_BOOTSTRAP
977 Set to not build the LLD linker during the bootstrap phase of
979 To be able to build the system, either Binutils or LLD bootstrap must be
980 enabled unless an alternate linker is provided via XLD.
982 This is a default setting on
983 amd64/amd64, arm/arm, arm/armeb, arm/armv6, 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.
984 .It Va WITH_LLD_BOOTSTRAP
985 Set to build the LLD linker during the bootstrap phase of the build.
987 This is a default setting on
989 .It Va WITHOUT_LLD_IS_LD
990 Set to use GNU binutils ld as the system linker, instead of LLVM's LLD.
992 This is a default setting on
993 amd64/amd64, arm/arm, arm/armeb, arm/armv6, 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.
994 .It Va WITH_LLD_IS_LD
995 Set to use LLVM's LLD as the system linker, instead of GNU binutils ld.
997 This is a default setting on
999 .It Va WITHOUT_LLVM_LIBUNWIND
1000 Set to use GCC's stack unwinder (instead of LLVM's libunwind).
1002 This is a default setting on
1003 arm/arm, arm/armeb, arm/armv6, 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.
1004 .It Va WITH_LLVM_LIBUNWIND
1005 Set to use LLVM's libunwind stack unwinder (instead of GCC's unwinder).
1007 This is a default setting on
1008 amd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
1009 .It Va WITHOUT_LOCALES
1010 Set to not build localization files; see
1012 .It Va WITHOUT_LOCATE
1015 and related programs.
1019 and related programs.
1020 .It Va WITHOUT_LS_COLORS
1023 without support for colors to distinguish file types.
1024 .It Va WITHOUT_LZMA_SUPPORT
1025 Set to build some programs without optional lzma compression support.
1027 Set to not build any mail support (MUA or MTA).
1028 When set, it enforces these options:
1034 .Va WITHOUT_MAILWRAPPER
1036 .Va WITHOUT_SENDMAIL
1038 .It Va WITHOUT_MAILWRAPPER
1039 Set to not build the
1045 and related support files.
1047 Set to not build manual pages.
1048 When set, these options are also in effect:
1051 .It Va WITHOUT_MAN_UTILS
1056 .It Va WITHOUT_MANCOMPRESS
1057 Set to not to install compressed man pages.
1058 Only the uncompressed versions will be installed.
1059 .It Va WITHOUT_MAN_UTILS
1060 Set to not build utilities for manual pages,
1067 and related support files.
1068 .It Va WITH_META_MODE
1071 meta files when building, which can provide a reliable incremental build when
1074 The meta file is created in OBJDIR as
1076 These meta files track the command that was executed, its output, and the
1080 module is required unless
1083 When the module is loaded, any files used by the commands executed are
1084 tracked as dependencies for the target in its meta file.
1085 The target is considered out-of-date and rebuilt if any of these
1086 conditions are true compared to the last build:
1087 .Bl -bullet -compact
1089 The command to execute changes.
1091 The current working directory changes.
1093 The target's meta file is missing.
1095 The target's meta file is missing filemon data when filemon is loaded
1096 and a previous run did not have it loaded.
1100 Files read, executed or linked to are newer than the target.
1104 Files read, written, executed or linked are missing.
1106 The meta files can also be useful for debugging.
1108 The build hides commands that are executed unless
1113 to show some of its environment for further debugging.
1115 The build operates as it normally would otherwise.
1116 This option originally invoked a different build system but that was renamed
1118 .Va WITH_DIRDEPS_BUILD .
1120 This must be set in the environment, make command line, or
1121 .Pa /etc/src-env.conf ,
1125 Set to build the NAND Flash components.
1127 Set to not build programs and libraries
1128 related to NDIS emulation support.
1129 .It Va WITHOUT_NETCAT
1133 .It Va WITHOUT_NETGRAPH
1134 Set to not build applications to support
1136 When set, it enforces these options:
1142 .Va WITHOUT_BLUETOOTH
1144 .Va WITHOUT_NETGRAPH_SUPPORT
1146 .It Va WITHOUT_NETGRAPH_SUPPORT
1147 Set to build libraries, programs, and kernel modules without netgraph support.
1151 support and related programs.
1152 If set, you might need to adopt your
1158 Set to not build NLS catalogs.
1159 When set, it enforces these options:
1163 .Va WITHOUT_NLS_CATALOGS
1165 .It Va WITHOUT_NLS_CATALOGS
1166 Set to not build NLS catalog support for
1168 .It Va WITHOUT_NS_CACHING
1169 Set to disable name caching in the
1172 The generic caching daemon,
1174 will not be built either if this option is set.
1178 and related programs.
1181 .Dq "OpenFabrics Enterprise Distribution"
1182 Infiniband software stack.
1183 .It Va WITH_OPENLDAP
1184 Enable building openldap support for kerberos.
1185 .It Va WITHOUT_OPENSSH
1186 Set to not build OpenSSH.
1187 .It Va WITHOUT_OPENSSL
1188 Set to not build OpenSSL.
1189 When set, it enforces these options:
1193 .Va WITHOUT_KERBEROS
1195 .Va WITHOUT_KERBEROS_SUPPORT
1200 When set, these options are also in effect:
1203 .It Va WITHOUT_GSSAPI
1209 Set to not build PAM library and modules.
1211 This option is deprecated and does nothing.
1213 When set, it enforces these options:
1217 .Va WITHOUT_PAM_SUPPORT
1219 .It Va WITHOUT_PAM_SUPPORT
1220 Set to build some programs without PAM support, particularly
1224 .It Va WITHOUT_PC_SYSINSTALL
1227 and related programs.
1229 Set to not build PF firewall package.
1230 When set, it enforces these options:
1236 .It Va WITHOUT_PKGBOOTSTRAP
1243 and related programs.
1244 .It Va WITHOUT_PORTSNAP
1245 Set to not build or install
1251 and related programs.
1252 .It Va WITHOUT_PROFILE
1253 Set to not build profiled libraries for use with
1256 This is a default setting on
1257 mips/mips64el, mips/mips64, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf.
1259 Set to build profiled libraries for use with
1262 This is a default setting on
1263 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mipsn32, mips/mipselhf, mips/mipshf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1264 .It Va WITHOUT_QUOTAS
1267 and related programs.
1268 .It Va WITHOUT_RADIUS_SUPPORT
1269 Set to not build radius support into various applications, like
1273 .It Va WITH_RATELIMIT
1274 Set to build the system with rate limit support.
1277 .Dv SO_MAX_PACING_RATE
1285 .It Va WITHOUT_RBOOTD
1286 Set to not build or install
1289 Enable building of the
1296 .It Va WITH_REPRODUCIBLE_BUILD
1297 Set to exclude build metadata (such as the build time, user, or host)
1298 from the kernel, boot loaders, and uname output, so that builds produce
1299 bit-for-bit identical output.
1300 .It Va WITHOUT_RESCUE
1303 .It Va WITHOUT_ROUTED
1307 .It Va WITH_RPCBIND_WARMSTART_SUPPORT
1310 with warmstart support.
1311 .It Va WITHOUT_SENDMAIL
1314 and related programs.
1315 .It Va WITHOUT_SETUID_LOGIN
1316 Set this to disable the installation of
1318 as a set-user-ID root program.
1319 .It Va WITHOUT_SHAREDOCS
1320 Set to not build the
1323 .It Va WITH_SHARED_TOOLCHAIN
1324 Set to build the toolchain binaries shared.
1328 and necessary utilities like assembler, linker and library archive manager.
1329 .It Va WITH_SORT_THREADS
1330 Set to enable threads in
1332 .It Va WITHOUT_SOURCELESS
1333 Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
1334 When set, it enforces these options:
1338 .Va WITHOUT_SOURCELESS_HOST
1340 .Va WITHOUT_SOURCELESS_UCODE
1342 .It Va WITHOUT_SOURCELESS_HOST
1343 Set to not build kernel modules that include sourceless native code for host CPU.
1344 .It Va WITHOUT_SOURCELESS_UCODE
1345 Set to not build kernel modules that include sourceless microcode.
1347 Set to not build world with propolice stack smashing protection.
1349 This is a default setting on
1350 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1352 Set to build world with propolice stack smashing protection.
1354 This is a default setting on
1355 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1357 Enable staging of files to a stage tree.
1358 This can be best thought of as auto-install to
1360 with some extra meta data to ensure dependencies can be tracked.
1362 .Va WITH_DIRDEPS_BUILD .
1363 When set, these options are also in effect:
1366 .It Va WITH_STAGING_MAN
1368 .Va WITHOUT_STAGING_MAN
1370 .It Va WITH_STAGING_PROG
1372 .Va WITHOUT_STAGING_PROG
1376 This must be set in the environment, make command line, or
1377 .Pa /etc/src-env.conf ,
1380 .It Va WITH_STAGING_MAN
1381 Enable staging of man pages to stage tree.
1382 .It Va WITH_STAGING_PROG
1383 Enable staging of PROGs to stage tree.
1384 .It Va WITH_STALE_STAGED
1385 Check staged files are not stale.
1391 .It Va WITHOUT_SVNLITE
1394 and related programs.
1395 .It Va WITHOUT_SYMVER
1396 Set to disable symbol versioning when building shared libraries.
1397 .It Va WITHOUT_SYSCONS
1400 support files such as keyboard maps, fonts, and screen output maps.
1402 Enable use of sysroot during build.
1404 .Va WITH_DIRDEPS_BUILD .
1406 This must be set in the environment, make command line, or
1407 .Pa /etc/src-env.conf ,
1410 .It Va WITHOUT_SYSTEM_COMPILER
1411 Set to not opportunistically skip building a cross-compiler during the
1412 bootstrap phase of the build.
1413 Normally, if the currently installed compiler matches the planned bootstrap
1414 compiler type and revision, then it will not be built.
1415 This does not prevent a compiler from being built for installation though,
1416 only for building one for the build itself.
1421 options control those.
1423 Set to not build or install
1427 .It Va WITHOUT_TCP_WRAPPERS
1428 Set to not build or install
1430 and related utilities.
1432 Set to not build and install
1436 .It Va WITHOUT_TELNET
1439 and related programs.
1440 .It Va WITHOUT_TESTS
1441 Set to not build nor install the
1448 This also disables the build of all test-related dependencies, including ATF.
1450 This is a default setting on
1451 riscv/riscv64 and riscv/riscv64sf.
1452 When set, it enforces these options:
1456 .Va WITHOUT_DTRACE_TESTS
1458 .Va WITHOUT_TESTS_SUPPORT
1460 .It Va WITHOUT_TESTS_SUPPORT
1461 Set to disables the build of all test-related dependencies, including ATF.
1463 This is a default setting on
1464 riscv/riscv64 and riscv/riscv64sf.
1465 .It Va WITHOUT_TEXTPROC
1467 programs used for text processing.
1469 Set to not build or install
1473 .It Va WITHOUT_TIMED
1474 Set to not build or install
1476 .It Va WITHOUT_TOOLCHAIN
1477 Set to not install header or
1478 programs used for program development,
1479 compilers, debuggers etc.
1480 When set, it enforces these options:
1484 .Va WITHOUT_BINUTILS
1488 .Va WITHOUT_CLANG_EXTRAS
1490 .Va WITHOUT_CLANG_FULL
1496 .Va WITHOUT_INCLUDES
1502 .It Va WITHOUT_UNBOUND
1505 and related programs.
1507 Set to not build USB-related programs and libraries.
1508 .It Va WITHOUT_USB_GADGET_EXAMPLES
1509 Set to not build USB gadget kernel modules.
1510 .It Va WITHOUT_UTMPX
1511 Set to not build user accounting tools such as
1520 Set to not build and install vi, view, ex and related programs.
1524 support files (fonts and keymaps).
1525 .It Va WITHOUT_WARNS
1526 Set this to not add warning flags to the compiler invocations.
1527 Useful as a temporary workaround when code enters the tree
1528 which triggers warnings in environments that differ from the
1530 .It Va WITHOUT_WIRELESS
1531 Set to not build programs used for 802.11 wireless networks; especially
1532 .Xr wpa_supplicant 8
1535 When set, it enforces these options:
1539 .Va WITHOUT_WIRELESS_SUPPORT
1541 .It Va WITHOUT_WIRELESS_SUPPORT
1542 Set to build libraries, programs, and kernel modules without
1543 802.11 wireless support.
1544 .It Va WITHOUT_WPA_SUPPLICANT_EAPOL
1546 .Xr wpa_supplicant 8
1547 without support for the IEEE 802.1X protocol and without
1548 support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS
1549 protocols (usable only via 802.1X).
1551 Set to not build ZFS file system.
1552 .It Va WITHOUT_ZONEINFO
1553 Set to not build the timezone database.
1554 When set, it enforces these options:
1558 .Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT
1560 .Va WITHOUT_ZONEINFO_OLD_TIMEZONES_SUPPORT
1562 .It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
1563 Set to build leapsecond information in to the timezone database.
1564 .It Va WITH_ZONEINFO_OLD_TIMEZONES_SUPPORT
1565 Set to build backward compatibility timezone aliases in to the timezone
1569 .Bl -tag -compact -width Pa
1570 .It Pa /etc/src.conf
1571 .It Pa /etc/src-env.conf
1572 .It Pa /usr/share/mk/bsd.own.mk
1585 This manual page was autogenerated by
1586 .An tools/build/options/makeman .