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
319 Set to build the Clang C/C++ compiler during the normal phase of the build.
321 This is a default setting on
322 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.
323 .It Va WITHOUT_CLANG_BOOTSTRAP
324 Set to not build the Clang C/C++ compiler during the bootstrap phase of
326 To be able to build the system, either gcc or clang bootstrap must be
327 enabled unless an alternate compiler is provided via XCC.
329 This is a default setting on
330 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.
331 .It Va WITH_CLANG_BOOTSTRAP
332 Set to build the Clang C/C++ compiler during the bootstrap phase of the build.
334 This is a default setting on
335 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
336 .It Va WITH_CLANG_EXTRAS
337 Set to build additional clang and llvm tools, such as bugpoint.
338 .It Va WITHOUT_CLANG_FULL
339 Set to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
340 the Clang C/C++ compiler.
342 This is a default setting on
343 riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
344 .It Va WITH_CLANG_FULL
345 Set to build the ARCMigrate, Rewriter and StaticAnalyzer components of the
346 Clang C/C++ compiler.
348 This is a default setting on
349 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.
350 .It Va WITHOUT_CLANG_IS_CC
351 Set to install the GCC compiler as
357 This is a default setting on
358 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.
359 .It Va WITH_CLANG_IS_CC
360 Set to install the Clang C/C++ compiler as
366 This is a default setting on
367 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
371 .It Va WITHOUT_CROSS_COMPILER
372 Set to not build any cross compiler in the cross-tools stage of buildworld.
373 When compiling a different version of
375 than what is installed on the system, provide an alternate
376 compiler with XCC to ensure success.
377 When compiling with an identical version of
379 to the host, this option may be safely used.
380 This option may also be safe when the host version of
382 is close to the sources being built, but all bets are off if there have
383 been any changes to the toolchain between the versions.
384 When set, it enforces these options:
388 .Va WITHOUT_BINUTILS_BOOTSTRAP
390 .Va WITHOUT_CLANG_BOOTSTRAP
392 .Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
394 .Va WITHOUT_GCC_BOOTSTRAP
397 Set to not build any crypto code.
398 When set, it enforces these options:
404 .Va WITHOUT_KERBEROS_SUPPORT
411 When set, these options are also in effect:
414 .It Va WITHOUT_GSSAPI
420 Set to compile with CTF (Compact C Type Format) data.
421 CTF data encapsulates a reduced form of debugging information
422 similar to DWARF and the venerable stabs and is required for DTrace.
426 and related utilities.
428 Set to not build CUSE-related programs and libraries.
429 .It Va WITHOUT_CXGBETOOL
433 This is a default setting on
434 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.
435 .It Va WITH_CXGBETOOL
439 This is a default setting on
440 amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and sparc64/sparc64.
444 and related libraries.
445 It will also prevent building of
450 This is a default setting on
451 riscv/riscv64 and riscv/riscv64sf.
452 When set, it enforces these options:
458 .Va WITHOUT_CLANG_EXTRAS
460 .Va WITHOUT_CLANG_FULL
462 .Va WITHOUT_DTRACE_TESTS
468 .Va WITHOUT_TESTS_SUPPORT
473 and related libraries.
475 This is a default setting on
476 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.
477 .It Va WITHOUT_DEBUG_FILES
478 Set to avoid building or installing standalone debug files for each
479 executable binary and shared library.
480 .It Va WITHOUT_DIALOG
487 When set, it enforces these options:
491 .Va WITHOUT_BSDINSTALL
494 Set to not build the Webster dictionary files.
495 .It Va WITH_DIRDEPS_BUILD
496 This is an experimental build system.
498 http://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
499 Build commands can be seen from the top-level with:
500 .Dl make show-valid-targets
501 The build is driven by dirdeps.mk using
504 Makefile.depend files found in each directory.
506 The build can be started from anywhere, and behaves the same.
507 The initial instance of
512 .Pa Makefile.depend ,
513 computing a graph of tree dependencies from the current origin.
516 skips checking dirdep dependencies and will only build in the current
517 and child directories.
519 skips building any dirdeps and only build the current directory.
521 This also utilizes the
523 logic for incremental builds.
525 The build hides commands executed unless
529 Note that there is currently no mass install feature for this.
531 When set, it enforces these options:
535 .Va WITH_INSTALL_AS_USER
538 When set, these options are also in effect:
541 .It Va WITH_META_MODE
543 .Va WITHOUT_META_MODE
549 .It Va WITH_STAGING_MAN
551 .Va WITHOUT_STAGING_MAN
553 .It Va WITH_STAGING_PROG
555 .Va WITHOUT_STAGING_PROG
563 This must be set in the environment, make command line, or
564 .Pa /etc/src-env.conf ,
567 .It Va WITH_DIRDEPS_CACHE
568 Cache result of dirdeps.mk which can save significant time
569 for subsequent builds.
571 .Va WITH_DIRDEPS_BUILD .
573 This must be set in the environment, make command line, or
574 .Pa /etc/src-env.conf ,
577 .It Va WITHOUT_DMAGENT
578 Set to not build dma Mail Transport Agent.
579 .It Va WITHOUT_DOCCOMPRESS
580 Set to not install compressed system documentation.
581 Only the uncompressed version will be installed.
582 .It Va WITH_DTRACE_TESTS
583 Set to build and install the DTrace test suite in
584 .Pa /usr/tests/cddl/usr.sbin/dtrace .
585 This test suite is considered experimental on architectures other than
586 amd64/amd64 and running it may cause system instability.
587 .It Va WITHOUT_DYNAMICROOT
588 Set this if you do not want to link
593 .It Va WITHOUT_ED_CRYPTO
596 without support for encryption/decryption.
598 Set to not build and install
601 and related programs.
608 This is a default setting on
609 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.
616 This is a default setting on
617 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
618 .It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
619 Set to not build ELF Tool Chain tools
620 (addr2line, nm, size, strings and strip)
621 as part of the bootstrap process.
623 An alternate bootstrap tool chain must be provided.
625 .It Va WITHOUT_EXAMPLES
626 Set to avoid installing examples to
627 .Pa /usr/share/examples/ .
628 .It Va WITH_EXTRA_TCP_STACKS
629 Set to build extra TCP stack modules.
631 Set to not build Flattened Device Tree support as part of the base system.
632 This includes the device tree compiler (dtc) and libfdt support library.
636 and related programs.
637 .It Va WITHOUT_FINGER
638 Set to not build or install
642 .It Va WITHOUT_FLOPPY
643 Set to not build or install programs
644 for operating floppy disk driver.
645 .It Va WITHOUT_FMTREE
646 Set to not build and install
647 .Pa /usr/sbin/fmtree .
648 .It Va WITHOUT_FORMAT_EXTENSIONS
650 .Fl fformat-extensions
651 when compiling the kernel.
652 Also disables all format checking.
654 Set to build bootloaders without Forth support.
655 .It Va WITHOUT_FP_LIBC
658 without floating-point support.
659 .It Va WITHOUT_FREEBSD_UPDATE
661 .Xr freebsd-update 8 .
663 Set to not build or install
668 Set to not build games.
670 Set to not build and install gcc and g++ as part of the normal build process.
672 This is a default setting on
673 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
675 Set to build and install gcc and g++.
677 This is a default setting on
678 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.
679 .It Va WITHOUT_GCC_BOOTSTRAP
680 Set to not build gcc and g++ as part of the bootstrap process.
681 You must enable either gcc or clang bootstrap to be able to build the system,
682 unless an alternative compiler is provided via
685 This is a default setting on
686 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
687 .It Va WITH_GCC_BOOTSTRAP
688 Set to build gcc and g++ as part of the bootstrap process.
690 This is a default setting on
691 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.
700 This is a default setting on
701 arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
706 This is a default setting on
707 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.
708 .It Va WITHOUT_GDB_LIBEXEC
714 This is a default setting on
715 arm/arm, arm/armeb, arm/armv6, arm/armv7 and sparc64/sparc64.
716 .It Va WITH_GDB_LIBEXEC
723 to be used as a fallback for
725 if a newer version is not installed.
727 This is a default setting on
728 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.
729 .It Va WITHOUT_GNUCXX
730 Do not build the GNU C++ stack (g++, libstdc++).
731 This is the default on platforms where clang is the system compiler.
733 This is a default setting on
734 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
736 Build the GNU C++ stack (g++, libstdc++).
737 This is the default on platforms where gcc is the system compiler.
739 This is a default setting on
740 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.
741 .It Va WITHOUT_GNU_DIFF
746 .It Va WITHOUT_GNU_GREP
749 .It Va WITH_GNU_GREP_COMPAT
750 Set this option to include GNU extensions in
752 by linking against libgnuregex.
756 as part of the base system.
757 .It Va WITHOUT_GPL_DTC
758 Set to build the BSD licensed version of the device tree compiler rather
759 than the GPLed one from elinux.org.
761 This is a default setting on
762 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
764 Set to build the GPL'd version of the device tree compiler from elinux.org,
765 instead of the BSD licensed one.
767 This is a default setting on
768 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.
769 .It Va WITHOUT_GSSAPI
770 Set to not build libgssapi.
774 and related utilities.
776 Set to build Hesiod support.
778 Set to not build HTML docs.
779 .It Va WITHOUT_HYPERV
780 Set to not build or install HyperV utilities.
782 Set to not build iconv as part of libc.
783 .It Va WITHOUT_INCLUDES
784 Set to not install header files.
785 This option used to be spelled
788 The option does not work for build targets.
791 Set to not build programs and libraries related to IPv4 networking.
792 When set, it enforces these options:
796 .Va WITHOUT_INET_SUPPORT
800 programs and libraries related to IPv6 networking.
801 When set, it enforces these options:
805 .Va WITHOUT_INET6_SUPPORT
807 .It Va WITHOUT_INET6_SUPPORT
808 Set to build libraries, programs, and kernel modules without IPv6 support.
812 .It Va WITHOUT_INET_SUPPORT
813 Set to build libraries, programs, and kernel modules without IPv4 support.
814 .It Va WITHOUT_INSTALLLIB
815 Set this to not install optional libraries.
816 For example, when creating a
820 The option does not work for build targets.
822 .It Va WITH_INSTALL_AS_USER
823 Set to make install targets succeed for non-root users by installing
824 files with owner and group attributes set to that of the user running
828 The user still must set the
830 variable to point to a directory where the user has write permissions.
831 .It Va WITHOUT_IPFILTER
832 Set to not build IP Filter package.
834 Set to not build IPFW tools.
835 .It Va WITHOUT_IPSEC_SUPPORT
836 Set to not build the kernel with
839 This option is needed for
846 and related utilities.
848 Set to not build tools for the support of jails; e.g.,
855 .It Va WITHOUT_KERBEROS
856 Set this to not build Kerberos 5 (KTH Heimdal).
857 When set, it enforces these options:
861 .Va WITHOUT_KERBEROS_SUPPORT
864 When set, these options are also in effect:
867 .It Va WITHOUT_GSSAPI
872 .It Va WITHOUT_KERBEROS_SUPPORT
873 Set to build some programs without Kerberos support, like
879 .It Va WITHOUT_KERNEL_SYMBOLS
880 Set to not install kernel symbol files.
882 This option is recommended for those people who have small root partitions.
887 library as a part of the base system.
889 The option has no effect yet.
891 When set, it enforces these options:
895 .Va WITHOUT_KVM_SUPPORT
897 .It Va WITHOUT_KVM_SUPPORT
898 Set to build some programs without optional
902 Setting this variable will prevent the LDNS library from being built.
903 When set, it enforces these options:
907 .Va WITHOUT_LDNS_UTILS
911 .It Va WITHOUT_LDNS_UTILS
912 Setting this variable will prevent building the LDNS utilities
916 .It Va WITHOUT_LEGACY_CONSOLE
917 Set to not build programs that support a legacy PC console; e.g.,
922 On 64-bit platforms, set to not build 32-bit library set and a
925 .It Va WITHOUT_LIBCPLUSPLUS
926 Set to avoid building libcxxrt and libc++.
927 .It Va WITHOUT_LIBPTHREAD
932 When set, it enforces these options:
939 On armv6 only, set to enable soft float ABI compatibility libraries.
940 This option is for transitioning to the new hard float ABI.
941 .It Va WITHOUT_LIBTHR
947 Set to not build LLVM's lld linker.
949 This is a default setting on
950 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.
952 Set to build LLVM's lld linker.
954 This is a default setting on
955 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
957 Set to not build the LLDB debugger.
959 This is a default setting on
960 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.
962 Set to build the LLDB debugger.
964 This is a default setting on
965 amd64/amd64, arm64/aarch64 and i386/i386.
966 .It Va WITHOUT_LLD_BOOTSTRAP
967 Set to not build the LLD linker during the bootstrap phase of
969 To be able to build the system, either Binutils or LLD bootstrap must be
970 enabled unless an alternate linker is provided via XLD.
972 This is a default setting on
973 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.
974 .It Va WITH_LLD_BOOTSTRAP
975 Set to build the LLD linker during the bootstrap phase of the build.
977 This is a default setting on
978 amd64/amd64, arm64/aarch64 and i386/i386.
979 .It Va WITHOUT_LLD_IS_LD
980 Set to use GNU binutils ld as the system linker, instead of LLVM's LLD.
982 This is a default setting on
983 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.
984 .It Va WITH_LLD_IS_LD
985 Set to use LLVM's LLD as the system linker, instead of GNU binutils ld.
987 This is a default setting on
989 .It Va WITHOUT_LLVM_LIBUNWIND
990 Set to use GCC's stack unwinder (instead of LLVM's libunwind).
992 This is a default setting on
993 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.
994 .It Va WITH_LLVM_LIBUNWIND
995 Set to use LLVM's libunwind stack unwinder (instead of GCC's unwinder).
997 This is a default setting on
998 amd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
999 .It Va WITH_LOADER_FIREWIRE
1000 Enable firewire support in /boot/loader and /boot/zfsloader on x86.
1001 This option is a nop on all other platforms.
1002 .It Va WITHOUT_LOADER_GELI
1003 Disable inclusion of GELI crypto support in the boot chain binaries.
1004 .It Va WITHOUT_LOCALES
1005 Set to not build localization files; see
1007 .It Va WITHOUT_LOCATE
1010 and related programs.
1014 and related programs.
1015 .It Va WITHOUT_LS_COLORS
1018 without support for colors to distinguish file types.
1019 .It Va WITHOUT_LZMA_SUPPORT
1020 Set to build some programs without optional lzma compression support.
1022 Set to not build any mail support (MUA or MTA).
1023 When set, it enforces these options:
1029 .Va WITHOUT_MAILWRAPPER
1031 .Va WITHOUT_SENDMAIL
1033 .It Va WITHOUT_MAILWRAPPER
1034 Set to not build the
1040 and related support files.
1041 .It Va WITHOUT_MAKE_CHECK_USE_SANDBOX
1044 in limited sandbox mode.
1045 This option should be paired with
1046 .Va WITH_INSTALL_AS_USER
1047 if executed as an unprivileged user.
1052 Set to not build manual pages.
1053 When set, these options are also in effect:
1056 .It Va WITHOUT_MAN_UTILS
1061 .It Va WITHOUT_MANCOMPRESS
1062 Set to not to install compressed man pages.
1063 Only the uncompressed versions will be installed.
1064 .It Va WITHOUT_MAN_UTILS
1065 Set to not build utilities for manual pages,
1071 and related support files.
1072 .It Va WITH_META_MODE
1075 meta files when building, which can provide a reliable incremental build when
1078 The meta file is created in OBJDIR as
1080 These meta files track the command that was executed, its output, and the
1084 module is required unless
1087 When the module is loaded, any files used by the commands executed are
1088 tracked as dependencies for the target in its meta file.
1089 The target is considered out-of-date and rebuilt if any of these
1090 conditions are true compared to the last build:
1091 .Bl -bullet -compact
1093 The command to execute changes.
1095 The current working directory changes.
1097 The target's meta file is missing.
1099 The target's meta file is missing filemon data when filemon is loaded
1100 and a previous run did not have it loaded.
1104 Files read, executed or linked to are newer than the target.
1108 Files read, written, executed or linked are missing.
1110 The meta files can also be useful for debugging.
1112 The build hides commands that are executed unless
1117 to show some of its environment for further debugging.
1119 The build operates as it normally would otherwise.
1120 This option originally invoked a different build system but that was renamed
1122 .Va WITH_DIRDEPS_BUILD .
1124 This must be set in the environment, make command line, or
1125 .Pa /etc/src-env.conf ,
1129 Set to build the NAND Flash components.
1131 Set to not build programs and libraries
1132 related to NDIS emulation support.
1133 .It Va WITHOUT_NETCAT
1137 .It Va WITHOUT_NETGRAPH
1138 Set to not build applications to support
1140 When set, it enforces these options:
1146 .Va WITHOUT_BLUETOOTH
1148 .Va WITHOUT_NETGRAPH_SUPPORT
1150 .It Va WITHOUT_NETGRAPH_SUPPORT
1151 Set to build libraries, programs, and kernel modules without netgraph support.
1155 support and related programs.
1156 If set, you might need to adopt your
1162 Set to not build NLS catalogs.
1163 When set, it enforces these options:
1167 .Va WITHOUT_NLS_CATALOGS
1169 .It Va WITHOUT_NLS_CATALOGS
1170 Set to not build NLS catalog support for
1172 .It Va WITHOUT_NS_CACHING
1173 Set to disable name caching in the
1176 The generic caching daemon,
1178 will not be built either if this option is set.
1182 and related programs.
1185 .Dq "OpenFabrics Enterprise Distribution"
1186 Infiniband software stack.
1187 .It Va WITH_OPENLDAP
1188 Enable building openldap support for kerberos.
1189 .It Va WITHOUT_OPENSSH
1190 Set to not build OpenSSH.
1191 .It Va WITHOUT_OPENSSL
1192 Set to not build OpenSSL.
1193 When set, it enforces these options:
1197 .Va WITHOUT_KERBEROS
1199 .Va WITHOUT_KERBEROS_SUPPORT
1204 When set, these options are also in effect:
1207 .It Va WITHOUT_GSSAPI
1213 Set to not build PAM library and modules.
1215 This option is deprecated and does nothing.
1217 When set, it enforces these options:
1221 .Va WITHOUT_PAM_SUPPORT
1223 .It Va WITHOUT_PAM_SUPPORT
1224 Set to build some programs without PAM support, particularly
1228 .It Va WITHOUT_PC_SYSINSTALL
1231 and related programs.
1233 Set to not build PF firewall package.
1234 When set, it enforces these options:
1240 .It Va WITHOUT_PKGBOOTSTRAP
1247 and related programs.
1248 .It Va WITHOUT_PORTSNAP
1249 Set to not build or install
1255 and related programs.
1256 .It Va WITHOUT_PROFILE
1257 Set to not build profiled libraries for use with
1260 This is a default setting on
1261 mips/mips64el, mips/mips64, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf.
1263 Set to build profiled libraries for use with
1266 This is a default setting on
1267 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.
1268 .It Va WITHOUT_QUOTAS
1271 and related programs.
1272 .It Va WITHOUT_RADIUS_SUPPORT
1273 Set to not build radius support into various applications, like
1277 .It Va WITH_RATELIMIT
1278 Set to build the system with rate limit support.
1281 .Dv SO_MAX_PACING_RATE
1289 .It Va WITHOUT_RBOOTD
1290 Set to not build or install
1292 .It Va WITH_REPRODUCIBLE_BUILD
1293 Set to exclude build metadata (such as the build time, user, or host)
1294 from the kernel, boot loaders, and uname output, so that builds produce
1295 bit-for-bit identical output.
1296 .It Va WITHOUT_RESCUE
1299 .It Va WITHOUT_ROUTED
1303 .It Va WITH_RPCBIND_WARMSTART_SUPPORT
1306 with warmstart support.
1307 .It Va WITHOUT_SENDMAIL
1310 and related programs.
1311 .It Va WITHOUT_SETUID_LOGIN
1312 Set this to disable the installation of
1314 as a set-user-ID root program.
1315 .It Va WITHOUT_SHAREDOCS
1316 Set to not build the
1319 .It Va WITH_SHARED_TOOLCHAIN
1320 Set to build the toolchain binaries shared.
1324 and necessary utilities like assembler, linker and library archive manager.
1325 .It Va WITH_SORT_THREADS
1326 Set to enable threads in
1328 .It Va WITHOUT_SOURCELESS
1329 Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
1330 When set, it enforces these options:
1334 .Va WITHOUT_SOURCELESS_HOST
1336 .Va WITHOUT_SOURCELESS_UCODE
1338 .It Va WITHOUT_SOURCELESS_HOST
1339 Set to not build kernel modules that include sourceless native code for host CPU.
1340 .It Va WITHOUT_SOURCELESS_UCODE
1341 Set to not build kernel modules that include sourceless microcode.
1343 Set to not build world with propolice stack smashing protection.
1345 This is a default setting on
1346 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1348 Set to build world with propolice stack smashing protection.
1350 This is a default setting on
1351 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.
1353 Enable staging of files to a stage tree.
1354 This can be best thought of as auto-install to
1356 with some extra meta data to ensure dependencies can be tracked.
1358 .Va WITH_DIRDEPS_BUILD .
1359 When set, these options are also in effect:
1362 .It Va WITH_STAGING_MAN
1364 .Va WITHOUT_STAGING_MAN
1366 .It Va WITH_STAGING_PROG
1368 .Va WITHOUT_STAGING_PROG
1372 This must be set in the environment, make command line, or
1373 .Pa /etc/src-env.conf ,
1376 .It Va WITH_STAGING_MAN
1377 Enable staging of man pages to stage tree.
1378 .It Va WITH_STAGING_PROG
1379 Enable staging of PROGs to stage tree.
1380 .It Va WITH_STALE_STAGED
1381 Check staged files are not stale.
1387 .It Va WITHOUT_SVNLITE
1390 and related programs.
1391 .It Va WITHOUT_SYMVER
1392 Set to disable symbol versioning when building shared libraries.
1393 .It Va WITHOUT_SYSCONS
1396 support files such as keyboard maps, fonts, and screen output maps.
1398 Enable use of sysroot during build.
1400 .Va WITH_DIRDEPS_BUILD .
1402 This must be set in the environment, make command line, or
1403 .Pa /etc/src-env.conf ,
1406 .It Va WITHOUT_SYSTEM_COMPILER
1407 Set to not opportunistically skip building a cross-compiler during the
1408 bootstrap phase of the build.
1409 Normally, if the currently installed compiler matches the planned bootstrap
1410 compiler type and revision, then it will not be built.
1411 This does not prevent a compiler from being built for installation though,
1412 only for building one for the build itself.
1417 options control those.
1419 Set to not build or install
1423 .It Va WITHOUT_TCP_WRAPPERS
1424 Set to not build or install
1426 and related utilities.
1428 Set to not build and install
1432 .It Va WITHOUT_TELNET
1435 and related programs.
1436 .It Va WITHOUT_TESTS
1437 Set to not build nor install the
1444 This also disables the build of all test-related dependencies, including ATF.
1446 This is a default setting on
1447 riscv/riscv64 and riscv/riscv64sf.
1448 When set, it enforces these options:
1452 .Va WITHOUT_DTRACE_TESTS
1454 .Va WITHOUT_TESTS_SUPPORT
1456 .It Va WITHOUT_TESTS_SUPPORT
1457 Set to disables the build of all test-related dependencies, including ATF.
1459 This is a default setting on
1460 riscv/riscv64 and riscv/riscv64sf.
1461 .It Va WITHOUT_TEXTPROC
1463 programs used for text processing.
1465 Set to not build or install
1469 .It Va WITHOUT_TIMED
1470 Set to not build or install
1472 .It Va WITHOUT_TOOLCHAIN
1473 Set to not install header or
1474 programs used for program development,
1475 compilers, debuggers etc.
1476 When set, it enforces these options:
1480 .Va WITHOUT_BINUTILS
1484 .Va WITHOUT_CLANG_EXTRAS
1486 .Va WITHOUT_CLANG_FULL
1492 .Va WITHOUT_INCLUDES
1498 .It Va WITHOUT_UNBOUND
1501 and related programs.
1502 .It Va WITHOUT_UNIFIED_OBJDIR
1503 Set to use the historical object directory format for
1506 For native-builds and builds done directly in sub-directories the format of
1507 .Pa ${MAKEOBJDIRPREFIX}/${.CURDIR}
1509 while for cross-builds
1510 .Pa ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR}
1513 This option is transitional and will be removed before the 12.0 release,
1515 .va WITH_UNIFIED_OBJDIR
1516 will be enabled permanently.
1518 This must be set in the environment, make command line, or
1519 .Pa /etc/src-env.conf ,
1523 Set to not build USB-related programs and libraries.
1524 .It Va WITHOUT_USB_GADGET_EXAMPLES
1525 Set to not build USB gadget kernel modules.
1526 .It Va WITHOUT_UTMPX
1527 Set to not build user accounting tools such as
1536 Set to not build and install vi, view, ex and related programs.
1540 support files (fonts and keymaps).
1541 .It Va WITHOUT_WARNS
1542 Set this to not add warning flags to the compiler invocations.
1543 Useful as a temporary workaround when code enters the tree
1544 which triggers warnings in environments that differ from the
1546 .It Va WITHOUT_WIRELESS
1547 Set to not build programs used for 802.11 wireless networks; especially
1548 .Xr wpa_supplicant 8
1551 When set, it enforces these options:
1555 .Va WITHOUT_WIRELESS_SUPPORT
1557 .It Va WITHOUT_WIRELESS_SUPPORT
1558 Set to build libraries, programs, and kernel modules without
1559 802.11 wireless support.
1560 .It Va WITHOUT_WPA_SUPPLICANT_EAPOL
1562 .Xr wpa_supplicant 8
1563 without support for the IEEE 802.1X protocol and without
1564 support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS
1565 protocols (usable only via 802.1X).
1567 Set to not build ZFS file system.
1568 .It Va WITHOUT_ZONEINFO
1569 Set to not build the timezone database.
1570 When set, it enforces these options:
1574 .Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT
1576 .Va WITHOUT_ZONEINFO_OLD_TIMEZONES_SUPPORT
1578 .It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
1579 Set to build leapsecond information in to the timezone database.
1580 .It Va WITH_ZONEINFO_OLD_TIMEZONES_SUPPORT
1581 Set to build backward compatibility timezone aliases in to the timezone
1585 .Bl -tag -compact -width Pa
1586 .It Pa /etc/src.conf
1587 .It Pa /etc/src-env.conf
1588 .It Pa /usr/share/mk/bsd.own.mk
1601 This manual page was autogenerated by
1602 .An tools/build/options/makeman .