aboutsummaryrefslogtreecommitdiff
path: root/share/man/man5/src.conf.5
diff options
context:
space:
mode:
Diffstat (limited to 'share/man/man5/src.conf.5')
-rw-r--r--share/man/man5/src.conf.5351
1 files changed, 225 insertions, 126 deletions
diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5
index 82c32772e762..c6546e951e13 100644
--- a/share/man/man5/src.conf.5
+++ b/share/man/man5/src.conf.5
@@ -1,6 +1,5 @@
.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman.
-.\" $FreeBSD$
-.Dd July 6, 2022
+.Dd March 15, 2024
.Dt SRC.CONF 5
.Os
.Sh NAME
@@ -79,7 +78,11 @@ and
.Va MAKEOBJDIRPREFIX
as they are environment-only variables.
.Pp
-The values of variables are ignored regardless of their setting;
+The values of
+.Va WITH_
+and
+.Va WITHOUT_
+variables are ignored regardless of their setting;
even if they would be set to
.Dq Li FALSE
or
@@ -127,9 +130,6 @@ checks.
Do not build
.Xr at 1
and related utilities.
-.It Va WITHOUT_ATM
-Do not build
-programs and libraries related to ATM networking.
.It Va WITHOUT_AUDIT
Do not build audit support into system programs.
.It Va WITHOUT_AUTHPF
@@ -183,7 +183,7 @@ Do not build or install
.Xr bhyve 8 ,
associated utilities, and examples.
.Pp
-This option only affects amd64/amd64.
+This option only affects amd64/amd64 and arm64/aarch64.
.It Va WITH_BHYVE_SNAPSHOT
Include support for save and restore (snapshots) in
.Xr bhyve 8
@@ -265,18 +265,12 @@ Build some programs without optional bzip2 support.
Do not build
.Xr calendar 1 .
.It Va WITHOUT_CAPSICUM
-Do not build Capsicum support into system programs.
-When set, it enforces these options:
-.Pp
-.Bl -item -compact
-.It
-.Va WITHOUT_CASPER
-.El
+This option has no effect.
.It Va WITHOUT_CAROOT
Do not add the trusted certificates from the Mozilla NSS bundle to
base.
.It Va WITHOUT_CASPER
-Do not build Casper program and related libraries.
+This option has no effect.
.It Va WITH_CCACHE_BUILD
Use
.Xr ccache 1
@@ -386,12 +380,6 @@ Build clang-format.
.It Va WITHOUT_CLANG_FULL
Avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
the Clang C/C++ compiler.
-.It Va WITHOUT_CLANG_IS_CC
-Do not install links to the Clang C/C++ compiler as
-.Pa /usr/bin/cc ,
-.Pa /usr/bin/c++
-and
-.Pa /usr/bin/cpp .
.It Va WITHOUT_CLEAN
Do not clean before building world and/or kernel.
.It Va WITHOUT_CPP
@@ -436,6 +424,8 @@ When set, it enforces these options:
.It
.Va WITHOUT_LDNS_UTILS
.It
+.Va WITHOUT_LOADER_ZFS
+.It
.Va WITHOUT_OPENSSH
.It
.Va WITHOUT_OPENSSL
@@ -468,67 +458,29 @@ Do not build
.Xr cxgbetool 8
.Pp
This is a default setting on
-arm/armv6, arm/armv7, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, powerpc/powerpc and riscv/riscv64.
.It Va WITH_CXGBETOOL
Build
.Xr cxgbetool 8
.Pp
This is a default setting on
amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le.
-.It Va WITHOUT_CXX
-Do not build C++ headers and runtime libraries.
-It also prevents building binaries and libraries written in C++, including
-.Xr devd 8 .
-When set, it enforces these options:
-.Pp
-.Bl -item -compact
-.It
-.Va WITHOUT_CLANG
-.It
-.Va WITHOUT_CLANG_EXTRAS
-.It
-.Va WITHOUT_CLANG_FORMAT
-.It
-.Va WITHOUT_CLANG_FULL
-.It
-.Va WITHOUT_DTRACE_TESTS
-.It
-.Va WITHOUT_GOOGLETEST
-.It
-.Va WITHOUT_LLVM_COV
-.It
-.Va WITHOUT_OFED
-.It
-.Va WITHOUT_OFED_EXTRA
-.It
-.Va WITHOUT_OPENMP
-.It
-.Va WITHOUT_PMC
-.It
-.Va WITHOUT_TESTS
-.El
.It Va WITHOUT_DEBUG_FILES
Avoid building or installing standalone debug files for each
executable binary and shared library.
.It Va WITH_DETECT_TZ_CHANGES
Make the time handling code detect changes to the timezone files.
-.It Va WITHOUT_DIALOG
-Do not build
+.It Va WITH_DIALOG
+Do build
.Xr dialog 1 ,
.Xr dialog 3 ,
.Xr dpv 1 ,
and
.Xr dpv 3 .
-When set, it enforces these options:
-.Pp
-.Bl -item -compact
-.It
-.Va WITHOUT_BSDINSTALL
-.El
.It Va WITHOUT_DICT
Do not build the Webster dictionary files.
.It Va WITH_DIRDEPS_BUILD
-This is an experimental build system.
+This is an alternate build system.
For details see
https://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
Build commands can be seen from the top-level with:
@@ -562,7 +514,14 @@ The build hides commands executed unless
is defined.
.Pp
Note that there is currently no mass install feature for this.
+This build is designed for producing packages, that can then be installed
+on a target system.
.Pp
+The implementation in
+.Fx
+is incomplete.
+Completion would require leaf directories for building each kernel
+and package so that their dependencies can be tracked.
When set, it enforces these options:
.Pp
.Bl -item -compact
@@ -573,6 +532,10 @@ When set, it enforces these options:
When set, these options are also in effect:
.Pp
.Bl -inset -compact
+.It Va WITH_META_ERROR_TARGET
+(unless
+.Va WITHOUT_META_ERROR_TARGET
+is set explicitly)
.It Va WITH_META_MODE
(unless
.Va WITHOUT_META_MODE
@@ -609,6 +572,13 @@ This must be set in the environment, make command line, or
.Pa /etc/src-env.conf ,
not
.Pa /etc/src.conf .
+.It Va WITH_DISK_IMAGE_TOOLS_BOOTSTRAP
+Build
+.Xr etdump 1 ,
+.Xr makefs 8
+and
+.Xr mkimg 1
+as bootstrap tools.
.It Va WITHOUT_DMAGENT
Do not build dma Mail Transport Agent.
.It Va WITHOUT_DOCCOMPRESS
@@ -622,6 +592,11 @@ When set, it enforces these options:
.It
.Va WITHOUT_CTF
.El
+.It Va WITH_DTRACE_ASAN
+Compile userspace DTrace code (libdtrace, dtrace(1), lockstat(1), plockstat(1))
+with address and undefined behavior sanitizers.
+Requires that Clang be used as the base system compiler
+and that the runtime support library is available.
.It Va WITH_DTRACE_TESTS
Build and install the DTrace test suite in
.Pa /usr/tests/cddl/usr.sbin/dtrace .
@@ -645,7 +620,7 @@ and
.Xr efivar 8 .
.Pp
This is a default setting on
-powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le.
+i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITH_EFI
Build
.Xr efivar 3
@@ -653,7 +628,7 @@ and
.Xr efivar 8 .
.Pp
This is a default setting on
-amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm/armv7 and arm64/aarch64.
.It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
Do not build ELF Tool Chain tools
(addr2line, nm, size, strings and strip)
@@ -666,11 +641,18 @@ Avoid installing examples to
.Pa /usr/share/examples/ .
.It Va WITH_EXPERIMENTAL
Include experimental features in the build.
-.It Va WITH_EXTRA_TCP_STACKS
-Build extra TCP stack modules.
+.It Va WITHOUT_FDT
+Do not build Flattened Device Tree support as part of the base system.
+This includes the device tree compiler (dtc) and libfdt support library.
+.Pp
+This is a default setting on
+amd64/amd64 and i386/i386.
.It Va WITH_FDT
Build Flattened Device Tree support as part of the base system.
This includes the device tree compiler (dtc) and libfdt support library.
+.Pp
+This is a default setting on
+arm/armv7, arm64/aarch64, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITHOUT_FILE
Do not build
.Xr file 1
@@ -736,12 +718,12 @@ Do not build HTML docs.
Do not build or install HyperV utilities.
.Pp
This is a default setting on
-arm/armv6, arm/armv7, arm64/aarch64, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITH_HYPERV
Build or install HyperV utilities.
.Pp
This is a default setting on
-amd64/amd64 and i386/i386.
+amd64/amd64, arm64/aarch64 and i386/i386.
.It Va WITHOUT_ICONV
Do not build iconv as part of libc.
.It Va WITHOUT_INCLUDES
@@ -775,15 +757,6 @@ Do not build
.Xr inetd 8 .
.It Va WITHOUT_INET_SUPPORT
Build libraries, programs, and kernel modules without IPv4 support.
-.It Va WITH_INIT_ALL_PATTERN
-Build the base system or kernel with stack variables initialized to
-.Pq compiler defined
-debugging patterns on function entry.
-This option requires the clang compiler.
-.It Va WITH_INIT_ALL_ZERO
-Build the base system or kernel with stack variables initialized
-to zero on function entry.
-This option requires that the clang compiler be used.
.It Va WITHOUT_INSTALLLIB
Set this to not install optional libraries.
For example, when creating a
@@ -843,9 +816,17 @@ is set explicitly)
Build some programs without Kerberos support, like
.Xr ssh 1 ,
.Xr telnet 1 ,
-.Xr sshd 8 ,
and
-.Xr telnetd 8 .
+.Xr sshd 8 .
+.It Va WITH_KERNEL_BIN
+Generate and install kernel.bin from kernel as part of the normal build and
+install processes for the kernel. Available only on arm and arm64.
+
+Usually this will be added to the kernel config file with:
+
+makeoptions WITH_KERNEL_BIN=1
+
+though it can also be used on the command line.
.It Va WITH_KERNEL_RETPOLINE
Enable the "retpoline" mitigation for CVE-2017-5715 in the kernel
build.
@@ -897,14 +878,21 @@ On 64-bit platforms, do not build 32-bit library set and a
runtime linker.
.Pp
This is a default setting on
-arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, i386/i386, powerpc/powerpc, powerpc/powerpc64le and riscv/riscv64.
+.It Va WITH_LIB32
+On 64-bit platforms, build the 32-bit library set and a
+.Nm ld-elf32.so.1
+runtime linker.
+.Pp
+This is a default setting on
+amd64/amd64, arm64/aarch64 and powerpc/powerpc64.
.It Va WITHOUT_LLD
Do not build LLVM's lld linker.
.It Va WITHOUT_LLDB
Do not build the LLDB debugger.
.Pp
This is a default setting on
-arm/armv6, arm/armv7, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7 and riscv/riscv64.
.It Va WITH_LLDB
Build the LLDB debugger.
.Pp
@@ -914,23 +902,36 @@ amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64 and po
Do not build the LLD linker during the bootstrap phase of
the build.
To be able to build the system an alternate linker must be provided via XLD.
-.It Va WITHOUT_LLD_IS_LD
-Do not install a
-.Pa /usr/bin/ld symlink
-to
-.Pa ld.lld .
-The system will not have a usable tool chain unless a linker is provided
-some other way.
.It Va WITHOUT_LLVM_ASSERTIONS
Disable debugging assertions in LLVM.
.It Va WITH_LLVM_BINUTILS
-Install LLVM's binutils (ar, addr2line, nm, etc.) instead of ELF Tool Chain's.
+Install LLVM's binutils (without an llvm- prefix),
+instead of ELF Tool Chain's tools.
+This includes
+.Xr addr2line 1 ,
+.Xr ar 1 ,
+.Xr nm 1 ,
+.Xr objcopy 1 ,
+.Xr ranlib 1 ,
+.Xr readelf 1 ,
+.Xr size 1 ,
+and
+.Xr strip 1 .
+Regardless of this setting, LLVM tools are used for
+.Xr c++filt 1
+and
+.Xr objdump 1 .
+.Xr strings 1
+is always provided by ELF Tool Chain.
.It Va WITHOUT_LLVM_COV
Do not build the
.Xr llvm-cov 1
tool.
.It Va WITHOUT_LLVM_CXXFILT
Install ELF Tool Chain's cxxfilt as c++filt, instead of LLVM's llvm-cxxfilt.
+.It Va WITH_LLVM_FULL_DEBUGINFO
+Generate full debug information for LLVM libraries and tools, which uses
+more disk space and build resources, but allows for easier debugging.
.It Va WITHOUT_LLVM_TARGET_AARCH64
Do not build LLVM target support for AArch64.
The
@@ -989,13 +990,14 @@ Do not build LLVM target support for X86.
The
.Va LLVM_TARGET_ALL
option should be used rather than this in most cases.
+.It Va WITH_LOADER_BIOS_TEXTONLY
+Use the old, FreeBSD 12 vidconsole.c.
+This only supports text mode without teken, without any graphics, font or video mode support.
+This setting only affects the i386 and amd64 BIOS boot loader.
.It Va WITH_LOADER_EFI_SECUREBOOT
Enable building
.Xr loader 8
with support for verification based on certificates obtained from UEFI.
-.It Va WITH_LOADER_FIREWIRE
-Enable firewire support in /boot/loader on x86.
-This option is a nop on all other platforms.
.It Va WITHOUT_LOADER_GELI
Disable inclusion of GELI crypto support in the boot chain binaries.
.Pp
@@ -1005,17 +1007,17 @@ powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le.
Build GELI bootloader support.
.Pp
This is a default setting on
-amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64.
.It Va WITHOUT_LOADER_KBOOT
Do not build kboot, a linuxboot environment loader
.Pp
This is a default setting on
-arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, i386/i386, powerpc/powerpc, powerpc/powerpc64le and riscv/riscv64.
.It Va WITH_LOADER_KBOOT
Build kboot, a linuxboot environment loader
.Pp
This is a default setting on
-amd64/amd64 and powerpc/powerpc64.
+amd64/amd64, arm64/aarch64 and powerpc/powerpc64.
.It Va WITHOUT_LOADER_LUA
Do not build LUA bindings for the boot loader.
.Pp
@@ -1025,12 +1027,12 @@ powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le.
Build LUA bindings for the boot loader.
.Pp
This is a default setting on
-amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64.
.It Va WITHOUT_LOADER_OFW
Disable building of openfirmware bootloader components.
.Pp
This is a default setting on
-amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64.
.It Va WITH_LOADER_OFW
Build openfirmware bootloader components.
.Pp
@@ -1040,12 +1042,12 @@ powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le.
Disable building of ubldr.
.Pp
This is a default setting on
-amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64le and riscv/riscv64.
.It Va WITH_LOADER_UBOOT
Build ubldr.
.Pp
This is a default setting on
-arm/armv6, arm/armv7, powerpc/powerpc and powerpc/powerpc64.
+arm/armv7, powerpc/powerpc and powerpc/powerpc64.
.It Va WITH_LOADER_VERBOSE
Build with extra verbose debugging in the loader.
May explode already nearly too large loader over the limit.
@@ -1077,6 +1079,14 @@ The kernel has to be built with a module to parse the manifest.
.Pp
Depends on
.Va WITH_LOADER_VERIEXEC .
+.It Va WITH_LOADER_VERIEXEC_VECTX
+Enable building
+.Xr loader 8
+with support for hashing and verifying kernel and modules as a side effect
+of loading.
+.Pp
+Depends on
+.Va WITH_LOADER_VERIEXEC .
.It Va WITHOUT_LOADER_ZFS
Do not build ZFS file system boot loader support.
.It Va WITHOUT_LOCALES
@@ -1094,6 +1104,8 @@ and related programs.
Build
.Xr ls 1
without support for colors to distinguish file types.
+.It Va WITHOUT_MACHDEP_OPTIMIZATIONS
+Prefer machine-independent non-assembler code in libc and libm.
.It Va WITHOUT_MAIL
Do not build any mail support (MUA or MTA).
When set, it enforces these options:
@@ -1141,8 +1153,8 @@ is set explicitly)
.It Va WITHOUT_MANCOMPRESS
Do not install compressed man pages.
Only the uncompressed versions will be installed.
-.It Va WITH_MANSPLITPKG
-Split man pages into their own packages during make package.
+.It Va WITHOUT_MANSPLITPKG
+Do not split man pages into their own packages during make package.
.It Va WITHOUT_MAN_UTILS
Do not build utilities for manual pages,
.Xr apropos 1 ,
@@ -1151,6 +1163,25 @@ Do not build utilities for manual pages,
.Xr whatis 1 ,
.Xr manctl 8 ,
and related support files.
+.It Va WITH_META_ERROR_TARGET
+Enable the META_MODE .ERROR target.
+.Pp
+This target will copy the meta file of a failed target
+to
+.Va ERROR_LOGDIR
+(default is
+.Ql ${SRCTOP:H}/error )
+to help with failure analysis.
+Depends on
+.Va WITH_META_MODE .
+This default when
+.Va WITH_DIRDEPS_BUILD
+is set.
+.Pp
+This must be set in the environment, make command line, or
+.Pa /etc/src-env.conf ,
+not
+.Pa /etc/src.conf .
.It Va WITH_META_MODE
Create
.Xr make 1
@@ -1212,7 +1243,7 @@ Do not build
.Xr mlx5tool 8
.Pp
This is a default setting on
-arm/armv6, arm/armv7, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, powerpc/powerpc and riscv/riscv64.
.It Va WITH_MLX5TOOL
Build
.Xr mlx5tool 8
@@ -1230,8 +1261,6 @@ When set, it enforces these options:
.Pp
.Bl -item -compact
.It
-.Va WITHOUT_ATM
-.It
.Va WITHOUT_BLUETOOTH
.El
.Pp
@@ -1245,6 +1274,15 @@ is set explicitly)
.El
.It Va WITHOUT_NETGRAPH_SUPPORT
Build libraries, programs, and kernel modules without netgraph support.
+.It Va WITHOUT_NETLINK
+Do not build
+.Xr genl 1
+utility.
+.It Va WITHOUT_NETLINK_SUPPORT
+Make libraries and programs use rtsock and
+.Xr sysctl 3
+interfaces instead of
+.Xr snl 3 .
.It Va WITHOUT_NIS
Do not build
.Xr NIS 8
@@ -1276,26 +1314,38 @@ will not be built either if this option is set.
Do not build
.Xr ntpd 8
and related programs.
+.It Va WITHOUT_NUAGEINIT
+Do not install the limited cloud init support scripts.
.It Va WITHOUT_NVME
Do not build nvme related tools and kernel modules.
.Pp
This is a default setting on
-arm/armv6, arm/armv7, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, powerpc/powerpc and riscv/riscv64.
.It Va WITH_NVME
Build nvme related tools and kernel modules.
.Pp
This is a default setting on
amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le.
.It Va WITHOUT_OFED
-Disable the build of the
+Do not build the
.Dq "OpenFabrics Enterprise Distribution"
-Infiniband software stack, including kernel modules and userspace libraries.
+InfiniBand software stack, including kernel modules and userspace libraries.
+.Pp
+This is a default setting on
+arm/armv7.
When set, it enforces these options:
.Pp
.Bl -item -compact
.It
.Va WITHOUT_OFED_EXTRA
.El
+.It Va WITH_OFED
+Build the
+.Dq "OpenFabrics Enterprise Distribution"
+InfiniBand software stack, including kernel modules and userspace libraries.
+.Pp
+This is a default setting on
+amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITH_OFED_EXTRA
Build the non-essential components of the
.Dq "OpenFabrics Enterprise Distribution"
@@ -1306,12 +1356,12 @@ Enable building LDAP support for kerberos using an openldap client from ports.
Do not build LLVM's OpenMP runtime.
.Pp
This is a default setting on
-arm/armv6, arm/armv7 and powerpc/powerpc.
+arm/armv7 and powerpc/powerpc.
.It Va WITH_OPENMP
Build LLVM's OpenMP runtime.
.Pp
This is a default setting on
-amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITHOUT_OPENSSH
Do not build OpenSSH.
.It Va WITHOUT_OPENSSL
@@ -1330,6 +1380,8 @@ When set, it enforces these options:
.It
.Va WITHOUT_LDNS_UTILS
.It
+.Va WITHOUT_LOADER_ZFS
+.It
.Va WITHOUT_OPENSSH
.It
.Va WITHOUT_OPENSSL_KTLS
@@ -1353,12 +1405,12 @@ is set explicitly)
Do not include kernel TLS support in OpenSSL.
.Pp
This is a default setting on
-arm/armv6, arm/armv7, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le, riscv/riscv64 and riscv/riscv64sf.
+arm/armv7, i386/i386, powerpc/powerpc and riscv/riscv64.
.It Va WITH_OPENSSL_KTLS
Include kernel TLS support in OpenSSL.
.Pp
This is a default setting on
-amd64/amd64 and arm64/aarch64.
+amd64/amd64, arm64/aarch64, powerpc/powerpc64 and powerpc/powerpc64le.
.It Va WITHOUT_PAM
Do not build PAM library and modules.
.Bf -symbolic
@@ -1388,6 +1440,15 @@ When set, it enforces these options:
.It Va WITHOUT_PIE
Do not build dynamically linked binaries as
Position-Independent Executable (PIE).
+.Pp
+This is a default setting on
+arm/armv7, i386/i386 and powerpc/powerpc.
+.It Va WITH_PIE
+Build dynamically linked binaries as
+Position-Independent Executable (PIE).
+.Pp
+This is a default setting on
+amd64/amd64, arm64/aarch64, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64.
.It Va WITHOUT_PKGBOOTSTRAP
Do not build
.Xr pkg 7
@@ -1396,10 +1457,6 @@ bootstrap tool.
Do not build
.Xr pmccontrol 8
and related programs.
-.It Va WITHOUT_PORTSNAP
-Do not build or install
-.Xr portsnap 8
-and related files.
.It Va WITHOUT_PPP
Do not build
.Xr ppp 8
@@ -1409,6 +1466,8 @@ Build profiled libraries for use with
.Xr gprof 8 .
This option is deprecated and may not be present in a future version of
.Fx .
+.It Va WITHOUT_PTHREADS_ASSERTIONS
+Disable debugging assertions in pthreads library.
.It Va WITHOUT_QUOTAS
Do not build
.Xr quota 1
@@ -1456,6 +1515,11 @@ utility.
Build
.Xr rpcbind 8
with warmstart support.
+.It Va WITHOUT_SCTP_SUPPORT
+Disable support in the kernel for the
+.Xr sctp 4
+Stream Control Transmission Protocol
+loadable kernel module.
.It Va WITHOUT_SENDMAIL
Do not build
.Xr sendmail 8
@@ -1471,12 +1535,6 @@ as a set-user-ID root program.
Do not build the
.Bx 4.4
legacy docs.
-.It Va WITHOUT_SHARED_TOOLCHAIN
-Build the toolchain binaries as statically linked executables.
-The set includes
-.Xr cc 1 ,
-.Xr make 1
-and necessary utilities like assembler, linker and library archive manager.
.It Va WITH_SORT_THREADS
Enable threads in
.Xr sort 1 .
@@ -1505,7 +1563,7 @@ When set, it enforces these options:
.Va WITHOUT_KERNEL_SYMBOLS
.El
.It Va WITHOUT_SSP
-Do not build world with propolice stack smashing protection.
+Do not build world with stack smashing protection.
.It Va WITH_STAGING
Enable staging of files to a stage tree.
This can be best thought of as auto-install to
@@ -1640,7 +1698,7 @@ Do not build or install
and
.Xr tftpd 8 .
.It Va WITHOUT_TOOLCHAIN
-Do not install header or
+Do not install
programs used for program development,
compilers, debuggers etc.
When set, it enforces these options:
@@ -1655,8 +1713,6 @@ When set, it enforces these options:
.It
.Va WITHOUT_CLANG_FULL
.It
-.Va WITHOUT_INCLUDES
-.It
.Va WITHOUT_LLD
.It
.Va WITHOUT_LLDB
@@ -1672,6 +1728,9 @@ and that the runtime support library is available
Do not build
.Xr unbound 8
and related programs.
+.It Va WITHOUT_UNDEFINED_VERSION
+Link libraries with --no-undefined-version to ensure all symbols are
+provided.
.It Va WITHOUT_UNIFIED_OBJDIR
Use the historical object directory format for
.Xr build 7
@@ -1772,6 +1831,46 @@ When set, it enforces these options:
.It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
Build leapsecond information in to the timezone database.
.El
+.Pp
+The following options accept a single value from a list of valid values.
+.Bl -tag -width indent
+.It Va INIT_ALL
+Control default initialization of stack variables in C and C++ code.
+Options other than
+.Li none
+require the Clang compiler or GCC 12.0 or later.
+The default value is
+.Li none .
+Valid values are:
+.Bl -tag -width indent
+.It Li none
+Do not initialize stack variables (standard C/C++ behavior).
+.It Li pattern
+Build the base system or kernel with stack variables initialized to
+.Pq compiler defined
+debugging patterns on function entry.
+.It Li zero
+Build the base system or kernel with stack variables initialized
+to zero on function entry.
+This value is converted to
+.Li none
+for amd64 kernel builds due to incompatability with ifunc memset.
+.El
+.It Va LIBC_MALLOC
+Specify the
+.Xr malloc 3
+implementation used by libc.
+The default value is
+.Li jemalloc .
+Valid values are:
+.Bl -tag -width indent
+.It Li jemalloc
+.El
+.Pp
+Other implementations are expected in the future in both
+.Fx
+and downstream consumers.
+.El
.Sh FILES
.Bl -tag -compact -width Pa
.It Pa /etc/src.conf