Main index | Section 5 | Options |
The src.conf file uses the standard makefile syntax. However, src.conf should not specify any dependencies to make(1). Instead, src.conf is to set make(1) variables that control the aspects of how the system builds.
The default location of src.conf is /etc/src.conf, though an alternative location can be specified in the make(1) variable SRCCONF. Overriding the location of src.conf may be necessary if the system-wide settings are not suitable for a particular build. For instance, setting SRCCONF to /dev/null effectively resets all build controls to their defaults.
The only purpose of src.conf is to control the compilation of the FreeBSD source code, which is usually located in /usr/src. As a rule, the system administrator creates src.conf when the values of certain control variables need to be changed from their defaults.
In addition, control variables can be specified
for a particular build via the
The environment of make(1) for the build can be controlled via the SRC_ENV_CONF variable, which defaults to /etc/src-env.conf. Some examples that may only be set in this file are WITH_DIRDEPS_BUILD, and WITH_META_MODE, and MAKEOBJDIRPREFIX as they are environment-only variables.
The values of variables are ignored regardless of their setting; even if they would be set to "FALSE" or "NO". The presence of an option causes it to be honored by make(1).
This list provides a name and short description for variables that can be used for source builds.
WITHOUT_ACCT | |
Set to not build process accounting tools such as accton(8) and sa(8). | |
WITHOUT_ACPI | |
Set to not build acpiconf(8), acpidump(8) and related programs. | |
WITHOUT_AMD | |
Set to not build amd(8), and related programs. | |
WITHOUT_APM | |
Set to not build apm(8), apmd(8) and related programs. | |
WITHOUT_ASSERT_DEBUG | |
Set to compile programs and libraries without the assert(3) checks. | |
WITHOUT_AT | |
Set to not build at(1) and related utilities. | |
WITHOUT_ATM | |
Set to not build programs and libraries related to ATM networking. | |
WITHOUT_AUDIT | |
Set to not build audit support into system programs. | |
WITHOUT_AUTHPF | |
Set to not build authpf(8). | |
WITHOUT_AUTOFS | |
Set to not build autofs(5) related programs, libraries, and kernel modules. | |
WITHOUT_AUTO_OBJ | |
Disable automatic creation of objdirs.
This is enabled by default if the wanted OBJDIR is writable by the current user.
This must be set in the environment, make command line, or /etc/src-env.conf, not /etc/src.conf. | |
WITH_BEARSSL | |
Build the BearSSL library.
BearSSL is a tiny SSL library suitable for embedded environments.
For details see
This library is currently only used to perform signature verification and related operations for Verified Exec and loader(8). When set, these options are also in effect:
| |
WITH_LOADER_EFI_SECUREBOOT | (unless WITHOUT_LOADER_EFI_SECUREBOOT is set explicitly) |
WITH_LOADER_VERIEXEC | (unless WITHOUT_LOADER_VERIEXEC is set explicitly) |
WITH_LOADER_VERIEXEC_VECTX | (unless WITHOUT_LOADER_VERIEXEC_VECTX is set explicitly) |
WITH_VERIEXEC | (unless WITHOUT_VERIEXEC is set explicitly) |
WITHOUT_BHYVE |
Set to not build or install
bhyve(8),
associated utilities, and examples.
This option only affects amd64/amd64. |
WITH_BIND_NOW | Build all binaries with the DF_BIND_NOW flag set to indicate that the run-time loader should perform all relocation processing at process startup rather than on demand. |
WITHOUT_BINUTILS |
Do not build or install GNU
as(1),
ld.bfd(1), and
objdump(1)
as part
of the normal system build.
This is a default setting on arm64/aarch64, riscv/riscv64 and riscv/riscv64sf. When set, it enforces these options:
|
WITHOUT_GDB | |
WITH_BINUTILS |
Set to build and install GNU
as(1),
objdump(1),
and for some CPU architectures
ld.bfd(1)
as part
of the normal system build.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64. |
WITHOUT_BINUTILS_BOOTSTRAP |
Do not build GNU binutils
as part of the bootstrap process.
This is a default setting on arm64/aarch64, riscv/riscv64 and riscv/riscv64sf. |
WITH_BINUTILS_BOOTSTRAP |
Build GNU binutils
as part of the bootstrap process.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64. |
WITHOUT_BLACKLIST |
Set this if you do not want to build
blacklistd(8)
and
blacklistctl(8).
When set, these options are also in effect:
|
WITHOUT_BLACKLIST_SUPPORT | (unless WITH_BLACKLIST_SUPPORT is set explicitly) |
WITHOUT_BLACKLIST_SUPPORT | Set to build some programs without libblacklist(3) support, like fingerd(8), ftpd(8), and sshd(8). |
WITHOUT_BLUETOOTH | Set to not build Bluetooth related kernel modules, programs and libraries. |
WITHOUT_BOOT | Set to not build the boot blocks and loader. |
WITHOUT_BOOTPARAMD | Set to not build or install bootparamd(8). |
WITHOUT_BOOTPD | Set to not build or install bootpd(8). |
WITHOUT_BSDINSTALL | Set to not build bsdinstall(8), sade(8), and related programs. |
WITHOUT_BSD_CPIO | Set to not build the BSD licensed version of cpio based on libarchive(3). |
WITH_BSD_CRTBEGIN | Enable the BSD licensed crtbegin.o and crtend.o. |
WITH_BSD_GREP | Install BSD-licensed grep as '[ef]grep' instead of GNU grep. |
WITHOUT_BSNMP | Set to not build or install bsnmpd(1) and related libraries and data files. |
WITHOUT_BZIP2 |
Set to not build contributed bzip2 software as a part of the base system.
The option has no effect yet.
When set, these options are also in effect:
|
WITHOUT_BZIP2_SUPPORT | (unless WITH_BZIP2_SUPPORT is set explicitly) |
WITHOUT_BZIP2_SUPPORT | Set to build some programs without optional bzip2 support. |
WITHOUT_CALENDAR | Set to not build calendar(1). |
WITHOUT_CAPSICUM |
Set to not build Capsicum support into system programs.
When set, it enforces these options:
|
WITHOUT_CASPER | |
WITHOUT_CAROOT | Set to not add the trusted certificates from the Mozilla NSS bundle to base. |
WITHOUT_CASPER | Set to not build Casper program and related libraries. |
WITH_CCACHE_BUILD |
Set to use
ccache(1)
for the build.
No configuration is required except to install the
devel/ccache
package.
When using with
distcc(1),
set
CCACHE_PREFIX=/usr/local/bin/distcc.
The default cache directory of
$HOME/.ccache
will be used, which can be overridden by setting
CCACHE_DIR.
The
CCACHE_COMPILERCHECK
option defaults to
content
when using the in-tree bootstrap compiler,
and
mtime
when using an external compiler.
The
CCACHE_CPP2
option is used for Clang but not GCC.
Sharing a cache between multiple work directories requires using a layout similar to /some/prefix/src /some/prefix/obj and an environment such as: CCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj' See ccache(1) for more configuration options. |
WITHOUT_CCD | Set to not build geom_ccd(4) and related utilities. |
WITHOUT_CDDL |
Set to not build code licensed under Sun's CDDL.
When set, it enforces these options:
|
WITHOUT_CTF | |
WITHOUT_LOADER_ZFS | |
WITHOUT_ZFS | |
WITHOUT_CLANG |
Set to not build the Clang C/C++ compiler during the regular phase of the build.
This is a default setting on sparc64/sparc64. When set, it enforces these options:
|
WITHOUT_CLANG_EXTRAS | |
WITHOUT_CLANG_FORMAT | |
WITHOUT_CLANG_FULL | |
WITHOUT_LLVM_COV | |
WITH_CLANG |
Set to build the Clang C/C++ compiler during the normal phase of the build.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf. |
WITHOUT_CLANG_BOOTSTRAP |
Set to not build the Clang C/C++ compiler during the bootstrap phase of
the build.
To be able to build the system, either gcc or clang bootstrap must be
enabled unless an alternate compiler is provided via XCC.
This is a default setting on 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. |
WITH_CLANG_BOOTSTRAP |
Set to build the Clang C/C++ compiler during the bootstrap phase of the build.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf. |
WITH_CLANG_EXTRAS | Set to build additional clang and llvm tools, such as bugpoint. |
WITH_CLANG_FORMAT | Set to build clang-format. |
WITHOUT_CLANG_FULL |
Set to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
the Clang C/C++ compiler.
This is a default setting on sparc64/sparc64. |
WITH_CLANG_FULL |
Set to build the ARCMigrate, Rewriter and StaticAnalyzer components of the
Clang C/C++ compiler.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf. |
WITHOUT_CLANG_IS_CC |
Set to install the GCC compiler as
/usr/bin/cc,
/usr/bin/c++
and
/usr/bin/cpp.
This is a default setting on 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. |
WITH_CLANG_IS_CC |
Set to install the Clang C/C++ compiler as
/usr/bin/cc,
/usr/bin/c++
and
/usr/bin/cpp.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf. |
WITHOUT_CPP | Set to not build cpp(1). |
WITHOUT_CROSS_COMPILER |
Set to not build any cross compiler in the cross-tools stage of buildworld.
When compiling a different version of
FreeBSD
than what is installed on the system, provide an alternate
compiler with XCC to ensure success.
When compiling with an identical version of
FreeBSD
to the host, this option may be safely used.
This option may also be safe when the host version of
FreeBSD
is close to the sources being built, but all bets are off if there have
been any changes to the toolchain between the versions.
When set, it enforces these options:
|
WITHOUT_BINUTILS_BOOTSTRAP | |
WITHOUT_CLANG_BOOTSTRAP | |
WITHOUT_ELFTOOLCHAIN_BOOTSTRAP | |
WITHOUT_GCC_BOOTSTRAP | |
WITHOUT_LLD_BOOTSTRAP | |
WITHOUT_CRYPT |
Set to not build any crypto code.
When set, it enforces these options:
|
WITHOUT_DMAGENT | |
WITHOUT_KERBEROS | |
WITHOUT_KERBEROS_SUPPORT | |
WITHOUT_LDNS | |
WITHOUT_LDNS_UTILS | |
WITHOUT_OPENSSH | |
WITHOUT_OPENSSL | |
WITHOUT_PKGBOOTSTRAP | |
WITHOUT_SVN | |
WITHOUT_SVNLITE | |
WITHOUT_UNBOUND | |
WITHOUT_WIRELESS | |
When set, these options are also in effect:
WITHOUT_GSSAPI | (unless WITH_GSSAPI is set explicitly) |
WITH_CTF | Set to compile with CTF (Compact C Type Format) data. CTF data encapsulates a reduced form of debugging information similar to DWARF and the venerable stabs and is required for DTrace. |
WITHOUT_CTM | Set to not build ctm(1) and related utilities. |
WITHOUT_CUSE | Set to not build CUSE-related programs and libraries. |
WITHOUT_CXGBETOOL |
Set to not build
cxgbetool(8)
This is a default setting on arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf. |
WITH_CXGBETOOL |
Set to build
cxgbetool(8)
This is a default setting on amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and sparc64/sparc64. |
WITHOUT_CXX |
Set to not build
c++(1)
and related libraries.
It will also prevent building of
gperf(1)
and
devd(8).
When set, it enforces these options:
|
WITHOUT_CLANG | |
WITHOUT_CLANG_EXTRAS | |
WITHOUT_CLANG_FORMAT | |
WITHOUT_CLANG_FULL | |
WITHOUT_DTRACE_TESTS | |
WITHOUT_GNUCXX | |
WITHOUT_LLVM_COV | |
WITHOUT_TESTS | |
WITHOUT_DEBUG_FILES | Set to avoid building or installing standalone debug files for each executable binary and shared library. |
WITHOUT_DIALOG |
Set to not build
dialog(1),
dialog(3),
dpv(1),
and
dpv(3).
When set, it enforces these options:
|
WITHOUT_BSDINSTALL | |
WITHOUT_DICT | Set to not build the Webster dictionary files. |
WITH_DIRDEPS_BUILD |
This is an experimental build system.
For details see
http://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
Build commands can be seen from the top-level with:
make show-valid-targets The build is driven by dirdeps.mk using DIRDEPS stored in Makefile.depend files found in each directory. The build can be started from anywhere, and behaves the same. The initial instance of make(1) recursively reads DIRDEPS from Makefile.depend, computing a graph of tree dependencies from the current origin. Setting NO_DIRDEPS skips checking dirdep dependencies and will only build in the current and child directories. NO_DIRDEPS_BELOW skips building any dirdeps and only build the current directory. This also utilizes the WITH_META_MODE logic for incremental builds. The build hides commands executed unless NO_SILENT is defined. Note that there is currently no mass install feature for this. When set, it enforces these options:
|
WITH_INSTALL_AS_USER | |
When set, these options are also in effect:
WITH_META_MODE | (unless WITHOUT_META_MODE is set explicitly) |
WITH_STAGING | (unless WITHOUT_STAGING is set explicitly) |
WITH_STAGING_MAN | (unless WITHOUT_STAGING_MAN is set explicitly) |
WITH_STAGING_PROG | (unless WITHOUT_STAGING_PROG is set explicitly) |
WITH_SYSROOT | (unless WITHOUT_SYSROOT is set explicitly) |
This must be set in the environment, make command line, or /etc/src-env.conf, not /etc/src.conf.
WITH_DIRDEPS_CACHE |
Cache result of dirdeps.mk which can save significant time
for subsequent builds.
Depends on
WITH_DIRDEPS_BUILD.
This must be set in the environment, make command line, or /etc/src-env.conf, not /etc/src.conf. |
WITHOUT_DMAGENT | Set to not build dma Mail Transport Agent. |
WITHOUT_DOCCOMPRESS | Set to not install compressed system documentation. Only the uncompressed version will be installed. |
WITH_DTRACE_TESTS | Set to build and install the DTrace test suite in /usr/tests/cddl/usr.sbin/dtrace. This test suite is considered experimental on architectures other than amd64/amd64 and running it may cause system instability. |
WITHOUT_DYNAMICROOT | Set this if you do not want to link /bin and /sbin dynamically. |
WITHOUT_ED_CRYPTO | Set to build ed(1) without support for encryption/decryption. |
WITHOUT_EE | Set to not build and install edit(1), ee(1), and related programs. |
WITHOUT_EFI |
Set not to build
efivar(3)
and
efivar(8).
This is a default setting on 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. |
WITH_EFI |
Set to build
efivar(3)
and
efivar(8).
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386. |
WITHOUT_ELFTOOLCHAIN_BOOTSTRAP | Set to not build ELF Tool Chain tools (addr2line, nm, size, strings and strip) as part of the bootstrap process. An alternate bootstrap tool chain must be provided. |
WITHOUT_EXAMPLES | Set to avoid installing examples to /usr/share/examples/. |
WITH_EXTRA_TCP_STACKS | Set to build extra TCP stack modules. |
WITHOUT_FDT | Set to not build Flattened Device Tree support as part of the base system. This includes the device tree compiler (dtc) and libfdt support library. |
WITHOUT_FILE |
Set to not build
file(1)
and related programs.
When set, it enforces these options:
|
WITHOUT_SVNLITE | |
WITHOUT_FINGER | Set to not build or install finger(1) and fingerd(8). |
WITHOUT_FLOPPY | Set to not build or install programs for operating floppy disk driver. |
WITHOUT_FMTREE | Set to not build and install /usr/sbin/fmtree. |
WITHOUT_FORMAT_EXTENSIONS |
Set to not enable
|
WITHOUT_FORTH | Set to build bootloaders without Forth support. |
WITHOUT_FP_LIBC | Set to build libc without floating-point support. |
WITHOUT_FREEBSD_UPDATE | Set to not build freebsd-update(8). |
WITHOUT_FTP | Set to not build or install ftp(1) and ftpd(8). |
WITHOUT_GAMES | Set to not build games. |
WITHOUT_GCC |
Set to not build and install gcc and g++ as part of the normal build process.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf. |
WITH_GCC |
Set to build and install gcc and g++.
This is a default setting on 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. |
WITHOUT_GCC_BOOTSTRAP |
Set to not build gcc and g++ as part of the bootstrap process.
You must enable either gcc or clang bootstrap to be able to build the system,
unless an alternative compiler is provided via
XCC.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf. |
WITH_GCC_BOOTSTRAP |
Set to build gcc and g++ as part of the bootstrap process.
This is a default setting on 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. |
WITHOUT_GCOV | Set to not build the gcov(1) tool. |
WITHOUT_GDB |
Set to not build
gdb(1).
This is a default setting on arm64/aarch64, riscv/riscv64 and riscv/riscv64sf. |
WITH_GDB |
Set to build
gdb(1).
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64. |
WITHOUT_GDB_LIBEXEC |
Set to install
gdb(1)
into
/usr/bin.
This is a default setting on sparc64/sparc64. |
WITH_GDB_LIBEXEC |
Set to install
gdb(1)
into
/usr/libexec.
This permits
gdb(1)
to be used as a fallback for
crashinfo(8)
if a newer version is not installed.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf. |
WITH_GH_BC | Set this option to install the enhanced bc(1) and dc(1) programs instead of the traditional FreeBSD versions. |
WITHOUT_GNUCXX |
Do not build the GNU C++ stack (g++, libstdc++).
This is the default on platforms where clang is the system compiler.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf. |
WITH_GNUCXX |
Build the GNU C++ stack (g++, libstdc++).
This is the default on platforms where gcc is the system compiler.
This is a default setting on 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. |
WITHOUT_GNU_DIFF | Set to not build GNU diff(1) and diff3(1). |
WITHOUT_GNU_GREP | Set to not build GNU grep(1). |
WITHOUT_GNU_GREP_COMPAT | Set this option to omit the gnu extensions to grep from being included in BSD grep. |
WITHOUT_GOOGLETEST | Set to neither build nor install libgmocklibgtestand dependent tests. |
WITHOUT_GPIO | Set to not build gpioctl(8) as part of the base system. |
WITHOUT_GPL_DTC |
Set to build the BSD licensed version of the device tree compiler rather
than the GPLed one from elinux.org.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf. |
WITH_GPL_DTC |
Set to build the GPL'd version of the device tree compiler from elinux.org,
instead of the BSD licensed one.
This is a default setting on 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. |
WITHOUT_GSSAPI | Set to not build libgssapi. |
WITHOUT_HAST | Set to not build hastd(8) and related utilities. |
WITH_HESIOD | Set to build Hesiod support. |
WITHOUT_HTML | Set to not build HTML docs. |
WITHOUT_HYPERV |
Set to not build or install HyperV utilities.
This is a default setting on arm/arm, arm/armv6, arm/armv7, arm64/aarch64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITH_HYPERV |
Set to build or install HyperV utilities.
This is a default setting on amd64/amd64 and i386/i386. |
WITHOUT_ICONV | Set to not build iconv as part of libc. |
WITHOUT_INCLUDES | Set to not install header files. This option used to be spelled NO_INCS. The option does not work for build targets. |
WITHOUT_INET |
Set to not build programs and libraries related to IPv4 networking.
When set, it enforces these options:
|
WITHOUT_INET_SUPPORT | |
WITHOUT_INET6 |
Set to not build
programs and libraries related to IPv6 networking.
When set, it enforces these options:
|
WITHOUT_INET6_SUPPORT | |
WITHOUT_INET6_SUPPORT | Set to build libraries, programs, and kernel modules without IPv6 support. |
WITHOUT_INETD | Set to not build inetd(8). |
WITHOUT_INET_SUPPORT | Set to build libraries, programs, and kernel modules without IPv4 support. |
WITHOUT_INSTALLLIB | Set this to not install optional libraries. For example, when creating a nanobsd(8) image. The option does not work for build targets. |
WITH_INSTALL_AS_USER | Set to make install targets succeed for non-root users by installing files with owner and group attributes set to that of the user running the make(1) command. The user still must set the DESTDIR variable to point to a directory where the user has write permissions. |
WITHOUT_IPFILTER | Set to not build IP Filter package. |
WITHOUT_IPFW | Set to not build IPFW tools. |
WITHOUT_IPSEC_SUPPORT | Set to not build the kernel with ipsec(4) support. This option is needed for ipsec(4) and tcpmd5(4). |
WITHOUT_ISCSI | Set to not build iscsid(8) and related utilities. |
WITHOUT_JAIL | Set to not build tools for the support of jails; e.g., jail(8). |
WITHOUT_KDUMP | Set to not build kdump(1) and truss(1). |
WITHOUT_KERBEROS |
Set this to not build Kerberos 5 (KTH Heimdal).
When set, these options are also in effect:
|
WITHOUT_GSSAPI | (unless WITH_GSSAPI is set explicitly) |
WITHOUT_KERBEROS_SUPPORT | (unless WITH_KERBEROS_SUPPORT is set explicitly) |
WITHOUT_KERBEROS_SUPPORT | Set to build some programs without Kerberos support, like ssh(1), telnet(1), sshd(8), and telnetd(8). |
WITH_KERNEL_RETPOLINE | Set to enable the "retpoline" mitigation for CVE-2017-5715 in the kernel build. |
WITHOUT_KERNEL_SYMBOLS | Set to not install kernel symbol files. This option is recommended for those people who have small root partitions. |
WITHOUT_KVM |
Set to not build the
libkvm
library as a part of the base system.
The option has no effect yet.
When set, these options are also in effect:
|
WITHOUT_KVM_SUPPORT | (unless WITH_KVM_SUPPORT is set explicitly) |
WITHOUT_KVM_SUPPORT | Set to build some programs without optional libkvm support. |
WITHOUT_LDNS |
Setting this variable will prevent the LDNS library from being built.
When set, it enforces these options:
|
WITHOUT_LDNS_UTILS | |
WITHOUT_UNBOUND | |
WITHOUT_LDNS_UTILS | Setting this variable will prevent building the LDNS utilities drill(1) and host(1). |
WITHOUT_LEGACY_CONSOLE | Set to not build programs that support a legacy PC console; e.g., kbdcontrol(1) and vidcontrol(1). |
WITHOUT_LIB32 | On 64-bit platforms, set to not build 32-bit library set and a ld-elf32.so.1 runtime linker. |
WITHOUT_LIBCPLUSPLUS | Set to avoid building libcxxrt and libc++. |
WITHOUT_LIBPTHREAD |
Set to not build the
libpthread
providing library,
libthr.
When set, it enforces these options:
|
WITHOUT_LIBTHR | |
WITH_LIBSOFT | On armv6 only, set to enable soft float ABI compatibility libraries. This option is for transitioning to the new hard float ABI. |
WITHOUT_LIBTHR | Set to not build the libthr (1:1 threading) library. |
WITHOUT_LLD |
Set to not build LLVM's lld linker.
This is a default setting on sparc64/sparc64. |
WITH_LLD |
Set to build LLVM's lld linker.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf. |
WITHOUT_LLDB |
Set to not build the LLDB debugger.
This is a default setting on arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITH_LLDB |
Set to build the LLDB debugger.
This is a default setting on amd64/amd64, arm64/aarch64 and i386/i386. |
WITHOUT_LLD_BOOTSTRAP |
Set to not build the LLD linker during the bootstrap phase of
the build.
To be able to build the system, either Binutils or LLD bootstrap must be
enabled unless an alternate linker is provided via XLD.
This is a default setting on arm/arm, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64. |
WITH_LLD_BOOTSTRAP |
Set to build the LLD linker during the bootstrap phase of the build.
This is a default setting on amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf. |
WITHOUT_LLD_IS_LD |
Set to use GNU binutils ld as the system linker, instead of LLVM's LLD.
This is a default setting on arm/arm, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64. |
WITH_LLD_IS_LD |
Set to use LLVM's LLD as the system linker, instead of GNU binutils ld.
This is a default setting on amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf. |
WITH_LLVM_ASSERTIONS | Set to enable debugging assertions in LLVM. |
WITHOUT_LLVM_COV |
Set to not build the
llvm-cov(1)
tool.
This is a default setting on sparc64/sparc64. |
WITH_LLVM_COV |
Set to build the
llvm-cov(1)
tool.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf. |
WITH_LLVM_CXXFILT | Install LLVM's llvm-cxxfilt as c++filt, instead of ELF Tool Chain's cxxfilt. |
WITHOUT_LLVM_LIBUNWIND |
Set to use GCC's stack unwinder (instead of LLVM's libunwind).
This is a default setting on arm/arm, arm/armv6, arm/armv7, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64. |
WITH_LLVM_LIBUNWIND |
Set to use LLVM's libunwind stack unwinder (instead of GCC's unwinder).
This is a default setting on amd64/amd64, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf. |
WITHOUT_LLVM_TARGET_AARCH64 |
Set to not build LLVM target support for AArch64.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on arm/arm. |
WITH_LLVM_TARGET_AARCH64 |
Set to build LLVM target support for AArch64.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITHOUT_LLVM_TARGET_ALL |
Set to only build the required LLVM target support.
This option is preferred to specific target support options.
When set, these options are also in effect:
|
WITHOUT_LLVM_TARGET_AARCH64 | (unless WITH_LLVM_TARGET_AARCH64 is set explicitly) |
WITHOUT_LLVM_TARGET_ARM | (unless WITH_LLVM_TARGET_ARM is set explicitly) |
WITHOUT_LLVM_TARGET_MIPS | (unless WITH_LLVM_TARGET_MIPS is set explicitly) |
WITHOUT_LLVM_TARGET_POWERPC | (unless WITH_LLVM_TARGET_POWERPC is set explicitly) |
WITHOUT_LLVM_TARGET_RISCV | (unless WITH_LLVM_TARGET_RISCV is set explicitly) |
WITHOUT_LLVM_TARGET_SPARC | (unless WITH_LLVM_TARGET_SPARC is set explicitly) |
WITHOUT_LLVM_TARGET_ARM | Set to not build LLVM target support for ARM. The LLVM_TARGET_ALL option should be used rather than this in most cases. |
WITH_LLVM_TARGET_BPF | Set to build LLVM target support for BPF. The LLVM_TARGET_ALL option should be used rather than this in most cases. |
WITHOUT_LLVM_TARGET_MIPS |
Set to not build LLVM target support for MIPS.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on arm/arm. |
WITH_LLVM_TARGET_MIPS |
Set to build LLVM target support for MIPS.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITHOUT_LLVM_TARGET_POWERPC |
Set to not build LLVM target support for PowerPC.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on arm/arm. |
WITH_LLVM_TARGET_POWERPC |
Set to build LLVM target support for PowerPC.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITHOUT_LLVM_TARGET_RISCV |
Set to not build LLVM target support for RISC-V.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on arm/arm. |
WITH_LLVM_TARGET_RISCV |
Set to build LLVM target support for RISC-V.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITHOUT_LLVM_TARGET_SPARC |
Set to not build LLVM target support for SPARC.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on arm/arm. |
WITH_LLVM_TARGET_SPARC |
Set to build LLVM target support for SPARC.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITHOUT_LLVM_TARGET_X86 |
Set to not build LLVM target support for X86.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on arm/arm. |
WITH_LLVM_TARGET_X86 |
Set to build LLVM target support for X86.
The
LLVM_TARGET_ALL
option should be used rather than this in most cases.
This is a default setting on amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITH_LOADER_EFI_SECUREBOOT |
Enable building
loader(8)
with support for verification based on certificates obtained from UEFI.
|
WITH_LOADER_FIREWIRE | Enable firewire support in /boot/loader on x86. This option is a nop on all other platforms. |
WITH_LOADER_FORCE_LE | Set to force the powerpc boot loader to launch the kernel in little endian mode. |
WITHOUT_LOADER_GELI |
Disable inclusion of GELI crypto support in the boot chain binaries.
This is a default setting on powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64. |
WITH_LOADER_GELI |
Set to build GELI bootloader support.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf. |
WITHOUT_LOADER_LUA |
Set to not build LUA bindings for the boot loader.
This is a default setting on powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64. |
WITH_LOADER_LUA |
Set to build LUA bindings for the boot loader.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf. |
WITHOUT_LOADER_OFW |
Disable building of openfirmware bootloader components.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf. |
WITH_LOADER_OFW |
Set to build openfirmware bootloader components.
This is a default setting on powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64. |
WITHOUT_LOADER_UBOOT |
Disable building of ubldr.
This is a default setting on amd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITH_LOADER_UBOOT |
Set to build ubldr.
This is a default setting on arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe. |
WITH_LOADER_VERIEXEC |
Enable building
loader(8)
with support for verification similar to Verified Exec.
Depends on WITH_BEARSSL. When set, these options are also in effect:
|
WITH_LOADER_EFI_SECUREBOOT | (unless WITHOUT_LOADER_EFI_SECUREBOOT is set explicitly) |
WITH_LOADER_VERIEXEC_VECTX | (unless WITHOUT_LOADER_VERIEXEC_VECTX is set explicitly) |
WITH_LOADER_VERIEXEC_PASS_MANIFEST |
Enable building
loader(8)
with support to pass a verified manifest to the kernel.
The kernel has to be built with a module to parse the manifest.
Depends on WITH_LOADER_VERIEXEC. |
WITHOUT_LOADER_ZFS | Set to not build ZFS file system boot loader support. |
WITHOUT_LOCALES | Set to not build localization files; see locale(1). |
WITHOUT_LOCATE | Set to not build locate(1) and related programs. |
WITHOUT_LPR | Set to not build lpr(1) and related programs. |
WITHOUT_LS_COLORS | Set to build ls(1) without support for colors to distinguish file types. |
WITHOUT_LZMA_SUPPORT | Set to build some programs without optional lzma compression support. |
WITHOUT_MAIL |
Set to not build any mail support (MUA or MTA).
When set, it enforces these options:
|
WITHOUT_DMAGENT | |
WITHOUT_MAILWRAPPER | |
WITHOUT_SENDMAIL | |
WITHOUT_MAILWRAPPER | Set to not build the mailwrapper(8) MTA selector. |
WITHOUT_MAKE | Set to not install make(1) and related support files. |
WITHOUT_MAKE_CHECK_USE_SANDBOX | Set to not execute "make check" in limited sandbox mode. This option should be paired with WITH_INSTALL_AS_USER if executed as an unprivileged user. See tests(7) for more details. |
WITHOUT_MALLOC_PRODUCTION | Set to enable assertions and statistics gathering in malloc(3). It also defaults the A and J runtime options to on. |
WITHOUT_MAN |
Set to not build manual pages.
When set, these options are also in effect:
|
WITHOUT_MAN_UTILS | (unless WITH_MAN_UTILS is set explicitly) |
WITHOUT_MANCOMPRESS | Set to not to install compressed man pages. Only the uncompressed versions will be installed. |
WITHOUT_MAN_UTILS | Set to not build utilities for manual pages, apropos(1), makewhatis(1), man(1), whatis(1), manctl(8), and related support files. |
WITH_META_MODE |
Create
make(1)
meta files when building, which can provide a reliable incremental build when
using
filemon(4).
The meta file is created in OBJDIR as
target.meta.
These meta files track the command that was executed, its output, and the
current directory.
The
filemon(4)
module is required unless
NO_FILEMON
is defined.
When the module is loaded, any files used by the commands executed are
tracked as dependencies for the target in its meta file.
The target is considered out-of-date and rebuilt if any of these
conditions are true compared to the last build:
The build hides commands that are executed unless NO_SILENT is defined. Errors cause make(1) to show some of its environment for further debugging. The build operates as it normally would otherwise. This option originally invoked a different build system but that was renamed to WITH_DIRDEPS_BUILD. This must be set in the environment, make command line, or /etc/src-env.conf, not /etc/src.conf. |
WITHOUT_MLX5TOOL |
Set to not build
mlx5tool(8)
This is a default setting on arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf. |
WITH_MLX5TOOL |
Set to build
mlx5tool(8)
This is a default setting on amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and sparc64/sparc64. |
WITHOUT_MODULE_DRM |
Disable creation of old drm video modules.
|
WITHOUT_MODULE_DRM2 | Disable creation of old drm2 video modules. |
WITH_NAND | Set to build the NAND Flash components. |
WITHOUT_NDIS | Set to not build programs and libraries related to NDIS emulation support. |
WITHOUT_NETCAT | Set to not build nc(1) utility. |
WITHOUT_NETGRAPH |
Set to not build applications to support
netgraph(4).
When set, it enforces these options:
|
WITHOUT_ATM | |
WITHOUT_BLUETOOTH | |
When set, these options are also in effect:
WITHOUT_NETGRAPH_SUPPORT | (unless WITH_NETGRAPH_SUPPORT is set explicitly) |
WITHOUT_NETGRAPH_SUPPORT | Set to build libraries, programs, and kernel modules without netgraph support. |
WITHOUT_NIS | Set to not build NIS(8) support and related programs. If set, you might need to adopt your nsswitch.conf(5) and remove 'nis' entries. |
WITHOUT_NLS |
Set to not build NLS catalogs.
When set, it enforces these options:
|
WITHOUT_NLS_CATALOGS | |
WITHOUT_NLS_CATALOGS | Set to not build NLS catalog support for csh(1). |
WITHOUT_NS_CACHING | Set to disable name caching in the nsswitch subsystem. The generic caching daemon, nscd(8), will not be built either if this option is set. |
WITHOUT_NTP | Set to not build ntpd(8) and related programs. |
WITHOUT_NVME |
Set to not build nvme related tools and kernel modules.
This is a default setting on arm/arm, arm/armv6, arm/armv7, arm64/aarch64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITH_NVME |
Set to build nvme related tools and kernel modules.
This is a default setting on amd64/amd64, i386/i386 and powerpc/powerpc64. |
WITH_OFED | Set to build the "OpenFabrics Enterprise Distribution" Infiniband software stack. |
WITH_OFED_EXTRA | Set to build the non-essential components of the "OpenFabrics Enterprise Distribution" Infiniband software stack, mostly examples. |
WITH_OPENLDAP | Enable building openldap support for kerberos. |
WITHOUT_OPENMP |
Set to not build LLVM's OpenMP runtime.
This is a default setting on arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITH_OPENMP |
Set to build LLVM's OpenMP runtime.
This is a default setting on amd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64. |
WITHOUT_OPENSSH | Set to not build OpenSSH. |
WITHOUT_OPENSSL |
Set to not build OpenSSL.
When set, it enforces these options:
|
WITHOUT_DMAGENT | |
WITHOUT_KERBEROS | |
WITHOUT_KERBEROS_SUPPORT | |
WITHOUT_LDNS | |
WITHOUT_LDNS_UTILS | |
WITHOUT_OPENSSH | |
WITHOUT_PKGBOOTSTRAP | |
WITHOUT_SVN | |
WITHOUT_SVNLITE | |
WITHOUT_UNBOUND | |
WITHOUT_WIRELESS | |
When set, these options are also in effect:
WITHOUT_GSSAPI | (unless WITH_GSSAPI is set explicitly) |
WITHOUT_PAM |
Set to not build PAM library and modules.
This option is deprecated and does nothing.
When set, these options are also in effect:
|
WITHOUT_PAM_SUPPORT | (unless WITH_PAM_SUPPORT is set explicitly) |
WITHOUT_PAM_SUPPORT | Set to build some programs without PAM support, particularly ftpd(8) and ppp(8). |
WITHOUT_PC_SYSINSTALL | Set to not build pc-sysinstall(8) and related programs. |
WITHOUT_PF |
Set to not build PF firewall package.
When set, it enforces these options:
|
WITHOUT_AUTHPF | |
WITH_PIE | Build dynamically linked binaries as Position-Independent Executable (PIE). |
WITHOUT_PKGBOOTSTRAP | Set to not build pkg(7) bootstrap tool. |
WITHOUT_PMC | Set to not build pmccontrol(8) and related programs. |
WITHOUT_PORTSNAP | Set to not build or install portsnap(8) and related files. |
WITHOUT_PPP | Set to not build ppp(8) and related programs. |
WITHOUT_PROFILE |
Set to not build profiled libraries for use with
gprof(8).
This is a default setting on mips/mips64el, mips/mips64, mips/mips64elhf and mips/mips64hf. |
WITH_PROFILE |
Set to build profiled libraries for use with
gprof(8).
This option is deprecated and is not present in
FreeBSD 14 .
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mipsn32, mips/mipselhf, mips/mipshf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITHOUT_QUOTAS | Set to not build quota(1) and related programs. |
WITHOUT_RADIUS_SUPPORT | Set to not build radius support into various applications, like pam_radius(8) and ppp(8). |
WITH_RATELIMIT |
Set to build the system with rate limit support.
This makes SO_MAX_PACING_RATE effective in getsockopt(2), and txrlimit support in ifconfig(8), by proxy. |
WITHOUT_RBOOTD | Set to not build or install rbootd(8). |
WITHOUT_REPRODUCIBLE_BUILD | Set to include build metadata (such as the build time, user, and host) in the kernel, boot loaders, and uname output. Successive builds will not be bit-for-bit identical. |
WITHOUT_RESCUE | Set to not build rescue(8). |
WITH_RETPOLINE | Set to build the base system with the retpoline speculative execution vulnerability mitigation for CVE-2017-5715. |
WITHOUT_ROUTED | Set to not build routed(8) utility. |
WITH_RPCBIND_WARMSTART_SUPPORT | Set to build rpcbind(8) with warmstart support. |
WITHOUT_SENDMAIL | Set to not build sendmail(8) and related programs. |
WITHOUT_SERVICESDB | Set to not install /var/db/services.db. |
WITHOUT_SETUID_LOGIN | Set this to disable the installation of login(1) as a set-user-ID root program. |
WITHOUT_SHAREDOCS | Set to not build the BSD 4.4 legacy docs. |
WITH_SHARED_TOOLCHAIN | Set to build the toolchain binaries as dynamically linked executables. The set includes cc(1), make(1) and necessary utilities like assembler, linker and library archive manager. |
WITH_SORT_THREADS | Set to enable threads in sort(1). |
WITHOUT_SOURCELESS |
Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
When set, it enforces these options:
|
WITHOUT_SOURCELESS_HOST | |
WITHOUT_SOURCELESS_UCODE | |
WITHOUT_SOURCELESS_HOST | Set to not build kernel modules that include sourceless native code for host CPU. |
WITHOUT_SOURCELESS_UCODE | Set to not build kernel modules that include sourceless microcode. |
WITHOUT_SSP |
Set to not build world with propolice stack smashing protection.
This is a default setting on mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf. |
WITH_SSP |
Set to build world with propolice stack smashing protection.
This is a default setting on amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. |
WITH_STAGING |
Enable staging of files to a stage tree.
This can be best thought of as auto-install to
DESTDIR
with some extra meta data to ensure dependencies can be tracked.
Depends on
WITH_DIRDEPS_BUILD.
When set, these options are also in effect:
|
WITH_STAGING_MAN | (unless WITHOUT_STAGING_MAN is set explicitly) |
WITH_STAGING_PROG | (unless WITHOUT_STAGING_PROG is set explicitly) |
This must be set in the environment, make command line, or /etc/src-env.conf, not /etc/src.conf.
WITH_STAGING_MAN | Enable staging of man pages to stage tree. |
WITH_STAGING_PROG | Enable staging of PROGs to stage tree. |
WITH_STALE_STAGED | Check staged files are not stale. |
WITH_SVN | Set to install svnlite(1) as svn(1). |
WITHOUT_SVNLITE | Set to not build svnlite(1) and related programs. |
WITHOUT_SYMVER | Set to disable symbol versioning when building shared libraries. |
WITHOUT_SYSCONS | Set to not build syscons(4) support files such as keyboard maps, fonts, and screen output maps. |
WITH_SYSROOT |
Enable use of sysroot during build.
Depends on
WITH_DIRDEPS_BUILD.
This must be set in the environment, make command line, or /etc/src-env.conf, not /etc/src.conf. |
WITHOUT_SYSTEM_COMPILER | Set to not opportunistically skip building a cross-compiler during the bootstrap phase of the build. Normally, if the currently installed compiler matches the planned bootstrap compiler type and revision, then it will not be built. This does not prevent a compiler from being built for installation though, only for building one for the build itself. The WITHOUT_CLANG and WITHOUT_GCC options control those. |
WITHOUT_SYSTEM_LINKER |
Set to not opportunistically skip building a cross-linker during the
bootstrap phase of the build.
Normally, if the currently installed linker matches the planned bootstrap
linker type and revision, then it will not be built.
This does not prevent a linker from being built for installation though,
only for building one for the build itself.
The
WITHOUT_LLD
and
WITHOUT_BINUTILS
options control those.
This option is only relevant when WITH_LLD_BOOTSTRAP is set. |
WITHOUT_TALK | Set to not build or install talk(1) and talkd(8). |
WITHOUT_TCP_WRAPPERS | Set to not build or install tcpd(8), and related utilities. |
WITHOUT_TCSH | Set to not build and install /bin/csh (which is tcsh(1)). |
WITHOUT_TELNET | Set to not build telnet(1) and related programs. |
WITHOUT_TESTS |
Set to not build nor install the
FreeBSD
Test Suite in
/usr/tests/.
See
tests(7)
for more details.
This also disables the build of all test-related dependencies, including ATF.
When set, it enforces these options:
|
WITHOUT_DTRACE_TESTS | |
When set, these options are also in effect:
WITHOUT_GOOGLETEST | (unless WITH_GOOGLETEST is set explicitly) |
WITHOUT_TESTS_SUPPORT | (unless WITH_TESTS_SUPPORT is set explicitly) |
WITHOUT_TESTS_SUPPORT |
Set to disables the build of all test-related dependencies, including ATF.
When set, it enforces these options:
|
WITHOUT_GOOGLETEST | |
WITHOUT_TEXTPROC | Set to not build programs used for text processing. |
WITHOUT_TFTP | Set to not build or install tftp(1) and tftpd(8). |
WITHOUT_TIMED | Set to not build or install timed(8). |
WITHOUT_TOOLCHAIN |
Set to not install header or
programs used for program development,
compilers, debuggers etc.
When set, it enforces these options:
|
WITHOUT_BINUTILS | |
WITHOUT_CLANG | |
WITHOUT_CLANG_EXTRAS | |
WITHOUT_CLANG_FORMAT | |
WITHOUT_CLANG_FULL | |
WITHOUT_GCC | |
WITHOUT_GDB | |
WITHOUT_INCLUDES | |
WITHOUT_LLD | |
WITHOUT_LLDB | |
WITHOUT_LLVM_COV | |
WITHOUT_UNBOUND | Set to not build unbound(8) and related programs. |
WITHOUT_UNIFIED_OBJDIR |
Set to use the historical object directory format for
build(7)
targets.
For native-builds and builds done directly in sub-directories the format of
${MAKEOBJDIRPREFIX}/${.CURDIR}
is used,
while for cross-builds
${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR}
is used.
This option is transitional and will be removed before the 12.0 release, at which time will be enabled permanently. This must be set in the environment, make command line, or /etc/src-env.conf, not /etc/src.conf. |
WITHOUT_USB | Set to not build USB-related programs and libraries. |
WITHOUT_USB_GADGET_EXAMPLES | Set to not build USB gadget kernel modules. |
WITHOUT_UTMPX | Set to not build user accounting tools such as last(1), users(1), who(1), ac(8), lastlogin(8) and utx(8). |
WITH_VERIEXEC |
Enable building
veriexec(8)
which loads the contents of verified manifests into the kernel
for use by
mac_veriexec(4)
Depends on WITH_BEARSSL. |
WITHOUT_VI | Set to not build and install vi, view, ex and related programs. |
WITHOUT_VT | Set to not build vt(4) support files (fonts and keymaps). |
WITHOUT_WARNS | Set this to not add warning flags to the compiler invocations. Useful as a temporary workaround when code enters the tree which triggers warnings in environments that differ from the original developer. |
WITHOUT_WIRELESS |
Set to not build programs used for 802.11 wireless networks; especially
wpa_supplicant(8)
and
hostapd(8).
When set, these options are also in effect:
|
WITHOUT_WIRELESS_SUPPORT | (unless WITH_WIRELESS_SUPPORT is set explicitly) |
WITHOUT_WIRELESS_SUPPORT | Set to build libraries, programs, and kernel modules without 802.11 wireless support. |
WITHOUT_WPA_SUPPLICANT_EAPOL | Build wpa_supplicant(8) without support for the IEEE 802.1X protocol and without support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS protocols (usable only via 802.1X). |
WITHOUT_ZFS | Set to not build ZFS file system kernel module, libraries, and user commands. |
WITHOUT_ZONEINFO |
Set to not build the timezone database.
When set, it enforces these options:
|
WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT | |
WITH_ZONEINFO_LEAPSECONDS_SUPPORT | Set to build leapsecond information in to the timezone database. |
/etc/src.conf
/etc/src-env.conf /usr/share/mk/bsd.own.mk | |
SRC.CONF (5) | June 28, 2021 |
Main index | Section 5 | Options |
Please direct any comments about this manual page service to Ben Bullock. Privacy policy.
“ | There are 10 types of people in the world: those who understand binary, and those who don't. | ” |