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 ,
79 as they are environment-only variables.
81 The values of variables are ignored regardless of their setting;
82 even if they would be set to
86 The presence of an option causes
90 This list provides a name and short description for variables
91 that can be used for source builds.
92 .Bl -tag -width indent
94 Set to not build process accounting tools such as
102 and related programs.
106 and related programs.
111 and related programs.
112 .It Va WITHOUT_ASSERT_DEBUG
113 Set to compile programs and libraries without the
119 and related utilities.
122 programs and libraries related to ATM networking.
124 Set to not build audit support into system programs.
125 .It Va WITHOUT_AUTHPF
128 .It Va WITHOUT_AUTOFS
131 related programs, libraries, and kernel modules.
132 .It Va WITHOUT_AUTO_OBJ
133 Disable automatic creation of objdirs.
134 This is enabled by default if the wanted OBJDIR is writable by the current user.
136 This must be set in the environment, make command line, or
137 .Pa /etc/src-env.conf ,
141 Set to not build or install
143 associated utilities, and examples.
145 This option only affects amd64/amd64.
146 .It Va WITHOUT_BINUTILS
147 Set to not build or install binutils (as, ld, objcopy, and objdump ) as part
148 of the normal system build.
149 The resulting system cannot build programs from source.
151 This is a default setting on
152 arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
153 When set, it enforces these options:
160 Set to build and install binutils (as, ld, objcopy, and objdump) as part
161 of the normal system build.
163 This is a default setting on
164 amd64/amd64, arm/arm, arm/armeb, 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.
165 .It Va WITHOUT_BINUTILS_BOOTSTRAP
166 Set to not build binutils (as, ld, objcopy and objdump)
167 as part of the bootstrap process.
169 The option does not work for build targets unless some alternative
170 toolchain is provided.
173 This is a default setting on
174 arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
175 .It Va WITH_BINUTILS_BOOTSTRAP
176 Set build binutils (as, ld, objcopy and objdump)
177 as part of the bootstrap process.
179 This is a default setting on
180 amd64/amd64, arm/arm, arm/armeb, 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.
181 .It Va WITHOUT_BLACKLIST
182 Set this if you do not want to build
186 When set, it enforces these options:
190 .Va WITHOUT_BLACKLIST_SUPPORT
192 .It Va WITHOUT_BLACKLIST_SUPPORT
193 Set to build some programs without
202 .It Va WITHOUT_BLUETOOTH
203 Set to not build Bluetooth related kernel modules, programs and libraries.
205 Set to not build the boot blocks and loader.
206 .It Va WITHOUT_BOOTPARAMD
207 Set to not build or install
209 .It Va WITHOUT_BOOTPD
210 Set to not build or install
212 .It Va WITHOUT_BSDINSTALL
216 and related programs.
217 .It Va WITHOUT_BSD_CPIO
218 Set to not build the BSD licensed version of cpio based on
221 Install BSD-licensed grep as '[ef]grep' instead of GNU grep.
223 Set to not build or install
225 and related libraries and data files.
227 Set to not build contributed bzip2 software as a part of the base system.
229 The option has no effect yet.
231 When set, it enforces these options:
235 .Va WITHOUT_BZIP2_SUPPORT
237 .It Va WITHOUT_BZIP2_SUPPORT
238 Set to build some programs without optional bzip2 support.
239 .It Va WITHOUT_CALENDAR
242 .It Va WITHOUT_CAPSICUM
243 Set to not build Capsicum support into system programs.
244 When set, it enforces these options:
250 .It Va WITHOUT_CASPER
251 Set to not build Casper program and related libraries.
252 .It Va WITH_CCACHE_BUILD
256 No configuration is required except to install the
262 .Sy CCACHE_PREFIX=/usr/local/bin/distcc .
263 The default cache directory of
265 will be used, which can be overridden by setting
268 .Sy CCACHE_COMPILERCHECK
271 when using the in-tree bootstrap compiler,
274 when using an external compiler.
277 option is used for Clang but not GCC.
279 Sharing a cache between multiple work directories requires using a layout
283 and an environment such as:
284 .Bd -literal -offset indent
285 CCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj'
290 for more configuration options.
294 and related utilities.
296 Set to not build code licensed under Sun's CDDL.
297 When set, it enforces these options:
306 Set to not build the Clang C/C++ compiler during the regular phase of the build.
308 This is a default setting on
309 riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
310 When set, it enforces these options:
314 .Va WITHOUT_CLANG_EXTRAS
316 .Va WITHOUT_CLANG_FULL
321 Set to build the Clang C/C++ compiler during the normal phase of the build.
323 This is a default setting on
324 amd64/amd64, arm/arm, arm/armeb, 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 and powerpc/powerpcspe.
325 .It Va WITHOUT_CLANG_BOOTSTRAP
326 Set to not build the Clang C/C++ compiler during the bootstrap phase of
328 To be able to build the system, either gcc or clang bootstrap must be
329 enabled unless an alternate compiler is provided via XCC.
331 This is a default setting on
332 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.
333 .It Va WITH_CLANG_BOOTSTRAP
334 Set to build the Clang C/C++ compiler during the bootstrap phase of the build.
336 This is a default setting on
337 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
338 .It Va WITH_CLANG_EXTRAS
339 Set to build additional clang and llvm tools, such as bugpoint.
340 .It Va WITHOUT_CLANG_FULL
341 Set to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
342 the Clang C/C++ compiler.
344 This is a default setting on
345 riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
346 .It Va WITH_CLANG_FULL
347 Set to build the ARCMigrate, Rewriter and StaticAnalyzer components of the
348 Clang C/C++ compiler.
350 This is a default setting on
351 amd64/amd64, arm/arm, arm/armeb, 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 and powerpc/powerpcspe.
352 .It Va WITHOUT_CLANG_IS_CC
353 Set to install the GCC compiler as
359 This is a default setting on
360 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.
361 .It Va WITH_CLANG_IS_CC
362 Set to install the Clang C/C++ compiler as
368 This is a default setting on
369 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
373 .It Va WITHOUT_CROSS_COMPILER
374 Set to not build any cross compiler in the cross-tools stage of buildworld.
375 When compiling a different version of
377 than what is installed on the system, provide an alternate
378 compiler with XCC to ensure success.
379 When compiling with an identical version of
381 to the host, this option may be safely used.
382 This option may also be safe when the host version of
384 is close to the sources being built, but all bets are off if there have
385 been any changes to the toolchain between the versions.
386 When set, it enforces these options:
390 .Va WITHOUT_BINUTILS_BOOTSTRAP
392 .Va WITHOUT_CLANG_BOOTSTRAP
394 .Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
396 .Va WITHOUT_GCC_BOOTSTRAP
399 Set to not build any crypto code.
400 When set, it enforces these options:
406 .Va WITHOUT_KERBEROS_SUPPORT
413 When set, these options are also in effect:
416 .It Va WITHOUT_GSSAPI
422 Set to compile with CTF (Compact C Type Format) data.
423 CTF data encapsulates a reduced form of debugging information
424 similar to DWARF and the venerable stabs and is required for DTrace.
428 and related utilities.
430 Set to not build CUSE-related programs and libraries.
431 .It Va WITHOUT_CXGBETOOL
435 This is a default setting on
436 arm/arm, arm/armeb, 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.
437 .It Va WITH_CXGBETOOL
441 This is a default setting on
442 amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and sparc64/sparc64.
446 and related libraries.
447 It will also prevent building of
452 This is a default setting on
453 riscv/riscv64 and riscv/riscv64sf.
454 When set, it enforces these options:
460 .Va WITHOUT_CLANG_EXTRAS
462 .Va WITHOUT_CLANG_FULL
464 .Va WITHOUT_DTRACE_TESTS
472 .Va WITHOUT_TESTS_SUPPORT
477 and related libraries.
479 This is a default setting on
480 amd64/amd64, arm/arm, arm/armeb, 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 and sparc64/sparc64.
481 .It Va WITHOUT_DEBUG_FILES
482 Set to avoid building or installing standalone debug files for each
483 executable binary and shared library.
484 .It Va WITHOUT_DIALOG
491 When set, it enforces these options:
495 .Va WITHOUT_BSDINSTALL
498 Set to not build the Webster dictionary files.
499 .It Va WITH_DIRDEPS_BUILD
500 This is an experimental build system.
502 http://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
503 Build commands can be seen from the top-level with:
504 .Dl make show-valid-targets
505 The build is driven by dirdeps.mk using
508 Makefile.depend files found in each directory.
510 The build can be started from anywhere, and behaves the same.
511 The initial instance of
516 .Pa Makefile.depend ,
517 computing a graph of tree dependencies from the current origin.
520 skips checking dirdep dependencies and will only build in the current
521 and child directories.
523 skips building any dirdeps and only build the current directory.
525 This also utilizes the
527 logic for incremental builds.
529 The build hides commands executed unless
533 Note that there is currently no mass install feature for this.
535 When set, it enforces these options:
539 .Va WITH_INSTALL_AS_USER
542 When set, these options are also in effect:
545 .It Va WITH_META_MODE
547 .Va WITHOUT_META_MODE
553 .It Va WITH_STAGING_MAN
555 .Va WITHOUT_STAGING_MAN
557 .It Va WITH_STAGING_PROG
559 .Va WITHOUT_STAGING_PROG
567 This must be set in the environment, make command line, or
568 .Pa /etc/src-env.conf ,
571 .It Va WITH_DIRDEPS_CACHE
572 Cache result of dirdeps.mk which can save significant time
573 for subsequent builds.
575 .Va WITH_DIRDEPS_BUILD .
577 This must be set in the environment, make command line, or
578 .Pa /etc/src-env.conf ,
581 .It Va WITHOUT_DMAGENT
582 Set to not build dma Mail Transport Agent.
583 .It Va WITHOUT_DOCCOMPRESS
584 Set to not install compressed system documentation.
585 Only the uncompressed version will be installed.
586 .It Va WITH_DTRACE_TESTS
587 Set to build and install the DTrace test suite in
588 .Pa /usr/tests/cddl/usr.sbin/dtrace .
589 This test suite is considered experimental on architectures other than
590 amd64/amd64 and running it may cause system instability.
591 .It Va WITHOUT_DYNAMICROOT
592 Set this if you do not want to link
597 .It Va WITHOUT_ED_CRYPTO
600 without support for encryption/decryption.
602 Set to not build and install
605 and related programs.
612 This is a default setting on
613 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.
620 This is a default setting on
621 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
622 .It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
623 Set to not build ELF Tool Chain tools
624 (addr2line, nm, size, strings and strip)
625 as part of the bootstrap process.
627 An alternate bootstrap tool chain must be provided.
629 .It Va WITHOUT_EXAMPLES
630 Set to avoid installing examples to
631 .Pa /usr/share/examples/ .
632 .It Va WITH_EXTRA_TCP_STACKS
633 Set to build extra TCP stack modules.
635 Set to not build Flattened Device Tree support as part of the base system.
636 This includes the device tree compiler (dtc) and libfdt support library.
640 and related programs.
641 .It Va WITHOUT_FINGER
642 Set to not build or install
646 .It Va WITHOUT_FLOPPY
647 Set to not build or install programs
648 for operating floppy disk driver.
649 .It Va WITHOUT_FMTREE
650 Set to not build and install
651 .Pa /usr/sbin/fmtree .
652 .It Va WITHOUT_FORMAT_EXTENSIONS
654 .Fl fformat-extensions
655 when compiling the kernel.
656 Also disables all format checking.
658 Set to build bootloaders without Forth support.
659 .It Va WITHOUT_FP_LIBC
662 without floating-point support.
663 .It Va WITHOUT_FREEBSD_UPDATE
665 .Xr freebsd-update 8 .
667 Set to not build or install
672 Set to not build games.
674 Set to not build and install gcc and g++ as part of the normal build process.
676 This is a default setting on
677 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
679 Set to build and install gcc and g++.
681 This is a default setting on
682 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.
683 .It Va WITHOUT_GCC_BOOTSTRAP
684 Set to not build gcc and g++ as part of the bootstrap process.
685 You must enable either gcc or clang bootstrap to be able to build the system,
686 unless an alternative compiler is provided via
689 This is a default setting on
690 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
691 .It Va WITH_GCC_BOOTSTRAP
692 Set to build gcc and g++ as part of the bootstrap process.
694 This is a default setting on
695 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.
704 This is a default setting on
705 arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
710 This is a default setting on
711 amd64/amd64, arm/arm, arm/armeb, 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.
712 .It Va WITHOUT_GDB_LIBEXEC
718 This is a default setting on
719 arm/arm, arm/armeb, arm/armv6, arm/armv7 and sparc64/sparc64.
720 .It Va WITH_GDB_LIBEXEC
727 to be used as a fallback for
729 if a newer version is not installed.
731 This is a default setting on
732 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.
733 .It Va WITHOUT_GNUCXX
734 Do not build the GNU C++ stack (g++, libstdc++).
735 This is the default on platforms where clang is the system compiler.
737 This is a default setting on
738 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
740 Build the GNU C++ stack (g++, libstdc++).
741 This is the default on platforms where gcc is the system compiler.
743 This is a default setting on
744 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.
745 .It Va WITHOUT_GNU_DIFF
750 .It Va WITHOUT_GNU_GREP
753 .It Va WITH_GNU_GREP_COMPAT
754 Set this option to include GNU extensions in
756 by linking against libgnuregex.
760 as part of the base system.
761 .It Va WITHOUT_GPL_DTC
762 Set to build the BSD licensed version of the device tree compiler rather
763 than the GPLed one from elinux.org.
765 This is a default setting on
766 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
768 Set to build the GPL'd version of the device tree compiler from elinux.org,
769 instead of the BSD licensed one.
771 This is a default setting on
772 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.
773 .It Va WITHOUT_GSSAPI
774 Set to not build libgssapi.
778 and related utilities.
780 Set to build Hesiod support.
782 Set to not build HTML docs.
783 .It Va WITHOUT_HYPERV
784 Set to not build or install HyperV utilities.
786 Set to not build iconv as part of libc.
787 .It Va WITHOUT_INCLUDES
788 Set to not install header files.
789 This option used to be spelled
792 The option does not work for build targets.
795 Set to not build programs and libraries related to IPv4 networking.
796 When set, it enforces these options:
800 .Va WITHOUT_INET_SUPPORT
804 programs and libraries related to IPv6 networking.
805 When set, it enforces these options:
809 .Va WITHOUT_INET6_SUPPORT
811 .It Va WITHOUT_INET6_SUPPORT
812 Set to build libraries, programs, and kernel modules without IPv6 support.
816 .It Va WITHOUT_INET_SUPPORT
817 Set to build libraries, programs, and kernel modules without IPv4 support.
818 .It Va WITHOUT_INSTALLLIB
819 Set this to not install optional libraries.
820 For example, when creating a
824 The option does not work for build targets.
826 .It Va WITH_INSTALL_AS_USER
827 Set to make install targets succeed for non-root users by installing
828 files with owner and group attributes set to that of the user running
832 The user still must set the
834 variable to point to a directory where the user has write permissions.
835 .It Va WITHOUT_IPFILTER
836 Set to not build IP Filter package.
838 Set to not build IPFW tools.
839 .It Va WITHOUT_IPSEC_SUPPORT
840 Set to not build the kernel with
843 This option is needed for
850 and related utilities.
852 Set to not build tools for the support of jails; e.g.,
859 .It Va WITHOUT_KERBEROS
860 Set this to not build Kerberos 5 (KTH Heimdal).
861 When set, it enforces these options:
865 .Va WITHOUT_KERBEROS_SUPPORT
868 When set, these options are also in effect:
871 .It Va WITHOUT_GSSAPI
876 .It Va WITHOUT_KERBEROS_SUPPORT
877 Set to build some programs without Kerberos support, like
883 .It Va WITHOUT_KERNEL_SYMBOLS
884 Set to not install kernel symbol files.
886 This option is recommended for those people who have small root partitions.
891 library as a part of the base system.
893 The option has no effect yet.
895 When set, it enforces these options:
899 .Va WITHOUT_KVM_SUPPORT
901 .It Va WITHOUT_KVM_SUPPORT
902 Set to build some programs without optional
906 Setting this variable will prevent the LDNS library from being built.
907 When set, it enforces these options:
911 .Va WITHOUT_LDNS_UTILS
915 .It Va WITHOUT_LDNS_UTILS
916 Setting this variable will prevent building the LDNS utilities
920 .It Va WITHOUT_LEGACY_CONSOLE
921 Set to not build programs that support a legacy PC console; e.g.,
926 On 64-bit platforms, set to not build 32-bit library set and a
929 .It Va WITHOUT_LIBCPLUSPLUS
930 Set to avoid building libcxxrt and libc++.
931 .It Va WITHOUT_LIBPTHREAD
936 When set, it enforces these options:
943 On armv6 only, set to enable soft float ABI compatibility libraries.
944 This option is for transitioning to the new hard float ABI.
945 .It Va WITHOUT_LIBTHR
951 Set to not build LLVM's lld linker.
953 This is a default setting on
954 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.
956 Set to build LLVM's lld linker.
958 This is a default setting on
959 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
961 Set to not build the LLDB debugger.
963 This is a default setting on
964 arm/arm, arm/armeb, 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.
966 Set to build the LLDB debugger.
968 This is a default setting on
969 amd64/amd64, arm64/aarch64 and i386/i386.
970 .It Va WITHOUT_LLD_BOOTSTRAP
971 Set to not build the LLD linker during the bootstrap phase of
973 To be able to build the system, either Binutils or LLD bootstrap must be
974 enabled unless an alternate linker is provided via XLD.
976 This is a default setting on
977 arm/arm, arm/armeb, 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, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
978 .It Va WITH_LLD_BOOTSTRAP
979 Set to build the LLD linker during the bootstrap phase of the build.
981 This is a default setting on
982 amd64/amd64 and arm64/aarch64.
983 .It Va WITHOUT_LLD_IS_LD
984 Set to use GNU binutils ld as the system linker, instead of LLVM's LLD.
986 This is a default setting on
987 amd64/amd64, arm/arm, arm/armeb, 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, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
988 .It Va WITH_LLD_IS_LD
989 Set to use LLVM's LLD as the system linker, instead of GNU binutils ld.
991 This is a default setting on
993 .It Va WITHOUT_LLVM_COV
998 This is a default setting on
999 riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1000 .It Va WITH_LLVM_COV
1005 This is a default setting on
1006 amd64/amd64, arm/arm, arm/armeb, 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 and powerpc/powerpcspe.
1007 .It Va WITHOUT_LLVM_LIBUNWIND
1008 Set to use GCC's stack unwinder (instead of LLVM's libunwind).
1010 This is a default setting on
1011 arm/arm, arm/armeb, 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 and sparc64/sparc64.
1012 .It Va WITH_LLVM_LIBUNWIND
1013 Set to use LLVM's libunwind stack unwinder (instead of GCC's unwinder).
1015 This is a default setting on
1016 amd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
1017 .It Va WITH_LOADER_FIREWIRE
1018 Enable firewire support in /boot/loader and /boot/zfsloader on x86.
1019 This option is a nop on all other platforms.
1020 .It Va WITHOUT_LOADER_GELI
1021 Disable inclusion of GELI crypto support in the boot chain binaries.
1022 .It Va WITHOUT_LOCALES
1023 Set to not build localization files; see
1025 .It Va WITHOUT_LOCATE
1028 and related programs.
1032 and related programs.
1033 .It Va WITHOUT_LS_COLORS
1036 without support for colors to distinguish file types.
1037 .It Va WITHOUT_LZMA_SUPPORT
1038 Set to build some programs without optional lzma compression support.
1040 Set to not build any mail support (MUA or MTA).
1041 When set, it enforces these options:
1047 .Va WITHOUT_MAILWRAPPER
1049 .Va WITHOUT_SENDMAIL
1051 .It Va WITHOUT_MAILWRAPPER
1052 Set to not build the
1058 and related support files.
1059 .It Va WITHOUT_MAKE_CHECK_USE_SANDBOX
1062 in limited sandbox mode.
1063 This option should be paired with
1064 .Va WITH_INSTALL_AS_USER
1065 if executed as an unprivileged user.
1070 Set to not build manual pages.
1071 When set, these options are also in effect:
1074 .It Va WITHOUT_MAN_UTILS
1079 .It Va WITHOUT_MANCOMPRESS
1080 Set to not to install compressed man pages.
1081 Only the uncompressed versions will be installed.
1082 .It Va WITHOUT_MAN_UTILS
1083 Set to not build utilities for manual pages,
1089 and related support files.
1090 .It Va WITH_META_MODE
1093 meta files when building, which can provide a reliable incremental build when
1096 The meta file is created in OBJDIR as
1098 These meta files track the command that was executed, its output, and the
1102 module is required unless
1105 When the module is loaded, any files used by the commands executed are
1106 tracked as dependencies for the target in its meta file.
1107 The target is considered out-of-date and rebuilt if any of these
1108 conditions are true compared to the last build:
1109 .Bl -bullet -compact
1111 The command to execute changes.
1113 The current working directory changes.
1115 The target's meta file is missing.
1117 The target's meta file is missing filemon data when filemon is loaded
1118 and a previous run did not have it loaded.
1122 Files read, executed or linked to are newer than the target.
1126 Files read, written, executed or linked are missing.
1128 The meta files can also be useful for debugging.
1130 The build hides commands that are executed unless
1135 to show some of its environment for further debugging.
1137 The build operates as it normally would otherwise.
1138 This option originally invoked a different build system but that was renamed
1140 .Va WITH_DIRDEPS_BUILD .
1142 This must be set in the environment, make command line, or
1143 .Pa /etc/src-env.conf ,
1147 Set to build the NAND Flash components.
1149 Set to not build programs and libraries
1150 related to NDIS emulation support.
1151 .It Va WITHOUT_NETCAT
1155 .It Va WITHOUT_NETGRAPH
1156 Set to not build applications to support
1158 When set, it enforces these options:
1164 .Va WITHOUT_BLUETOOTH
1166 .Va WITHOUT_NETGRAPH_SUPPORT
1168 .It Va WITHOUT_NETGRAPH_SUPPORT
1169 Set to build libraries, programs, and kernel modules without netgraph support.
1173 support and related programs.
1174 If set, you might need to adopt your
1180 Set to not build NLS catalogs.
1181 When set, it enforces these options:
1185 .Va WITHOUT_NLS_CATALOGS
1187 .It Va WITHOUT_NLS_CATALOGS
1188 Set to not build NLS catalog support for
1190 .It Va WITHOUT_NS_CACHING
1191 Set to disable name caching in the
1194 The generic caching daemon,
1196 will not be built either if this option is set.
1200 and related programs.
1203 .Dq "OpenFabrics Enterprise Distribution"
1204 Infiniband software stack.
1205 .It Va WITH_OPENLDAP
1206 Enable building openldap support for kerberos.
1207 .It Va WITHOUT_OPENSSH
1208 Set to not build OpenSSH.
1209 .It Va WITHOUT_OPENSSL
1210 Set to not build OpenSSL.
1211 When set, it enforces these options:
1215 .Va WITHOUT_KERBEROS
1217 .Va WITHOUT_KERBEROS_SUPPORT
1222 When set, these options are also in effect:
1225 .It Va WITHOUT_GSSAPI
1231 Set to not build PAM library and modules.
1233 This option is deprecated and does nothing.
1235 When set, it enforces these options:
1239 .Va WITHOUT_PAM_SUPPORT
1241 .It Va WITHOUT_PAM_SUPPORT
1242 Set to build some programs without PAM support, particularly
1246 .It Va WITHOUT_PC_SYSINSTALL
1249 and related programs.
1251 Set to not build PF firewall package.
1252 When set, it enforces these options:
1258 .It Va WITHOUT_PKGBOOTSTRAP
1265 and related programs.
1266 .It Va WITHOUT_PORTSNAP
1267 Set to not build or install
1273 and related programs.
1274 .It Va WITHOUT_PROFILE
1275 Set to not build profiled libraries for use with
1278 This is a default setting on
1279 mips/mips64el, mips/mips64, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf.
1281 Set to build profiled libraries for use with
1284 This is a default setting on
1285 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mipsn32, mips/mipselhf, mips/mipshf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1286 .It Va WITHOUT_QUOTAS
1289 and related programs.
1290 .It Va WITHOUT_RADIUS_SUPPORT
1291 Set to not build radius support into various applications, like
1295 .It Va WITH_RATELIMIT
1296 Set to build the system with rate limit support.
1299 .Dv SO_MAX_PACING_RATE
1307 .It Va WITHOUT_RBOOTD
1308 Set to not build or install
1310 .It Va WITH_REPRODUCIBLE_BUILD
1311 Set to exclude build metadata (such as the build time, user, or host)
1312 from the kernel, boot loaders, and uname output, so that builds produce
1313 bit-for-bit identical output.
1314 .It Va WITHOUT_RESCUE
1317 .It Va WITHOUT_ROUTED
1321 .It Va WITH_RPCBIND_WARMSTART_SUPPORT
1324 with warmstart support.
1325 .It Va WITHOUT_SENDMAIL
1328 and related programs.
1329 .It Va WITHOUT_SETUID_LOGIN
1330 Set this to disable the installation of
1332 as a set-user-ID root program.
1333 .It Va WITHOUT_SHAREDOCS
1334 Set to not build the
1337 .It Va WITH_SHARED_TOOLCHAIN
1338 Set to build the toolchain binaries shared.
1342 and necessary utilities like assembler, linker and library archive manager.
1343 .It Va WITH_SORT_THREADS
1344 Set to enable threads in
1346 .It Va WITHOUT_SOURCELESS
1347 Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
1348 When set, it enforces these options:
1352 .Va WITHOUT_SOURCELESS_HOST
1354 .Va WITHOUT_SOURCELESS_UCODE
1356 .It Va WITHOUT_SOURCELESS_HOST
1357 Set to not build kernel modules that include sourceless native code for host CPU.
1358 .It Va WITHOUT_SOURCELESS_UCODE
1359 Set to not build kernel modules that include sourceless microcode.
1361 Set to not build world with propolice stack smashing protection.
1363 This is a default setting on
1364 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1366 Set to build world with propolice stack smashing protection.
1368 This is a default setting on
1369 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1371 Enable staging of files to a stage tree.
1372 This can be best thought of as auto-install to
1374 with some extra meta data to ensure dependencies can be tracked.
1376 .Va WITH_DIRDEPS_BUILD .
1377 When set, these options are also in effect:
1380 .It Va WITH_STAGING_MAN
1382 .Va WITHOUT_STAGING_MAN
1384 .It Va WITH_STAGING_PROG
1386 .Va WITHOUT_STAGING_PROG
1390 This must be set in the environment, make command line, or
1391 .Pa /etc/src-env.conf ,
1394 .It Va WITH_STAGING_MAN
1395 Enable staging of man pages to stage tree.
1396 .It Va WITH_STAGING_PROG
1397 Enable staging of PROGs to stage tree.
1398 .It Va WITH_STALE_STAGED
1399 Check staged files are not stale.
1405 .It Va WITHOUT_SVNLITE
1408 and related programs.
1409 .It Va WITHOUT_SYMVER
1410 Set to disable symbol versioning when building shared libraries.
1411 .It Va WITHOUT_SYSCONS
1414 support files such as keyboard maps, fonts, and screen output maps.
1416 Enable use of sysroot during build.
1418 .Va WITH_DIRDEPS_BUILD .
1420 This must be set in the environment, make command line, or
1421 .Pa /etc/src-env.conf ,
1424 .It Va WITHOUT_SYSTEM_COMPILER
1425 Set to not opportunistically skip building a cross-compiler during the
1426 bootstrap phase of the build.
1427 Normally, if the currently installed compiler matches the planned bootstrap
1428 compiler type and revision, then it will not be built.
1429 This does not prevent a compiler from being built for installation though,
1430 only for building one for the build itself.
1435 options control those.
1437 Set to not build or install
1441 .It Va WITHOUT_TCP_WRAPPERS
1442 Set to not build or install
1444 and related utilities.
1446 Set to not build and install
1450 .It Va WITHOUT_TELNET
1453 and related programs.
1454 .It Va WITHOUT_TESTS
1455 Set to not build nor install the
1462 This also disables the build of all test-related dependencies, including ATF.
1464 This is a default setting on
1465 riscv/riscv64 and riscv/riscv64sf.
1466 When set, it enforces these options:
1470 .Va WITHOUT_DTRACE_TESTS
1472 .Va WITHOUT_TESTS_SUPPORT
1474 .It Va WITHOUT_TESTS_SUPPORT
1475 Set to disables the build of all test-related dependencies, including ATF.
1477 This is a default setting on
1478 riscv/riscv64 and riscv/riscv64sf.
1479 .It Va WITHOUT_TEXTPROC
1481 programs used for text processing.
1483 Set to not build or install
1487 .It Va WITHOUT_TIMED
1488 Set to not build or install
1490 .It Va WITHOUT_TOOLCHAIN
1491 Set to not install header or
1492 programs used for program development,
1493 compilers, debuggers etc.
1494 When set, it enforces these options:
1498 .Va WITHOUT_BINUTILS
1502 .Va WITHOUT_CLANG_EXTRAS
1504 .Va WITHOUT_CLANG_FULL
1510 .Va WITHOUT_INCLUDES
1516 .Va WITHOUT_LLVM_COV
1518 .It Va WITHOUT_UNBOUND
1521 and related programs.
1522 .It Va WITHOUT_UNIFIED_OBJDIR
1523 Set to use the historical object directory format for
1526 For native-builds and builds done directly in sub-directories the format of
1527 .Pa ${MAKEOBJDIRPREFIX}/${.CURDIR}
1529 while for cross-builds
1530 .Pa ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR}
1533 This option is transitional and will be removed before the 12.0 release,
1535 .va WITH_UNIFIED_OBJDIR
1536 will be enabled permanently.
1538 This must be set in the environment, make command line, or
1539 .Pa /etc/src-env.conf ,
1543 Set to not build USB-related programs and libraries.
1544 .It Va WITHOUT_USB_GADGET_EXAMPLES
1545 Set to not build USB gadget kernel modules.
1546 .It Va WITHOUT_UTMPX
1547 Set to not build user accounting tools such as
1556 Set to not build and install vi, view, ex and related programs.
1560 support files (fonts and keymaps).
1561 .It Va WITHOUT_WARNS
1562 Set this to not add warning flags to the compiler invocations.
1563 Useful as a temporary workaround when code enters the tree
1564 which triggers warnings in environments that differ from the
1566 .It Va WITHOUT_WIRELESS
1567 Set to not build programs used for 802.11 wireless networks; especially
1568 .Xr wpa_supplicant 8
1571 When set, it enforces these options:
1575 .Va WITHOUT_WIRELESS_SUPPORT
1577 .It Va WITHOUT_WIRELESS_SUPPORT
1578 Set to build libraries, programs, and kernel modules without
1579 802.11 wireless support.
1580 .It Va WITHOUT_WPA_SUPPLICANT_EAPOL
1582 .Xr wpa_supplicant 8
1583 without support for the IEEE 802.1X protocol and without
1584 support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS
1585 protocols (usable only via 802.1X).
1587 Set to not build ZFS file system.
1588 .It Va WITHOUT_ZONEINFO
1589 Set to not build the timezone database.
1590 When set, it enforces these options:
1594 .Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT
1596 .Va WITHOUT_ZONEINFO_OLD_TIMEZONES_SUPPORT
1598 .It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
1599 Set to build leapsecond information in to the timezone database.
1600 .It Va WITH_ZONEINFO_OLD_TIMEZONES_SUPPORT
1601 Set to build backward compatibility timezone aliases in to the timezone
1605 .Bl -tag -compact -width Pa
1606 .It Pa /etc/src.conf
1607 .It Pa /etc/src-env.conf
1608 .It Pa /usr/share/mk/bsd.own.mk
1621 This manual page was autogenerated by
1622 .An tools/build/options/makeman .