xref: /freebsd/share/man/man5/src.conf.5 (revision de19b521ee22ff831650d9a9f96596511336ce0c)
1b1a0e564SEitan Adler.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman.
2fa07cb9cSRuslan Ermilov.\" $FreeBSD$
3*de19b521SDimitry Andric.Dd October 23, 2019
4fa07cb9cSRuslan Ermilov.Dt SRC.CONF 5
5fa07cb9cSRuslan Ermilov.Os
6fa07cb9cSRuslan Ermilov.Sh NAME
7fa07cb9cSRuslan Ermilov.Nm src.conf
816f2e711SYaroslav Tykhiy.Nd "source build options"
9fa07cb9cSRuslan Ermilov.Sh DESCRIPTION
10fa07cb9cSRuslan ErmilovThe
11fa07cb9cSRuslan Ermilov.Nm
12fa07cb9cSRuslan Ermilovfile contains settings that will apply to every build involving the
13fa07cb9cSRuslan Ermilov.Fx
14fa07cb9cSRuslan Ermilovsource tree; see
15fa07cb9cSRuslan Ermilov.Xr build 7 .
16fa07cb9cSRuslan Ermilov.Pp
17fa07cb9cSRuslan ErmilovThe
18fa07cb9cSRuslan Ermilov.Nm
19fa07cb9cSRuslan Ermilovfile uses the standard makefile syntax.
20fa07cb9cSRuslan ErmilovHowever,
21fa07cb9cSRuslan Ermilov.Nm
22fa07cb9cSRuslan Ermilovshould not specify any dependencies to
23fa07cb9cSRuslan Ermilov.Xr make 1 .
24fa07cb9cSRuslan ErmilovInstead,
25fa07cb9cSRuslan Ermilov.Nm
26fa07cb9cSRuslan Ermilovis to set
27fa07cb9cSRuslan Ermilov.Xr make 1
28fa07cb9cSRuslan Ermilovvariables that control the aspects of how the system builds.
29fa07cb9cSRuslan Ermilov.Pp
30fa07cb9cSRuslan ErmilovThe default location of
31fa07cb9cSRuslan Ermilov.Nm
32fa07cb9cSRuslan Ermilovis
33fa07cb9cSRuslan Ermilov.Pa /etc/src.conf ,
34fa07cb9cSRuslan Ermilovthough an alternative location can be specified in the
35fa07cb9cSRuslan Ermilov.Xr make 1
36fa07cb9cSRuslan Ermilovvariable
37fa07cb9cSRuslan Ermilov.Va SRCCONF .
38fa07cb9cSRuslan ErmilovOverriding the location of
39fa07cb9cSRuslan Ermilov.Nm
40fa07cb9cSRuslan Ermilovmay be necessary if the system-wide settings are not suitable
41fa07cb9cSRuslan Ermilovfor a particular build.
42fa07cb9cSRuslan ErmilovFor instance, setting
43fa07cb9cSRuslan Ermilov.Va SRCCONF
44fa07cb9cSRuslan Ermilovto
45fa07cb9cSRuslan Ermilov.Pa /dev/null
46fa07cb9cSRuslan Ermiloveffectively resets all build controls to their defaults.
47fa07cb9cSRuslan Ermilov.Pp
48fa07cb9cSRuslan ErmilovThe only purpose of
49fa07cb9cSRuslan Ermilov.Nm
50fa07cb9cSRuslan Ermilovis to control the compilation of the
51fa07cb9cSRuslan Ermilov.Fx
5216f2e711SYaroslav Tykhiysource code, which is usually located in
53fa07cb9cSRuslan Ermilov.Pa /usr/src .
54fa07cb9cSRuslan ErmilovAs a rule, the system administrator creates
55fa07cb9cSRuslan Ermilov.Nm
56fa07cb9cSRuslan Ermilovwhen the values of certain control variables need to be changed
57fa07cb9cSRuslan Ermilovfrom their defaults.
58fa07cb9cSRuslan Ermilov.Pp
59fa07cb9cSRuslan ErmilovIn addition, control variables can be specified
60fa07cb9cSRuslan Ermilovfor a particular build via the
61fa07cb9cSRuslan Ermilov.Fl D
62fa07cb9cSRuslan Ermilovoption of
63fa07cb9cSRuslan Ermilov.Xr make 1
6472735687SMike Makonnenor in its environment; see
65fa07cb9cSRuslan Ermilov.Xr environ 7 .
66fa07cb9cSRuslan Ermilov.Pp
670a70ef02SBryan DreweryThe environment of
680a70ef02SBryan Drewery.Xr make 1
690a70ef02SBryan Dreweryfor the build can be controlled via the
700a70ef02SBryan Drewery.Va SRC_ENV_CONF
710a70ef02SBryan Dreweryvariable, which defaults to
720a70ef02SBryan Drewery.Pa /etc/src-env.conf .
730a70ef02SBryan DrewerySome examples that may only be set in this file are
7432b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD ,
750a70ef02SBryan Dreweryand
76efb949a6SBryan Drewery.Va WITH_META_MODE ,
77efb949a6SBryan Dreweryand
787df4050dSBryan Drewery.Va MAKEOBJDIRPREFIX
79efb949a6SBryan Dreweryas they are environment-only variables.
800a70ef02SBryan Drewery.Pp
8116f2e711SYaroslav TykhiyThe values of variables are ignored regardless of their setting;
8216f2e711SYaroslav Tykhiyeven if they would be set to
83fa07cb9cSRuslan Ermilov.Dq Li FALSE
84fa07cb9cSRuslan Ermilovor
8516f2e711SYaroslav Tykhiy.Dq Li NO .
86344e2bb9SEd MasteThe presence of an option causes
87344e2bb9SEd Masteit to be honored by
8816f2e711SYaroslav Tykhiy.Xr make 1 .
89fa07cb9cSRuslan Ermilov.Pp
90344e2bb9SEd MasteThis list provides a name and short description for variables
91fa07cb9cSRuslan Ermilovthat can be used for source builds.
92fa07cb9cSRuslan Ermilov.Bl -tag -width indent
93aaa6d7ebSSam Leffler.It Va WITHOUT_ACCT
94aaa6d7ebSSam LefflerSet to not build process accounting tools such as
950ea27d02SEd Schouten.Xr accton 8
96aaa6d7ebSSam Lefflerand
970ea27d02SEd Schouten.Xr sa 8 .
98fa07cb9cSRuslan Ermilov.It Va WITHOUT_ACPI
99fa07cb9cSRuslan ErmilovSet to not build
100fa07cb9cSRuslan Ermilov.Xr acpiconf 8 ,
101fa07cb9cSRuslan Ermilov.Xr acpidump 8
102fa07cb9cSRuslan Ermilovand related programs.
103aaa6d7ebSSam Leffler.It Va WITHOUT_AMD
104aaa6d7ebSSam LefflerSet to not build
105aaa6d7ebSSam Leffler.Xr amd 8 ,
106aaa6d7ebSSam Lefflerand related programs.
107aaa6d7ebSSam Leffler.It Va WITHOUT_APM
108aaa6d7ebSSam LefflerSet to not build
109aaa6d7ebSSam Leffler.Xr apm 8 ,
110aaa6d7ebSSam Leffler.Xr apmd 8
111aaa6d7ebSSam Lefflerand related programs.
112e567b213SRuslan Ermilov.It Va WITHOUT_ASSERT_DEBUG
113e567b213SRuslan ErmilovSet to compile programs and libraries without the
114e567b213SRuslan Ermilov.Xr assert 3
115e567b213SRuslan Ermilovchecks.
116aaa6d7ebSSam Leffler.It Va WITHOUT_AT
117aaa6d7ebSSam LefflerSet to not build
118aaa6d7ebSSam Leffler.Xr at 1
119aaa6d7ebSSam Lefflerand related utilities.
120fa07cb9cSRuslan Ermilov.It Va WITHOUT_ATM
121fa07cb9cSRuslan ErmilovSet to not build
122fa07cb9cSRuslan Ermilovprograms and libraries related to ATM networking.
123fa07cb9cSRuslan Ermilov.It Va WITHOUT_AUDIT
124fa07cb9cSRuslan ErmilovSet to not build audit support into system programs.
125fa07cb9cSRuslan Ermilov.It Va WITHOUT_AUTHPF
126fa07cb9cSRuslan ErmilovSet to not build
127fa07cb9cSRuslan Ermilov.Xr authpf 8 .
12861940879SEnji Cooper.It Va WITHOUT_AUTOFS
12961940879SEnji CooperSet to not build
1304b9f77e4SEdward Tomasz Napierala.Xr autofs 5
13161940879SEnji Cooperrelated programs, libraries, and kernel modules.
132906a1c6cSBryan Drewery.It Va WITHOUT_AUTO_OBJ
133906a1c6cSBryan DreweryDisable automatic creation of objdirs.
134906a1c6cSBryan DreweryThis is enabled by default if the wanted OBJDIR is writable by the current user.
1350a70ef02SBryan Drewery.Pp
136ba852870SBryan DreweryThis must be set in the environment, make command line, or
1370a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
1380a70ef02SBryan Drewerynot
1390a70ef02SBryan Drewery.Pa /etc/src.conf .
140bfdf8aa9SJohn Baldwin.It Va WITH_BEARSSL
141bfdf8aa9SJohn BaldwinBuild the BearSSL library.
142bfdf8aa9SJohn Baldwin.Pp
143bfdf8aa9SJohn BaldwinBearSSL is a tiny SSL library suitable for embedded environments.
144bfdf8aa9SJohn BaldwinFor details see
145bfdf8aa9SJohn Baldwin.Lk http://www.BearSSL.org/
146bfdf8aa9SJohn Baldwin.Pp
147bfdf8aa9SJohn BaldwinThis library is currently only used to perform
148bfdf8aa9SJohn Baldwinsignature verification and related operations
149bfdf8aa9SJohn Baldwinfor Verified Exec and
150bfdf8aa9SJohn Baldwin.Xr loader 8 .
151bfdf8aa9SJohn BaldwinWhen set, these options are also in effect:
152bfdf8aa9SJohn Baldwin.Pp
153bfdf8aa9SJohn Baldwin.Bl -inset -compact
154bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT
155bfdf8aa9SJohn Baldwin(unless
156bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_EFI_SECUREBOOT
157bfdf8aa9SJohn Baldwinis set explicitly)
158bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_VERIEXEC
159bfdf8aa9SJohn Baldwin(unless
160bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_VERIEXEC
161bfdf8aa9SJohn Baldwinis set explicitly)
162bfdf8aa9SJohn Baldwin.It Va WITH_VERIEXEC
163bfdf8aa9SJohn Baldwin(unless
164bfdf8aa9SJohn Baldwin.Va WITHOUT_VERIEXEC
165bfdf8aa9SJohn Baldwinis set explicitly)
166bfdf8aa9SJohn Baldwin.El
16761940879SEnji Cooper.It Va WITHOUT_BHYVE
16861940879SEnji CooperSet to not build or install
16961940879SEnji Cooper.Xr bhyve 8 ,
17061940879SEnji Cooperassociated utilities, and examples.
17161940879SEnji Cooper.Pp
17261940879SEnji CooperThis option only affects amd64/amd64.
1731f3b049dSEd Maste.It Va WITH_BIND_NOW
1741f3b049dSEd MasteBuild all binaries with the
1751f3b049dSEd Maste.Dv DF_BIND_NOW
1761f3b049dSEd Masteflag set to indicate that the run-time loader should perform all relocation
1771f3b049dSEd Masteprocessing at process startup rather than on demand.
17890be798eSDimitry Andric.It Va WITHOUT_BINUTILS
1790179c835SEd MasteSet to not build or install GNU
1800179c835SEd Maste.Xr as 1 ,
1810179c835SEd Maste.Xr objdump 1 ,
1820179c835SEd Masteand for some CPU architectures
1830179c835SEd Maste.Xr ld.bfd 1
1840179c835SEd Masteas part
18590be798eSDimitry Andricof the normal system build.
18690be798eSDimitry AndricThe resulting system cannot build programs from source.
1875be09b10SEd Maste.Pp
188344e2bb9SEd MasteThis is a default setting on
1898ccac680SEd Mastearm64/aarch64 and riscv/riscv64.
1905977355fSBryan Drewery.It Va WITH_BINUTILS
1910179c835SEd MasteSet to build and install GNU
1920179c835SEd Maste.Xr as 1 ,
1930179c835SEd Maste.Xr objdump 1 ,
1940179c835SEd Masteand for some CPU architectures
1950179c835SEd Maste.Xr ld.bfd 1
1960179c835SEd Masteas part
1975977355fSBryan Dreweryof the normal system build.
1985977355fSBryan Drewery.Pp
199344e2bb9SEd MasteThis is a default setting on
200*de19b521SDimitry Andricamd64/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 and sparc64/sparc64.
20190be798eSDimitry Andric.It Va WITHOUT_BINUTILS_BOOTSTRAP
202e2d98a24SEd MasteSet to not build binutils (as, ld, and objdump)
20390be798eSDimitry Andricas part of the bootstrap process.
20490be798eSDimitry Andric.Bf -symbolic
20590be798eSDimitry AndricThe option does not work for build targets unless some alternative
20690be798eSDimitry Andrictoolchain is provided.
20790be798eSDimitry Andric.Ef
2085be09b10SEd Maste.Pp
209344e2bb9SEd MasteThis is a default setting on
2108ccac680SEd Mastearm64/aarch64 and riscv/riscv64.
2115977355fSBryan Drewery.It Va WITH_BINUTILS_BOOTSTRAP
212e2d98a24SEd MasteSet build binutils (as, ld, and objdump)
2135977355fSBryan Dreweryas part of the bootstrap process.
2145977355fSBryan Drewery.Pp
215344e2bb9SEd MasteThis is a default setting on
216*de19b521SDimitry Andricamd64/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 and sparc64/sparc64.
2170341a043SBryan Drewery.It Va WITHOUT_BLACKLIST
2184650b8aeSEnji CooperSet this if you do not want to build
2194650b8aeSEnji Cooper.Xr blacklistd 8
2204650b8aeSEnji Cooperand
2214650b8aeSEnji Cooper.Xr blacklistctl 8 .
222bf64e879SBryan DreweryWhen set, these options are also in effect:
2230341a043SBryan Drewery.Pp
224bf64e879SBryan Drewery.Bl -inset -compact
225bf64e879SBryan Drewery.It Va WITHOUT_BLACKLIST_SUPPORT
226bf64e879SBryan Drewery(unless
227bf64e879SBryan Drewery.Va WITH_BLACKLIST_SUPPORT
228bf64e879SBryan Dreweryis set explicitly)
2290341a043SBryan Drewery.El
2300341a043SBryan Drewery.It Va WITHOUT_BLACKLIST_SUPPORT
2314650b8aeSEnji CooperSet to build some programs without
2324650b8aeSEnji Cooper.Xr libblacklist 3
2334650b8aeSEnji Coopersupport, like
2340341a043SBryan Drewery.Xr fingerd 8 ,
2350341a043SBryan Drewery.Xr ftpd 8 ,
2360341a043SBryan Dreweryand
2370341a043SBryan Drewery.Xr sshd 8 .
23890be798eSDimitry Andric.It Va WITHOUT_BLUETOOTH
23990be798eSDimitry AndricSet to not build Bluetooth related kernel modules, programs and libraries.
24090be798eSDimitry Andric.It Va WITHOUT_BOOT
24190be798eSDimitry AndricSet to not build the boot blocks and loader.
2420e0e9604SEnji Cooper.It Va WITHOUT_BOOTPARAMD
2430e0e9604SEnji CooperSet to not build or install
2440e0e9604SEnji Cooper.Xr bootparamd 8 .
2450e0e9604SEnji Cooper.It Va WITHOUT_BOOTPD
2460e0e9604SEnji CooperSet to not build or install
2470e0e9604SEnji Cooper.Xr bootpd 8 .
24893da8366SEnji Cooper.It Va WITHOUT_BSDINSTALL
24993da8366SEnji CooperSet to not build
25093da8366SEnji Cooper.Xr bsdinstall 8 ,
25193da8366SEnji Cooper.Xr sade 8 ,
25293da8366SEnji Cooperand related programs.
25390be798eSDimitry Andric.It Va WITHOUT_BSD_CPIO
25490be798eSDimitry AndricSet to not build the BSD licensed version of cpio based on
25590be798eSDimitry Andric.Xr libarchive 3 .
2560179c835SEd Maste.It Va WITHOUT_BSD_CRTBEGIN
2570179c835SEd MasteDisable the BSD licensed
25882a0f53dSAndrew Turner.Pa crtbegin.o
25982a0f53dSAndrew Turnerand
26082a0f53dSAndrew Turner.Pa crtend.o .
26153fc043dSGeorge V. Neville-Neil.Pp
26253fc043dSGeorge V. Neville-NeilThis is a default setting on
2633a26da0bSEd Mastesparc64/sparc64.
26453fc043dSGeorge V. Neville-Neil.It Va WITH_BSD_CRTBEGIN
26553fc043dSGeorge V. Neville-NeilEnable the BSD licensed
26653fc043dSGeorge V. Neville-Neil.Pa crtbegin.o
26753fc043dSGeorge V. Neville-Neiland
26853fc043dSGeorge V. Neville-Neil.Pa crtend.o .
26953fc043dSGeorge V. Neville-Neil.Pp
27053fc043dSGeorge V. Neville-NeilThis is a default setting on
271*de19b521SDimitry Andricamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
27290be798eSDimitry Andric.It Va WITH_BSD_GREP
27390be798eSDimitry AndricInstall BSD-licensed grep as '[ef]grep' instead of GNU grep.
27490be798eSDimitry Andric.It Va WITHOUT_BSNMP
27590be798eSDimitry AndricSet to not build or install
27690be798eSDimitry Andric.Xr bsnmpd 1
27790be798eSDimitry Andricand related libraries and data files.
27890be798eSDimitry Andric.It Va WITHOUT_BZIP2
27990be798eSDimitry AndricSet to not build contributed bzip2 software as a part of the base system.
28090be798eSDimitry Andric.Bf -symbolic
28190be798eSDimitry AndricThe option has no effect yet.
28290be798eSDimitry Andric.Ef
283bf64e879SBryan DreweryWhen set, these options are also in effect:
28490be798eSDimitry Andric.Pp
285bf64e879SBryan Drewery.Bl -inset -compact
286bf64e879SBryan Drewery.It Va WITHOUT_BZIP2_SUPPORT
287bf64e879SBryan Drewery(unless
288bf64e879SBryan Drewery.Va WITH_BZIP2_SUPPORT
289bf64e879SBryan Dreweryis set explicitly)
29090be798eSDimitry Andric.El
29190be798eSDimitry Andric.It Va WITHOUT_BZIP2_SUPPORT
29290be798eSDimitry AndricSet to build some programs without optional bzip2 support.
29390be798eSDimitry Andric.It Va WITHOUT_CALENDAR
29490be798eSDimitry AndricSet to not build
29590be798eSDimitry Andric.Xr calendar 1 .
29690be798eSDimitry Andric.It Va WITHOUT_CAPSICUM
29790be798eSDimitry AndricSet to not build Capsicum support into system programs.
298344e2bb9SEd MasteWhen set, it enforces these options:
299aced6942SBaptiste Daroussin.Pp
300aced6942SBaptiste Daroussin.Bl -item -compact
301aced6942SBaptiste Daroussin.It
302aced6942SBaptiste Daroussin.Va WITHOUT_CASPER
303aced6942SBaptiste Daroussin.El
304*de19b521SDimitry Andric.It Va WITHOUT_CAROOT
305*de19b521SDimitry AndricSet to not add the trusted certificates from the Mozilla NSS bundle to
306*de19b521SDimitry Andricbase.
30790be798eSDimitry Andric.It Va WITHOUT_CASPER
30890be798eSDimitry AndricSet to not build Casper program and related libraries.
3091c01e4f8SBryan Drewery.It Va WITH_CCACHE_BUILD
3101c01e4f8SBryan DrewerySet to use
3111c01e4f8SBryan Drewery.Xr ccache 1
3121c01e4f8SBryan Dreweryfor the build.
3131c01e4f8SBryan DreweryNo configuration is required except to install the
3141c01e4f8SBryan Drewery.Sy devel/ccache
3151c01e4f8SBryan Drewerypackage.
316344e2bb9SEd MasteWhen using with
317344e2bb9SEd Maste.Xr distcc 1 ,
318344e2bb9SEd Masteset
3191c01e4f8SBryan Drewery.Sy CCACHE_PREFIX=/usr/local/bin/distcc .
3201c01e4f8SBryan DreweryThe default cache directory of
3211c01e4f8SBryan Drewery.Pa $HOME/.ccache
3221c01e4f8SBryan Drewerywill be used, which can be overridden by setting
3231c01e4f8SBryan Drewery.Sy CCACHE_DIR .
3241c01e4f8SBryan DreweryThe
3251c01e4f8SBryan Drewery.Sy CCACHE_COMPILERCHECK
3261c01e4f8SBryan Dreweryoption defaults to
3271c01e4f8SBryan Drewery.Sy content
3281c01e4f8SBryan Drewerywhen using the in-tree bootstrap compiler,
3291c01e4f8SBryan Dreweryand
3301c01e4f8SBryan Drewery.Sy mtime
3311c01e4f8SBryan Drewerywhen using an external compiler.
3321c01e4f8SBryan DreweryThe
3331c01e4f8SBryan Drewery.Sy CCACHE_CPP2
3341c01e4f8SBryan Dreweryoption is used for Clang but not GCC.
3351c01e4f8SBryan Drewery.Pp
3361c01e4f8SBryan DrewerySharing a cache between multiple work directories requires using a layout
3371c01e4f8SBryan Drewerysimilar to
3381c01e4f8SBryan Drewery.Pa /some/prefix/src
3391c01e4f8SBryan Drewery.Pa /some/prefix/obj
3401c01e4f8SBryan Dreweryand an environment such as:
3411c01e4f8SBryan Drewery.Bd -literal -offset indent
3421c01e4f8SBryan DreweryCCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj'
3431c01e4f8SBryan Drewery.Ed
3441c01e4f8SBryan Drewery.Pp
3451c01e4f8SBryan DrewerySee
3461c01e4f8SBryan Drewery.Xr ccache 1
3471c01e4f8SBryan Dreweryfor more configuration options.
34893da8366SEnji Cooper.It Va WITHOUT_CCD
34993da8366SEnji CooperSet to not build
35093da8366SEnji Cooper.Xr geom_ccd 4
35193da8366SEnji Cooperand related utilities.
35290be798eSDimitry Andric.It Va WITHOUT_CDDL
35390be798eSDimitry AndricSet to not build code licensed under Sun's CDDL.
354344e2bb9SEd MasteWhen set, it enforces these options:
35590be798eSDimitry Andric.Pp
35690be798eSDimitry Andric.Bl -item -compact
35790be798eSDimitry Andric.It
35890be798eSDimitry Andric.Va WITHOUT_CTF
35990be798eSDimitry Andric.It
3601f7d1483SEd Maste.Va WITHOUT_LOADER_ZFS
3611f7d1483SEd Maste.It
36290be798eSDimitry Andric.Va WITHOUT_ZFS
36390be798eSDimitry Andric.El
36490be798eSDimitry Andric.It Va WITHOUT_CLANG
36590be798eSDimitry AndricSet to not build the Clang C/C++ compiler during the regular phase of the build.
36690be798eSDimitry Andric.Pp
367344e2bb9SEd MasteThis is a default setting on
3688ccac680SEd Masteriscv/riscv64 and sparc64/sparc64.
369344e2bb9SEd MasteWhen set, it enforces these options:
37090be798eSDimitry Andric.Pp
37190be798eSDimitry Andric.Bl -item -compact
37290be798eSDimitry Andric.It
37390be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS
37490be798eSDimitry Andric.It
37590be798eSDimitry Andric.Va WITHOUT_CLANG_FULL
3765b9c3654SEd Maste.It
3775b9c3654SEd Maste.Va WITHOUT_LLVM_COV
37890be798eSDimitry Andric.El
379bf64e879SBryan Drewery.Pp
380bf64e879SBryan DreweryWhen set, these options are also in effect:
381bf64e879SBryan Drewery.Pp
382bf64e879SBryan Drewery.Bl -inset -compact
383bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_AARCH64
384bf64e879SBryan Drewery(unless
385bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_AARCH64
386bf64e879SBryan Dreweryis set explicitly)
387bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ALL
388bf64e879SBryan Drewery(unless
389bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_ALL
390bf64e879SBryan Dreweryis set explicitly)
391bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ARM
392bf64e879SBryan Drewery(unless
393bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_ARM
394bf64e879SBryan Dreweryis set explicitly)
395bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_MIPS
396bf64e879SBryan Drewery(unless
397bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_MIPS
398bf64e879SBryan Dreweryis set explicitly)
399bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_POWERPC
400bf64e879SBryan Drewery(unless
401bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_POWERPC
402bf64e879SBryan Dreweryis set explicitly)
403bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_SPARC
404bf64e879SBryan Drewery(unless
405bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_SPARC
406bf64e879SBryan Dreweryis set explicitly)
407bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_X86
408bf64e879SBryan Drewery(unless
409bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_X86
410bf64e879SBryan Dreweryis set explicitly)
411bf64e879SBryan Drewery.El
41290be798eSDimitry Andric.It Va WITH_CLANG
41390be798eSDimitry AndricSet to build the Clang C/C++ compiler during the normal phase of the build.
41490be798eSDimitry Andric.Pp
415344e2bb9SEd MasteThis is a default setting on
416*de19b521SDimitry Andricamd64/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 and mips/mips64hf.
41790be798eSDimitry Andric.It Va WITHOUT_CLANG_BOOTSTRAP
418344e2bb9SEd MasteSet to not build the Clang C/C++ compiler during the bootstrap phase of
419344e2bb9SEd Mastethe build.
420344e2bb9SEd MasteTo be able to build the system, either gcc or clang bootstrap must be
421344e2bb9SEd Masteenabled unless an alternate compiler is provided via XCC.
42290be798eSDimitry Andric.Pp
423344e2bb9SEd MasteThis is a default setting on
424*de19b521SDimitry Andricriscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
42590be798eSDimitry Andric.It Va WITH_CLANG_BOOTSTRAP
42690be798eSDimitry AndricSet to build the Clang C/C++ compiler during the bootstrap phase of the build.
42790be798eSDimitry Andric.Pp
428344e2bb9SEd MasteThis is a default setting on
429e8788097SKonstantin Belousovamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
43090be798eSDimitry Andric.It Va WITH_CLANG_EXTRAS
431b3a27c81SEd MasteSet to build additional clang and llvm tools, such as bugpoint and
432b3a27c81SEd Masteclang-format.
43390be798eSDimitry Andric.It Va WITHOUT_CLANG_FULL
43490be798eSDimitry AndricSet to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
43590be798eSDimitry Andricthe Clang C/C++ compiler.
43690be798eSDimitry Andric.Pp
437344e2bb9SEd MasteThis is a default setting on
4388ccac680SEd Masteriscv/riscv64 and sparc64/sparc64.
43990be798eSDimitry Andric.It Va WITH_CLANG_FULL
44090be798eSDimitry AndricSet to build the ARCMigrate, Rewriter and StaticAnalyzer components of the
44190be798eSDimitry AndricClang C/C++ compiler.
44290be798eSDimitry Andric.Pp
443344e2bb9SEd MasteThis is a default setting on
444*de19b521SDimitry Andricamd64/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 and mips/mips64hf.
44590be798eSDimitry Andric.It Va WITHOUT_CLANG_IS_CC
44690be798eSDimitry AndricSet to install the GCC compiler as
44790be798eSDimitry Andric.Pa /usr/bin/cc ,
44890be798eSDimitry Andric.Pa /usr/bin/c++
44990be798eSDimitry Andricand
45090be798eSDimitry Andric.Pa /usr/bin/cpp .
45190be798eSDimitry Andric.Pp
452344e2bb9SEd MasteThis is a default setting on
453*de19b521SDimitry Andricriscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
45490be798eSDimitry Andric.It Va WITH_CLANG_IS_CC
45590be798eSDimitry AndricSet to install the Clang C/C++ compiler as
45690be798eSDimitry Andric.Pa /usr/bin/cc ,
45790be798eSDimitry Andric.Pa /usr/bin/c++
45890be798eSDimitry Andricand
45990be798eSDimitry Andric.Pa /usr/bin/cpp .
46090be798eSDimitry Andric.Pp
461344e2bb9SEd MasteThis is a default setting on
462e8788097SKonstantin Belousovamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
46390be798eSDimitry Andric.It Va WITHOUT_CPP
46490be798eSDimitry AndricSet to not build
46590be798eSDimitry Andric.Xr cpp 1 .
46690be798eSDimitry Andric.It Va WITHOUT_CROSS_COMPILER
46790be798eSDimitry AndricSet to not build any cross compiler in the cross-tools stage of buildworld.
468344e2bb9SEd MasteWhen compiling a different version of
46990be798eSDimitry Andric.Fx
470344e2bb9SEd Mastethan what is installed on the system, provide an alternate
47190be798eSDimitry Andriccompiler with XCC to ensure success.
472344e2bb9SEd MasteWhen compiling with an identical version of
47390be798eSDimitry Andric.Fx
47490be798eSDimitry Andricto the host, this option may be safely used.
47590be798eSDimitry AndricThis option may also be safe when the host version of
47690be798eSDimitry Andric.Fx
47790be798eSDimitry Andricis close to the sources being built, but all bets are off if there have
47890be798eSDimitry Andricbeen any changes to the toolchain between the versions.
479344e2bb9SEd MasteWhen set, it enforces these options:
48090be798eSDimitry Andric.Pp
48190be798eSDimitry Andric.Bl -item -compact
48290be798eSDimitry Andric.It
48390be798eSDimitry Andric.Va WITHOUT_BINUTILS_BOOTSTRAP
48490be798eSDimitry Andric.It
48590be798eSDimitry Andric.Va WITHOUT_CLANG_BOOTSTRAP
48690be798eSDimitry Andric.It
487f972b8a4SBryan Drewery.Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
488f972b8a4SBryan Drewery.It
48990be798eSDimitry Andric.Va WITHOUT_GCC_BOOTSTRAP
49028f52545SEd Maste.It
49128f52545SEd Maste.Va WITHOUT_LLD_BOOTSTRAP
49290be798eSDimitry Andric.El
49390be798eSDimitry Andric.It Va WITHOUT_CRYPT
49490be798eSDimitry AndricSet to not build any crypto code.
495344e2bb9SEd MasteWhen set, it enforces these options:
49690be798eSDimitry Andric.Pp
49790be798eSDimitry Andric.Bl -item -compact
49890be798eSDimitry Andric.It
49990be798eSDimitry Andric.Va WITHOUT_KERBEROS
50090be798eSDimitry Andric.It
50190be798eSDimitry Andric.Va WITHOUT_OPENSSH
50290be798eSDimitry Andric.It
50390be798eSDimitry Andric.Va WITHOUT_OPENSSL
50490be798eSDimitry Andric.El
50590be798eSDimitry Andric.Pp
506344e2bb9SEd MasteWhen set, these options are also in effect:
50790be798eSDimitry Andric.Pp
50890be798eSDimitry Andric.Bl -inset -compact
50990be798eSDimitry Andric.It Va WITHOUT_GSSAPI
51090be798eSDimitry Andric(unless
51190be798eSDimitry Andric.Va WITH_GSSAPI
51290be798eSDimitry Andricis set explicitly)
51390be798eSDimitry Andric.El
51490be798eSDimitry Andric.It Va WITH_CTF
51590be798eSDimitry AndricSet to compile with CTF (Compact C Type Format) data.
51690be798eSDimitry AndricCTF data encapsulates a reduced form of debugging information
51790be798eSDimitry Andricsimilar to DWARF and the venerable stabs and is required for DTrace.
51854d8c5d5SBryan Drewery.It Va WITHOUT_CUSE
51954d8c5d5SBryan DrewerySet to not build CUSE-related programs and libraries.
5209cf76983SNavdeep Parhar.It Va WITHOUT_CXGBETOOL
5219cf76983SNavdeep ParharSet to not build
5229cf76983SNavdeep Parhar.Xr cxgbetool 8
5239cf76983SNavdeep Parhar.Pp
5249cf76983SNavdeep ParharThis is a default setting on
525*de19b521SDimitry Andricarm/arm, arm/armv6, arm/armv7, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
5269cf76983SNavdeep Parhar.It Va WITH_CXGBETOOL
5279cf76983SNavdeep ParharSet to build
5289cf76983SNavdeep Parhar.Xr cxgbetool 8
5299cf76983SNavdeep Parhar.Pp
5309cf76983SNavdeep ParharThis is a default setting on
531*de19b521SDimitry Andricamd64/amd64, arm64/aarch64, i386/i386 and sparc64/sparc64.
53290be798eSDimitry Andric.It Va WITHOUT_CXX
53390be798eSDimitry AndricSet to not build
5344a62dc3aSBryan Drewery.Xr c++ 1
53590be798eSDimitry Andricand related libraries.
53690be798eSDimitry AndricIt will also prevent building of
53790be798eSDimitry Andric.Xr gperf 1
53890be798eSDimitry Andricand
53990be798eSDimitry Andric.Xr devd 8 .
540344e2bb9SEd MasteWhen set, it enforces these options:
54190be798eSDimitry Andric.Pp
54290be798eSDimitry Andric.Bl -item -compact
54390be798eSDimitry Andric.It
54490be798eSDimitry Andric.Va WITHOUT_CLANG
54590be798eSDimitry Andric.It
54690be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS
54790be798eSDimitry Andric.It
54890be798eSDimitry Andric.Va WITHOUT_CLANG_FULL
54990be798eSDimitry Andric.It
550051ea717SEd Maste.Va WITHOUT_DTRACE_TESTS
551051ea717SEd Maste.It
55218c6fc4cSJulio Merino.Va WITHOUT_GNUCXX
55318c6fc4cSJulio Merino.It
5545b9c3654SEd Maste.Va WITHOUT_LLVM_COV
5555b9c3654SEd Maste.It
556051ea717SEd Maste.Va WITHOUT_TESTS
55790be798eSDimitry Andric.El
5584a5e4462SEd Maste.It Va WITHOUT_DEBUG_FILES
5594a5e4462SEd MasteSet to avoid building or installing standalone debug files for each
5604a5e4462SEd Masteexecutable binary and shared library.
561cc68b6e5SEd Maste.It Va WITHOUT_DIALOG
562344e2bb9SEd MasteSet to not build
563344e2bb9SEd Maste.Xr dialog 1 ,
564344e2bb9SEd Maste.Xr dialog 3 ,
565344e2bb9SEd Maste.Xr dpv 1 ,
566344e2bb9SEd Masteand
567344e2bb9SEd Maste.Xr dpv 3 .
568344e2bb9SEd MasteWhen set, it enforces these options:
569cc68b6e5SEd Maste.Pp
570cc68b6e5SEd Maste.Bl -item -compact
571cc68b6e5SEd Maste.It
572cc68b6e5SEd Maste.Va WITHOUT_BSDINSTALL
573cc68b6e5SEd Maste.El
57490be798eSDimitry Andric.It Va WITHOUT_DICT
57590be798eSDimitry AndricSet to not build the Webster dictionary files.
57632b5dc9aSSimon J. Gerraty.It Va WITH_DIRDEPS_BUILD
577be894451SBryan DreweryThis is an experimental build system.
57832b5dc9aSSimon J. GerratyFor details see
57932b5dc9aSSimon J. Gerratyhttp://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
580be894451SBryan DreweryBuild commands can be seen from the top-level with:
581be894451SBryan Drewery.Dl make show-valid-targets
58232b5dc9aSSimon J. GerratyThe build is driven by dirdeps.mk using
58332b5dc9aSSimon J. Gerraty.Va DIRDEPS
58432b5dc9aSSimon J. Gerratystored in
58532b5dc9aSSimon J. GerratyMakefile.depend files found in each directory.
58632b5dc9aSSimon J. Gerraty.Pp
58732b5dc9aSSimon J. GerratyThe build can be started from anywhere, and behaves the same.
58832b5dc9aSSimon J. GerratyThe initial instance of
58932b5dc9aSSimon J. Gerraty.Xr make 1
59032b5dc9aSSimon J. Gerratyrecursively reads
59132b5dc9aSSimon J. Gerraty.Va DIRDEPS
592344e2bb9SEd Mastefrom
593344e2bb9SEd Maste.Pa Makefile.depend ,
59432b5dc9aSSimon J. Gerratycomputing a graph of tree dependencies from the current origin.
59532b5dc9aSSimon J. GerratySetting
59632b5dc9aSSimon J. Gerraty.Va NO_DIRDEPS
597344e2bb9SEd Masteskips checking dirdep dependencies and will only build in the current
5987f76a95cSBryan Dreweryand child directories.
5997f76a95cSBryan Drewery.Va NO_DIRDEPS_BELOW
600344e2bb9SEd Masteskips building any dirdeps and only build the current directory.
60132b5dc9aSSimon J. Gerraty.Pp
602be894451SBryan DreweryThis also utilizes the
603be894451SBryan Drewery.Va WITH_META_MODE
604be894451SBryan Drewerylogic for incremental builds.
60532b5dc9aSSimon J. Gerraty.Pp
606344e2bb9SEd MasteThe build hides commands executed unless
60732b5dc9aSSimon J. Gerraty.Va NO_SILENT
60832b5dc9aSSimon J. Gerratyis defined.
60932b5dc9aSSimon J. Gerraty.Pp
610be894451SBryan DreweryNote that there is currently no mass install feature for this.
611be894451SBryan Drewery.Pp
612344e2bb9SEd MasteWhen set, it enforces these options:
61332b5dc9aSSimon J. Gerraty.Pp
61432b5dc9aSSimon J. Gerraty.Bl -item -compact
61532b5dc9aSSimon J. Gerraty.It
61632b5dc9aSSimon J. Gerraty.Va WITH_INSTALL_AS_USER
61732b5dc9aSSimon J. Gerraty.El
61832b5dc9aSSimon J. Gerraty.Pp
619344e2bb9SEd MasteWhen set, these options are also in effect:
62032b5dc9aSSimon J. Gerraty.Pp
62132b5dc9aSSimon J. Gerraty.Bl -inset -compact
62226b79d5bSHajimu UMEMOTO.It Va WITH_META_MODE
62326b79d5bSHajimu UMEMOTO(unless
62426b79d5bSHajimu UMEMOTO.Va WITHOUT_META_MODE
62526b79d5bSHajimu UMEMOTOis set explicitly)
62632b5dc9aSSimon J. Gerraty.It Va WITH_STAGING
62732b5dc9aSSimon J. Gerraty(unless
62832b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING
62932b5dc9aSSimon J. Gerratyis set explicitly)
63032b5dc9aSSimon J. Gerraty.It Va WITH_STAGING_MAN
63132b5dc9aSSimon J. Gerraty(unless
63232b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING_MAN
63332b5dc9aSSimon J. Gerratyis set explicitly)
63432b5dc9aSSimon J. Gerraty.It Va WITH_STAGING_PROG
63532b5dc9aSSimon J. Gerraty(unless
63632b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING_PROG
63732b5dc9aSSimon J. Gerratyis set explicitly)
63832b5dc9aSSimon J. Gerraty.It Va WITH_SYSROOT
63932b5dc9aSSimon J. Gerraty(unless
64032b5dc9aSSimon J. Gerraty.Va WITHOUT_SYSROOT
64132b5dc9aSSimon J. Gerratyis set explicitly)
64232b5dc9aSSimon J. Gerraty.El
64332b5dc9aSSimon J. Gerraty.Pp
64432b5dc9aSSimon J. GerratyThis must be set in the environment, make command line, or
64532b5dc9aSSimon J. Gerraty.Pa /etc/src-env.conf ,
64632b5dc9aSSimon J. Gerratynot
64732b5dc9aSSimon J. Gerraty.Pa /etc/src.conf .
648cc2520d2SSimon J. Gerraty.It Va WITH_DIRDEPS_CACHE
649cc2520d2SSimon J. GerratyCache result of dirdeps.mk which can save significant time
650cc2520d2SSimon J. Gerratyfor subsequent builds.
651cc2520d2SSimon J. GerratyDepends on
65232b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD .
6530a70ef02SBryan Drewery.Pp
654ba852870SBryan DreweryThis must be set in the environment, make command line, or
6550a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
6560a70ef02SBryan Drewerynot
6570a70ef02SBryan Drewery.Pa /etc/src.conf .
65890be798eSDimitry Andric.It Va WITHOUT_DMAGENT
659344e2bb9SEd MasteSet to not build dma Mail Transport Agent.
66090be798eSDimitry Andric.It Va WITHOUT_DOCCOMPRESS
661344e2bb9SEd MasteSet to not install compressed system documentation.
66290be798eSDimitry AndricOnly the uncompressed version will be installed.
66316f3fdf5SMark Johnston.It Va WITH_DTRACE_TESTS
66416f3fdf5SMark JohnstonSet to build and install the DTrace test suite in
66516f3fdf5SMark Johnston.Pa /usr/tests/cddl/usr.sbin/dtrace .
66616f3fdf5SMark JohnstonThis test suite is considered experimental on architectures other than
66716f3fdf5SMark Johnstonamd64/amd64 and running it may cause system instability.
66890be798eSDimitry Andric.It Va WITHOUT_DYNAMICROOT
66990be798eSDimitry AndricSet this if you do not want to link
67090be798eSDimitry Andric.Pa /bin
67190be798eSDimitry Andricand
67290be798eSDimitry Andric.Pa /sbin
67390be798eSDimitry Andricdynamically.
67493da8366SEnji Cooper.It Va WITHOUT_EE
67593da8366SEnji CooperSet to not build and install
67693da8366SEnji Cooper.Xr edit 1 ,
67793da8366SEnji Cooper.Xr ee 1 ,
67893da8366SEnji Cooperand related programs.
6790cd582c8SEnji Cooper.It Va WITHOUT_EFI
6800cd582c8SEnji CooperSet not to build
6810cd582c8SEnji Cooper.Xr efivar 3
6820cd582c8SEnji Cooperand
6830cd582c8SEnji Cooper.Xr efivar 8 .
6840cd582c8SEnji Cooper.Pp
685344e2bb9SEd MasteThis is a default setting on
686*de19b521SDimitry Andricriscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
6870cd582c8SEnji Cooper.It Va WITH_EFI
6880cd582c8SEnji CooperSet to build
6890cd582c8SEnji Cooper.Xr efivar 3
6900cd582c8SEnji Cooperand
6910cd582c8SEnji Cooper.Xr efivar 8 .
6920cd582c8SEnji Cooper.Pp
693344e2bb9SEd MasteThis is a default setting on
694e8788097SKonstantin Belousovamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
6955977355fSBryan Drewery.It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
6965977355fSBryan DrewerySet to not build ELF Tool Chain tools
6975977355fSBryan Drewery(addr2line, nm, size, strings and strip)
6985977355fSBryan Dreweryas part of the bootstrap process.
6995977355fSBryan Drewery.Bf -symbolic
7005977355fSBryan DreweryAn alternate bootstrap tool chain must be provided.
7015977355fSBryan Drewery.Ef
70290be798eSDimitry Andric.It Va WITHOUT_EXAMPLES
70390be798eSDimitry AndricSet to avoid installing examples to
70490be798eSDimitry Andric.Pa /usr/share/examples/ .
70543f75d57SBjoern A. Zeeb.It Va WITH_EXPERIMENTAL
70643f75d57SBjoern A. ZeebSet to include experimental features in the build.
707d5a2667bSJonathan T. Looney.It Va WITH_EXTRA_TCP_STACKS
708d5a2667bSJonathan T. LooneySet to build extra TCP stack modules.
70990be798eSDimitry Andric.It Va WITHOUT_FDT
71090be798eSDimitry AndricSet to not build Flattened Device Tree support as part of the base system.
71190be798eSDimitry AndricThis includes the device tree compiler (dtc) and libfdt support library.
7120e0e9604SEnji Cooper.It Va WITHOUT_FILE
7130e0e9604SEnji CooperSet to not build
7140e0e9604SEnji Cooper.Xr file 1
7150e0e9604SEnji Cooperand related programs.
7160e0e9604SEnji Cooper.It Va WITHOUT_FINGER
7170e0e9604SEnji CooperSet to not build or install
7180e0e9604SEnji Cooper.Xr finger 1
7190e0e9604SEnji Cooperand
7200e0e9604SEnji Cooper.Xr fingerd 8 .
72190be798eSDimitry Andric.It Va WITHOUT_FLOPPY
72290be798eSDimitry AndricSet to not build or install programs
72390be798eSDimitry Andricfor operating floppy disk driver.
72490be798eSDimitry Andric.It Va WITHOUT_FMTREE
72590be798eSDimitry AndricSet to not build and install
72690be798eSDimitry Andric.Pa /usr/sbin/fmtree .
727a0f6423bSEd Maste.It Va WITHOUT_FORMAT_EXTENSIONS
728a0f6423bSEd MasteSet to not enable
729a0f6423bSEd Maste.Fl fformat-extensions
730a0f6423bSEd Mastewhen compiling the kernel.
731a0f6423bSEd MasteAlso disables all format checking.
73290be798eSDimitry Andric.It Va WITHOUT_FORTH
73390be798eSDimitry AndricSet to build bootloaders without Forth support.
73490be798eSDimitry Andric.It Va WITHOUT_FP_LIBC
73590be798eSDimitry AndricSet to build
73690be798eSDimitry Andric.Nm libc
73790be798eSDimitry Andricwithout floating-point support.
73890be798eSDimitry Andric.It Va WITHOUT_FREEBSD_UPDATE
73990be798eSDimitry AndricSet to not build
74090be798eSDimitry Andric.Xr freebsd-update 8 .
7410e0e9604SEnji Cooper.It Va WITHOUT_FTP
7420e0e9604SEnji CooperSet to not build or install
7430e0e9604SEnji Cooper.Xr ftp 1
7440e0e9604SEnji Cooperand
7450e0e9604SEnji Cooper.Xr ftpd 8 .
74690be798eSDimitry Andric.It Va WITHOUT_GAMES
74790be798eSDimitry AndricSet to not build games.
74890be798eSDimitry Andric.It Va WITHOUT_GCC
74990be798eSDimitry AndricSet to not build and install gcc and g++ as part of the normal build process.
75090be798eSDimitry Andric.Pp
751344e2bb9SEd MasteThis is a default setting on
7528ccac680SEd Masteamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64.
75390be798eSDimitry Andric.It Va WITH_GCC
75490be798eSDimitry AndricSet to build and install gcc and g++.
75590be798eSDimitry Andric.Pp
756344e2bb9SEd MasteThis is a default setting on
757*de19b521SDimitry Andricmips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
75890be798eSDimitry Andric.It Va WITHOUT_GCC_BOOTSTRAP
75990be798eSDimitry AndricSet to not build gcc and g++ as part of the bootstrap process.
760a0f6423bSEd MasteYou must enable either gcc or clang bootstrap to be able to build the system,
761a0f6423bSEd Masteunless an alternative compiler is provided via
76290be798eSDimitry AndricXCC.
76390be798eSDimitry Andric.Pp
764344e2bb9SEd MasteThis is a default setting on
7658ccac680SEd Masteamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64.
76690be798eSDimitry Andric.It Va WITH_GCC_BOOTSTRAP
76790be798eSDimitry AndricSet to build gcc and g++ as part of the bootstrap process.
76890be798eSDimitry Andric.Pp
769344e2bb9SEd MasteThis is a default setting on
770*de19b521SDimitry Andricmips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
77190be798eSDimitry Andric.It Va WITHOUT_GCOV
77290be798eSDimitry AndricSet to not build the
77390be798eSDimitry Andric.Xr gcov 1
77490be798eSDimitry Andrictool.
77590be798eSDimitry Andric.It Va WITHOUT_GDB
77690be798eSDimitry AndricSet to not build
77790be798eSDimitry Andric.Xr gdb 1 .
7785be09b10SEd Maste.Pp
779344e2bb9SEd MasteThis is a default setting on
7808ccac680SEd Mastearm64/aarch64 and riscv/riscv64.
7815977355fSBryan Drewery.It Va WITH_GDB
7825977355fSBryan DrewerySet to build
7835977355fSBryan Drewery.Xr gdb 1 .
7845977355fSBryan Drewery.Pp
785344e2bb9SEd MasteThis is a default setting on
786*de19b521SDimitry Andricamd64/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 and sparc64/sparc64.
7874650b8aeSEnji Cooper.It Va WITHOUT_GDB_LIBEXEC
7884650b8aeSEnji CooperSet to install
7894650b8aeSEnji Cooper.Xr gdb 1
7904650b8aeSEnji Cooperinto
7914650b8aeSEnji Cooper.Pa /usr/bin .
7924650b8aeSEnji Cooper.Pp
7934650b8aeSEnji CooperThis is a default setting on
794513fdd50SJohn Baldwinsparc64/sparc64.
7954650b8aeSEnji Cooper.It Va WITH_GDB_LIBEXEC
7964650b8aeSEnji CooperSet to install
7974650b8aeSEnji Cooper.Xr gdb 1
7984650b8aeSEnji Cooperinto
7994650b8aeSEnji Cooper.Pa /usr/libexec .
8004650b8aeSEnji CooperThis permits
8014650b8aeSEnji Cooper.Xr gdb 1
8024650b8aeSEnji Cooperto be used as a fallback for
8034650b8aeSEnji Cooper.Xr crashinfo 8
8044650b8aeSEnji Cooperif a newer version is not installed.
8054650b8aeSEnji Cooper.Pp
8064650b8aeSEnji CooperThis is a default setting on
807*de19b521SDimitry Andricamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
80890be798eSDimitry Andric.It Va WITHOUT_GNUCXX
80990be798eSDimitry AndricDo not build the GNU C++ stack (g++, libstdc++).
81090be798eSDimitry AndricThis is the default on platforms where clang is the system compiler.
81190be798eSDimitry Andric.Pp
812344e2bb9SEd MasteThis is a default setting on
813e8788097SKonstantin Belousovamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
81490be798eSDimitry Andric.It Va WITH_GNUCXX
81590be798eSDimitry AndricBuild the GNU C++ stack (g++, libstdc++).
81690be798eSDimitry AndricThis is the default on platforms where gcc is the system compiler.
81790be798eSDimitry Andric.Pp
818344e2bb9SEd MasteThis is a default setting on
819*de19b521SDimitry Andricriscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
82036e8c7bbSEd Maste.It Va WITHOUT_GNU_DIFF
82136e8c7bbSEd MasteSet to not build GNU
82236e8c7bbSEd Maste.Xr diff 1
82336e8c7bbSEd Masteand
82436e8c7bbSEd Maste.Xr diff3 1 .
82536e8c7bbSEd Maste.It Va WITHOUT_GNU_GREP
82636e8c7bbSEd MasteSet to not build GNU
82736e8c7bbSEd Maste.Xr grep 1 .
828e9e768f7SEd Maste.It Va WITH_GNU_GREP_COMPAT
829e9e768f7SEd MasteSet this option to include GNU extensions in
830e9e768f7SEd Maste.Xr bsdgrep 1
831e9e768f7SEd Masteby linking against libgnuregex.
8327840b63aSEnji Cooper.It Va WITHOUT_GOOGLETEST
8337840b63aSEnji CooperSet to neither build nor install
8347840b63aSEnji Cooper.Lb libgmock ,
8357840b63aSEnji Cooper.Lb libgtest ,
8367840b63aSEnji Cooperand dependent tests.
83705e08cbdSKyle Evans.Pp
83805e08cbdSKyle EvansThis is a default setting on
83905e08cbdSKyle Evansmips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
84005e08cbdSKyle Evans.It Va WITH_GOOGLETEST
84105e08cbdSKyle EvansSet to build and install
84205e08cbdSKyle Evans.Lb libgmock ,
84305e08cbdSKyle Evans.Lb libgtest ,
84405e08cbdSKyle Evansand dependent tests.
84505e08cbdSKyle Evans.Pp
84605e08cbdSKyle EvansThis is a default setting on
847*de19b521SDimitry Andricamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and sparc64/sparc64.
84890be798eSDimitry Andric.It Va WITHOUT_GPIO
84990be798eSDimitry AndricSet to not build
85090be798eSDimitry Andric.Xr gpioctl 8
85190be798eSDimitry Andricas part of the base system.
8525c021049SEnji Cooper.It Va WITHOUT_GPL_DTC
8535c021049SEnji CooperSet to build the BSD licensed version of the device tree compiler rather
8545c021049SEnji Cooperthan the GPLed one from elinux.org.
8555c021049SEnji Cooper.Pp
8565c021049SEnji CooperThis is a default setting on
857e8788097SKonstantin Belousovamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
858fcf8f4a8SEmmanuel Vadot.It Va WITH_GPL_DTC
859fcf8f4a8SEmmanuel VadotSet to build the GPL'd version of the device tree compiler from elinux.org,
860fcf8f4a8SEmmanuel Vadotinstead of the BSD licensed one.
8615c021049SEnji Cooper.Pp
8625c021049SEnji CooperThis is a default setting on
863*de19b521SDimitry Andricriscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
86490be798eSDimitry Andric.It Va WITHOUT_GSSAPI
86590be798eSDimitry AndricSet to not build libgssapi.
86661940879SEnji Cooper.It Va WITHOUT_HAST
86761940879SEnji CooperSet to not build
86861940879SEnji Cooper.Xr hastd 8
86961940879SEnji Cooperand related utilities.
87090be798eSDimitry Andric.It Va WITH_HESIOD
87190be798eSDimitry AndricSet to build Hesiod support.
87290be798eSDimitry Andric.It Va WITHOUT_HTML
87390be798eSDimitry AndricSet to not build HTML docs.
87401a0b1a4SKyle Evans.It Va WITH_HTTPD
87501a0b1a4SKyle EvansSet to build and install httpd
8762c4b4abcSXin LI.It Va WITHOUT_HYPERV
8772c4b4abcSXin LISet to not build or install HyperV utilities.
8780543ade3SBrooks Davis.Pp
8790543ade3SBrooks DavisThis is a default setting on
880*de19b521SDimitry Andricarm/arm, arm/armv6, arm/armv7, arm64/aarch64, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
8810543ade3SBrooks Davis.It Va WITH_HYPERV
8820543ade3SBrooks DavisSet to build or install HyperV utilities.
8830543ade3SBrooks Davis.Pp
8840543ade3SBrooks DavisThis is a default setting on
8850543ade3SBrooks Davisamd64/amd64 and i386/i386.
88690be798eSDimitry Andric.It Va WITHOUT_ICONV
88790be798eSDimitry AndricSet to not build iconv as part of libc.
888c5d09a87SGlen Barber.It Va WITHOUT_INCLUDES
889c5d09a87SGlen BarberSet to not install header files.
890c5d09a87SGlen BarberThis option used to be spelled
891c5d09a87SGlen Barber.Va NO_INCS .
892c5d09a87SGlen Barber.Bf -symbolic
893c5d09a87SGlen BarberThe option does not work for build targets.
894c5d09a87SGlen Barber.Ef
89590be798eSDimitry Andric.It Va WITHOUT_INET
89690be798eSDimitry AndricSet to not build programs and libraries related to IPv4 networking.
897344e2bb9SEd MasteWhen set, it enforces these options:
89890be798eSDimitry Andric.Pp
89990be798eSDimitry Andric.Bl -item -compact
90090be798eSDimitry Andric.It
90190be798eSDimitry Andric.Va WITHOUT_INET_SUPPORT
90290be798eSDimitry Andric.El
90390be798eSDimitry Andric.It Va WITHOUT_INET6
90490be798eSDimitry AndricSet to not build
90590be798eSDimitry Andricprograms and libraries related to IPv6 networking.
906344e2bb9SEd MasteWhen set, it enforces these options:
90790be798eSDimitry Andric.Pp
90890be798eSDimitry Andric.Bl -item -compact
90990be798eSDimitry Andric.It
91090be798eSDimitry Andric.Va WITHOUT_INET6_SUPPORT
91190be798eSDimitry Andric.El
91290be798eSDimitry Andric.It Va WITHOUT_INET6_SUPPORT
91390be798eSDimitry AndricSet to build libraries, programs, and kernel modules without IPv6 support.
9140e0e9604SEnji Cooper.It Va WITHOUT_INETD
9150e0e9604SEnji CooperSet to not build
9160e0e9604SEnji Cooper.Xr inetd 8 .
91790be798eSDimitry Andric.It Va WITHOUT_INET_SUPPORT
91890be798eSDimitry AndricSet to build libraries, programs, and kernel modules without IPv4 support.
91990be798eSDimitry Andric.It Va WITHOUT_INSTALLLIB
920344e2bb9SEd MasteSet this to not install optional libraries.
921344e2bb9SEd MasteFor example, when creating a
92290be798eSDimitry Andric.Xr nanobsd 8
92390be798eSDimitry Andricimage.
924f79bedf5SBryan Drewery.Bf -symbolic
925f79bedf5SBryan DreweryThe option does not work for build targets.
926f79bedf5SBryan Drewery.Ef
92790be798eSDimitry Andric.It Va WITH_INSTALL_AS_USER
92890be798eSDimitry AndricSet to make install targets succeed for non-root users by installing
92990be798eSDimitry Andricfiles with owner and group attributes set to that of the user running
93090be798eSDimitry Andricthe
93190be798eSDimitry Andric.Xr make 1
93290be798eSDimitry Andriccommand.
933344e2bb9SEd MasteThe user still must set the
93490be798eSDimitry Andric.Va DESTDIR
93590be798eSDimitry Andricvariable to point to a directory where the user has write permissions.
93690be798eSDimitry Andric.It Va WITHOUT_IPFILTER
93790be798eSDimitry AndricSet to not build IP Filter package.
93890be798eSDimitry Andric.It Va WITHOUT_IPFW
93990be798eSDimitry AndricSet to not build IPFW tools.
94088342134SEnji Cooper.It Va WITHOUT_IPSEC_SUPPORT
94188342134SEnji CooperSet to not build the kernel with
94288342134SEnji Cooper.Xr ipsec 4
94388342134SEnji Coopersupport.
94488342134SEnji CooperThis option is needed for
94588342134SEnji Cooper.Xr ipsec 4
94688342134SEnji Cooperand
94788342134SEnji Cooper.Xr tcpmd5 4 .
94893da8366SEnji Cooper.It Va WITHOUT_ISCSI
94993da8366SEnji CooperSet to not build
95026d6bbfaSSevan Janiyan.Xr iscsid 8
95193da8366SEnji Cooperand related utilities.
95290be798eSDimitry Andric.It Va WITHOUT_JAIL
95390be798eSDimitry AndricSet to not build tools for the support of jails; e.g.,
95490be798eSDimitry Andric.Xr jail 8 .
95590be798eSDimitry Andric.It Va WITHOUT_KDUMP
95690be798eSDimitry AndricSet to not build
95790be798eSDimitry Andric.Xr kdump 1
95890be798eSDimitry Andricand
95990be798eSDimitry Andric.Xr truss 1 .
96090be798eSDimitry Andric.It Va WITHOUT_KERBEROS
961344e2bb9SEd MasteSet this to not build Kerberos 5 (KTH Heimdal).
962344e2bb9SEd MasteWhen set, these options are also in effect:
96390be798eSDimitry Andric.Pp
96490be798eSDimitry Andric.Bl -inset -compact
96590be798eSDimitry Andric.It Va WITHOUT_GSSAPI
96690be798eSDimitry Andric(unless
96790be798eSDimitry Andric.Va WITH_GSSAPI
96890be798eSDimitry Andricis set explicitly)
969bf64e879SBryan Drewery.It Va WITHOUT_KERBEROS_SUPPORT
970bf64e879SBryan Drewery(unless
971bf64e879SBryan Drewery.Va WITH_KERBEROS_SUPPORT
972bf64e879SBryan Dreweryis set explicitly)
97390be798eSDimitry Andric.El
97490be798eSDimitry Andric.It Va WITHOUT_KERBEROS_SUPPORT
97590be798eSDimitry AndricSet to build some programs without Kerberos support, like
97690be798eSDimitry Andric.Xr ssh 1 ,
97790be798eSDimitry Andric.Xr telnet 1 ,
97890be798eSDimitry Andric.Xr sshd 8 ,
97990be798eSDimitry Andricand
98090be798eSDimitry Andric.Xr telnetd 8 .
9816f7527f0SEd Maste.It Va WITH_KERNEL_RETPOLINE
9826f7527f0SEd MasteSet to enable the "retpoline" mitigation for CVE-2017-5715 in the kernel
9836f7527f0SEd Mastebuild.
984a0f6423bSEd Maste.It Va WITHOUT_KERNEL_SYMBOLS
985a0f6423bSEd MasteSet to not install kernel symbol files.
986a0f6423bSEd Maste.Bf -symbolic
987a0f6423bSEd MasteThis option is recommended for those people who have small root partitions.
988a0f6423bSEd Maste.Ef
98990be798eSDimitry Andric.It Va WITHOUT_KVM
99090be798eSDimitry AndricSet to not build the
99190be798eSDimitry Andric.Nm libkvm
99290be798eSDimitry Andriclibrary as a part of the base system.
99390be798eSDimitry Andric.Bf -symbolic
99490be798eSDimitry AndricThe option has no effect yet.
99590be798eSDimitry Andric.Ef
996bf64e879SBryan DreweryWhen set, these options are also in effect:
99790be798eSDimitry Andric.Pp
998bf64e879SBryan Drewery.Bl -inset -compact
999bf64e879SBryan Drewery.It Va WITHOUT_KVM_SUPPORT
1000bf64e879SBryan Drewery(unless
1001bf64e879SBryan Drewery.Va WITH_KVM_SUPPORT
1002bf64e879SBryan Dreweryis set explicitly)
100390be798eSDimitry Andric.El
100490be798eSDimitry Andric.It Va WITHOUT_KVM_SUPPORT
100590be798eSDimitry AndricSet to build some programs without optional
100690be798eSDimitry Andric.Nm libkvm
100790be798eSDimitry Andricsupport.
100890be798eSDimitry Andric.It Va WITHOUT_LDNS
100990be798eSDimitry AndricSetting this variable will prevent the LDNS library from being built.
1010344e2bb9SEd MasteWhen set, it enforces these options:
101190be798eSDimitry Andric.Pp
101290be798eSDimitry Andric.Bl -item -compact
101390be798eSDimitry Andric.It
101490be798eSDimitry Andric.Va WITHOUT_LDNS_UTILS
101590be798eSDimitry Andric.It
101690be798eSDimitry Andric.Va WITHOUT_UNBOUND
101790be798eSDimitry Andric.El
101890be798eSDimitry Andric.It Va WITHOUT_LDNS_UTILS
101990be798eSDimitry AndricSetting this variable will prevent building the LDNS utilities
102090be798eSDimitry Andric.Xr drill 1
102190be798eSDimitry Andricand
102290be798eSDimitry Andric.Xr host 1 .
102390be798eSDimitry Andric.It Va WITHOUT_LEGACY_CONSOLE
102490be798eSDimitry AndricSet to not build programs that support a legacy PC console; e.g.,
102523a6b49aSEdward Tomasz Napierala.Xr kbdcontrol 1
102690be798eSDimitry Andricand
102723a6b49aSEdward Tomasz Napierala.Xr vidcontrol 1 .
102890be798eSDimitry Andric.It Va WITHOUT_LIB32
1029c5d09a87SGlen BarberOn 64-bit platforms, set to not build 32-bit library set and a
103090be798eSDimitry Andric.Nm ld-elf32.so.1
103190be798eSDimitry Andricruntime linker.
103290be798eSDimitry Andric.It Va WITHOUT_LIBCPLUSPLUS
103390be798eSDimitry AndricSet to avoid building libcxxrt and libc++.
103490be798eSDimitry Andric.It Va WITHOUT_LIBPTHREAD
103590be798eSDimitry AndricSet to not build the
103690be798eSDimitry Andric.Nm libpthread
103790be798eSDimitry Andricproviding library,
103890be798eSDimitry Andric.Nm libthr .
1039344e2bb9SEd MasteWhen set, it enforces these options:
104090be798eSDimitry Andric.Pp
104190be798eSDimitry Andric.Bl -item -compact
104290be798eSDimitry Andric.It
104390be798eSDimitry Andric.Va WITHOUT_LIBTHR
104490be798eSDimitry Andric.El
10458a7c8ae4SBryan Drewery.It Va WITH_LIBSOFT
10468a7c8ae4SBryan DreweryOn armv6 only, set to enable soft float ABI compatibility libraries.
10478a7c8ae4SBryan DreweryThis option is for transitioning to the new hard float ABI.
104890be798eSDimitry Andric.It Va WITHOUT_LIBTHR
104990be798eSDimitry AndricSet to not build the
105090be798eSDimitry Andric.Nm libthr
105190be798eSDimitry Andric(1:1 threading)
105290be798eSDimitry Andriclibrary.
105336e8c7bbSEd Maste.It Va WITHOUT_LLD
105436e8c7bbSEd MasteSet to not build LLVM's lld linker.
105536e8c7bbSEd Maste.Pp
1056344e2bb9SEd MasteThis is a default setting on
10578ccac680SEd Masteriscv/riscv64 and sparc64/sparc64.
105836e8c7bbSEd Maste.It Va WITH_LLD
105936e8c7bbSEd MasteSet to build LLVM's lld linker.
106036e8c7bbSEd Maste.Pp
1061344e2bb9SEd MasteThis is a default setting on
1062*de19b521SDimitry Andricamd64/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 and mips/mips64hf.
10631500eb21SEd Maste.It Va WITHOUT_LLDB
10641500eb21SEd MasteSet to not build the LLDB debugger.
10651500eb21SEd Maste.Pp
1066344e2bb9SEd MasteThis is a default setting on
1067*de19b521SDimitry Andricarm/arm, arm/armv6, arm/armv7, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
106890be798eSDimitry Andric.It Va WITH_LLDB
106990be798eSDimitry AndricSet to build the LLDB debugger.
10701500eb21SEd Maste.Pp
1071344e2bb9SEd MasteThis is a default setting on
1072e5259506SEnji Cooperamd64/amd64, arm64/aarch64 and i386/i386.
10736c2b7edaSEd Maste.It Va WITHOUT_LLD_BOOTSTRAP
10746c2b7edaSEd MasteSet to not build the LLD linker during the bootstrap phase of
10756c2b7edaSEd Mastethe build.
10766c2b7edaSEd MasteTo be able to build the system, either Binutils or LLD bootstrap must be
10776c2b7edaSEd Masteenabled unless an alternate linker is provided via XLD.
10786c2b7edaSEd Maste.Pp
10796c2b7edaSEd MasteThis is a default setting on
1080*de19b521SDimitry Andricarm/arm, arm/armv6, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
10816c2b7edaSEd Maste.It Va WITH_LLD_BOOTSTRAP
108218655ca2SEd MasteSet to build the LLD linker during the bootstrap phase of the build,
108318655ca2SEd Masteand use it during buildworld and buildkernel.
10846c2b7edaSEd Maste.Pp
10856c2b7edaSEd MasteThis is a default setting on
10867a9e13ddSEd Masteamd64/amd64, arm/armv7, arm64/aarch64 and i386/i386.
1087661cf9b6SYoshihiro Takahashi.It Va WITHOUT_LLD_IS_LD
108836e8c7bbSEd MasteSet to use GNU binutils ld as the system linker, instead of LLVM's LLD.
108936e8c7bbSEd Maste.Pp
1090344e2bb9SEd MasteThis is a default setting on
1091*de19b521SDimitry Andricarm/arm, arm/armv6, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
1092661cf9b6SYoshihiro Takahashi.It Va WITH_LLD_IS_LD
109336e8c7bbSEd MasteSet to use LLVM's LLD as the system linker, instead of GNU binutils ld.
109436e8c7bbSEd Maste.Pp
1095344e2bb9SEd MasteThis is a default setting on
10961f7d1483SEd Masteamd64/amd64, arm/armv7, arm64/aarch64 and i386/i386.
10975b9c3654SEd Maste.It Va WITHOUT_LLVM_COV
10985b9c3654SEd MasteSet to not build the
10995b9c3654SEd Maste.Xr llvm-cov 1
11005b9c3654SEd Mastetool.
11015b9c3654SEd Maste.Pp
11025b9c3654SEd MasteThis is a default setting on
11038ccac680SEd Masteriscv/riscv64 and sparc64/sparc64.
11045b9c3654SEd Maste.It Va WITH_LLVM_COV
11055b9c3654SEd MasteSet to build the
11065b9c3654SEd Maste.Xr llvm-cov 1
11075b9c3654SEd Mastetool.
11085b9c3654SEd Maste.Pp
11095b9c3654SEd MasteThis is a default setting on
1110*de19b521SDimitry Andricamd64/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 and mips/mips64hf.
11111500eb21SEd Maste.It Va WITHOUT_LLVM_LIBUNWIND
11121500eb21SEd MasteSet to use GCC's stack unwinder (instead of LLVM's libunwind).
11131500eb21SEd Maste.Pp
1114344e2bb9SEd MasteThis is a default setting on
1115*de19b521SDimitry Andricarm/arm, arm/armv6, arm/armv7 and sparc64/sparc64.
11161500eb21SEd Maste.It Va WITH_LLVM_LIBUNWIND
11171500eb21SEd MasteSet to use LLVM's libunwind stack unwinder (instead of GCC's unwinder).
11181500eb21SEd Maste.Pp
1119344e2bb9SEd MasteThis is a default setting on
1120*de19b521SDimitry Andricamd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1121cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_AARCH64
1122cbafd263SDimitry AndricSet to not build LLVM target support for AArch64.
1123bf64e879SBryan DreweryThe
1124bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1125bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1126cbafd263SDimitry Andric.Pp
1127cbafd263SDimitry AndricThis is a default setting on
11281f7d1483SEd Mastearm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64.
1129cbafd263SDimitry Andric.It Va WITH_LLVM_TARGET_AARCH64
1130cbafd263SDimitry AndricSet to build LLVM target support for AArch64.
1131bf64e879SBryan DreweryThe
1132bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1133bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1134bf64e879SBryan Drewery.Pp
1135bf64e879SBryan DreweryThis is a default setting on
1136*de19b521SDimitry Andricamd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1137bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ALL
1138bf64e879SBryan DrewerySet to only build the required LLVM target support.
1139bf64e879SBryan DreweryThis option is preferred to specific target support options.
1140bf64e879SBryan Drewery.Pp
1141bf64e879SBryan DreweryThis is a default setting on
11428ccac680SEd Masteriscv/riscv64 and sparc64/sparc64.
1143bf64e879SBryan DreweryWhen set, these options are also in effect:
1144bf64e879SBryan Drewery.Pp
1145bf64e879SBryan Drewery.Bl -inset -compact
1146bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_AARCH64
1147bf64e879SBryan Drewery(unless
1148bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_AARCH64
1149bf64e879SBryan Dreweryis set explicitly)
1150bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ARM
1151bf64e879SBryan Drewery(unless
1152bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_ARM
1153bf64e879SBryan Dreweryis set explicitly)
1154bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_MIPS
1155bf64e879SBryan Drewery(unless
1156bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_MIPS
1157bf64e879SBryan Dreweryis set explicitly)
1158bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_POWERPC
1159bf64e879SBryan Drewery(unless
1160bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_POWERPC
1161bf64e879SBryan Dreweryis set explicitly)
1162bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_SPARC
1163bf64e879SBryan Drewery(unless
1164bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_SPARC
1165bf64e879SBryan Dreweryis set explicitly)
1166bf64e879SBryan Drewery.El
1167bf64e879SBryan Drewery.It Va WITH_LLVM_TARGET_ALL
1168bf64e879SBryan DrewerySet to build support for all LLVM targets.
1169bf64e879SBryan DreweryThis option is always applied to the bootstrap compiler for buildworld when
1170bf64e879SBryan DreweryLLVM is used.
1171cbafd263SDimitry Andric.Pp
1172cbafd263SDimitry AndricThis is a default setting on
1173*de19b521SDimitry Andricamd64/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 and mips/mips64hf.
1174cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_ARM
1175cbafd263SDimitry AndricSet to not build LLVM target support for ARM.
1176bf64e879SBryan DreweryThe
1177bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1178bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1179cbafd263SDimitry Andric.Pp
1180cbafd263SDimitry AndricThis is a default setting on
11818ccac680SEd Masteriscv/riscv64 and sparc64/sparc64.
1182cbafd263SDimitry Andric.It Va WITH_LLVM_TARGET_ARM
1183cbafd263SDimitry AndricSet to build LLVM target support for ARM.
1184bf64e879SBryan DreweryThe
1185bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1186bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1187cbafd263SDimitry Andric.Pp
1188cbafd263SDimitry AndricThis is a default setting on
1189*de19b521SDimitry Andricamd64/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 and mips/mips64hf.
119089edb881SDimitry Andric.It Va WITH_LLVM_TARGET_BPF
119189edb881SDimitry AndricSet to build LLVM target support for BPF.
119289edb881SDimitry AndricThe
119389edb881SDimitry Andric.Va LLVM_TARGET_ALL
119489edb881SDimitry Andricoption should be used rather than this in most cases.
1195cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_MIPS
1196cbafd263SDimitry AndricSet to not build LLVM target support for MIPS.
1197bf64e879SBryan DreweryThe
1198bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1199bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1200cbafd263SDimitry Andric.Pp
1201cbafd263SDimitry AndricThis is a default setting on
12021f7d1483SEd Mastearm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64.
1203cbafd263SDimitry Andric.It Va WITH_LLVM_TARGET_MIPS
1204cbafd263SDimitry AndricSet to build LLVM target support for MIPS.
1205bf64e879SBryan DreweryThe
1206bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1207bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1208cbafd263SDimitry Andric.Pp
1209cbafd263SDimitry AndricThis is a default setting on
1210*de19b521SDimitry Andricamd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1211cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_POWERPC
1212cbafd263SDimitry AndricSet to not build LLVM target support for PowerPC.
1213bf64e879SBryan DreweryThe
1214bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1215bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1216cbafd263SDimitry Andric.Pp
1217cbafd263SDimitry AndricThis is a default setting on
12181f7d1483SEd Mastearm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64.
1219cbafd263SDimitry Andric.It Va WITH_LLVM_TARGET_POWERPC
1220cbafd263SDimitry AndricSet to build LLVM target support for PowerPC.
1221bf64e879SBryan DreweryThe
1222bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1223bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1224cbafd263SDimitry Andric.Pp
1225cbafd263SDimitry AndricThis is a default setting on
1226*de19b521SDimitry Andricamd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1227b2689b12SMitchell Horne.It Va WITH_LLVM_TARGET_RISCV
1228b2689b12SMitchell HorneSet to build LLVM target support for RISC-V.
1229b2689b12SMitchell HorneThe
1230b2689b12SMitchell Horne.Va LLVM_TARGET_ALL
1231b2689b12SMitchell Horneoption should be used rather than this in most cases.
1232cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_SPARC
1233cbafd263SDimitry AndricSet to not build LLVM target support for SPARC.
1234bf64e879SBryan DreweryThe
1235bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1236bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1237cbafd263SDimitry Andric.Pp
1238cbafd263SDimitry AndricThis is a default setting on
12391f7d1483SEd Mastearm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64.
1240cbafd263SDimitry Andric.It Va WITH_LLVM_TARGET_SPARC
1241cbafd263SDimitry AndricSet to build LLVM target support for SPARC.
1242bf64e879SBryan DreweryThe
1243bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1244bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1245cbafd263SDimitry Andric.Pp
1246cbafd263SDimitry AndricThis is a default setting on
1247*de19b521SDimitry Andricamd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1248cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_X86
1249cbafd263SDimitry AndricSet to not build LLVM target support for X86.
1250bf64e879SBryan DreweryThe
1251bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1252bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1253cbafd263SDimitry Andric.Pp
1254cbafd263SDimitry AndricThis is a default setting on
12551f7d1483SEd Mastearm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64.
1256cbafd263SDimitry Andric.It Va WITH_LLVM_TARGET_X86
1257cbafd263SDimitry AndricSet to build LLVM target support for X86.
1258bf64e879SBryan DreweryThe
1259bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1260bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1261cbafd263SDimitry Andric.Pp
1262cbafd263SDimitry AndricThis is a default setting on
1263*de19b521SDimitry Andricamd64/amd64, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1264bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT
1265bfdf8aa9SJohn BaldwinEnable building
1266bfdf8aa9SJohn Baldwin.Xr loader 8
1267bfdf8aa9SJohn Baldwinwith support for verification based on certificates obtained from UEFI.
1268bfdf8aa9SJohn Baldwin.Pp
1269782df3edSEd Maste.It Va WITH_LOADER_FIREWIRE
1270e8788097SKonstantin BelousovEnable firewire support in /boot/loader on x86. This option is a nop
1271e8788097SKonstantin Belousovon all other platforms.
12728edab9cdSWarner Losh.It Va WITH_LOADER_FORCE_LE
12738edab9cdSWarner LoshSet to force the powerpc boot loader to launch the kernel in little
12748edab9cdSWarner Loshendian mode.
1275782df3edSEd Maste.It Va WITHOUT_LOADER_GELI
1276782df3edSEd MasteDisable inclusion of GELI crypto support in the boot chain binaries.
127730323356SWarner Losh.Pp
127830323356SWarner LoshThis is a default setting on
1279*de19b521SDimitry Andricsparc64/sparc64.
12808edab9cdSWarner Losh.It Va WITH_LOADER_GELI
12818edab9cdSWarner LoshSet to build GELI bootloader support.
12828edab9cdSWarner Losh.Pp
12838edab9cdSWarner LoshThis is a default setting on
1284*de19b521SDimitry Andricamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
12858edab9cdSWarner Losh.It Va WITHOUT_LOADER_LUA
12868edab9cdSWarner LoshSet to not build LUA bindings for the boot loader.
12878edab9cdSWarner Losh.Pp
12888edab9cdSWarner LoshThis is a default setting on
1289*de19b521SDimitry Andricsparc64/sparc64.
12906f7527f0SEd Maste.It Va WITH_LOADER_LUA
12916f7527f0SEd MasteSet to build LUA bindings for the boot loader.
129230323356SWarner Losh.Pp
129330323356SWarner LoshThis is a default setting on
1294*de19b521SDimitry Andricamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1295b8f3641fSKyle Evans.It Va WITHOUT_LOADER_OFW
1296b8f3641fSKyle EvansDisable building of openfirmware bootloader components.
1297b8f3641fSKyle Evans.Pp
1298b8f3641fSKyle EvansThis is a default setting on
1299*de19b521SDimitry Andricamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1300b8f3641fSKyle Evans.It Va WITH_LOADER_OFW
1301b8f3641fSKyle EvansSet to build openfirmware bootloader components.
1302b8f3641fSKyle Evans.Pp
1303b8f3641fSKyle EvansThis is a default setting on
1304*de19b521SDimitry Andricsparc64/sparc64.
1305b8f3641fSKyle Evans.It Va WITHOUT_LOADER_UBOOT
1306b8f3641fSKyle EvansDisable building of ubldr.
1307b8f3641fSKyle Evans.Pp
1308b8f3641fSKyle EvansThis is a default setting on
13098ccac680SEd Masteamd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64 and sparc64/sparc64.
1310b8f3641fSKyle Evans.It Va WITH_LOADER_UBOOT
1311b8f3641fSKyle EvansSet to build ubldr.
1312b8f3641fSKyle Evans.Pp
1313b8f3641fSKyle EvansThis is a default setting on
1314*de19b521SDimitry Andricarm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
13151f7d1483SEd Maste.It Va WITH_LOADER_VERBOSE
13161f7d1483SEd MasteSet to build with extra verbose debugging in the loader.
13171f7d1483SEd MasteMay explode already nearly too large loader over the limit.
13181f7d1483SEd MasteUse with care.
13191f7d1483SEd Maste
1320bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_VERIEXEC
1321bfdf8aa9SJohn BaldwinEnable building
1322bfdf8aa9SJohn Baldwin.Xr loader 8
1323*de19b521SDimitry Andricwith support for verification similar to Verified Exec.
1324bfdf8aa9SJohn Baldwin.Pp
1325*de19b521SDimitry AndricDepends on
1326*de19b521SDimitry Andric.Va WITH_BEARSSL .
1327bfdf8aa9SJohn BaldwinWhen set, these options are also in effect:
1328bfdf8aa9SJohn Baldwin.Pp
1329bfdf8aa9SJohn Baldwin.Bl -inset -compact
1330bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT
1331bfdf8aa9SJohn Baldwin(unless
1332bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_EFI_SECUREBOOT
1333bfdf8aa9SJohn Baldwinis set explicitly)
1334bfdf8aa9SJohn Baldwin.El
1335*de19b521SDimitry Andric.It Va WITH_LOADER_VERIEXEC_PASS_MANIFEST
1336*de19b521SDimitry AndricEnable building
1337*de19b521SDimitry Andric.Xr loader 8
1338*de19b521SDimitry Andricwith support to pass a verified manifest to the kernel.
1339*de19b521SDimitry AndricThe kernel has to be built with a module to parse the manifest.
1340*de19b521SDimitry Andric.Pp
1341*de19b521SDimitry AndricDepends on
1342*de19b521SDimitry Andric.Va WITH_LOADER_VERIEXEC .
13431f7d1483SEd Maste.It Va WITHOUT_LOADER_ZFS
13441f7d1483SEd MasteSet to not build ZFS file system boot loader support.
134590be798eSDimitry Andric.It Va WITHOUT_LOCALES
134690be798eSDimitry AndricSet to not build localization files; see
134790be798eSDimitry Andric.Xr locale 1 .
134890be798eSDimitry Andric.It Va WITHOUT_LOCATE
134990be798eSDimitry AndricSet to not build
135090be798eSDimitry Andric.Xr locate 1
135190be798eSDimitry Andricand related programs.
135290be798eSDimitry Andric.It Va WITHOUT_LPR
135390be798eSDimitry AndricSet to not build
135490be798eSDimitry Andric.Xr lpr 1
135590be798eSDimitry Andricand related programs.
135690be798eSDimitry Andric.It Va WITHOUT_LS_COLORS
135790be798eSDimitry AndricSet to build
135890be798eSDimitry Andric.Xr ls 1
135990be798eSDimitry Andricwithout support for colors to distinguish file types.
136090be798eSDimitry Andric.It Va WITHOUT_LZMA_SUPPORT
136190be798eSDimitry AndricSet to build some programs without optional lzma compression support.
136290be798eSDimitry Andric.It Va WITHOUT_MAIL
136390be798eSDimitry AndricSet to not build any mail support (MUA or MTA).
1364344e2bb9SEd MasteWhen set, it enforces these options:
136590be798eSDimitry Andric.Pp
136690be798eSDimitry Andric.Bl -item -compact
136790be798eSDimitry Andric.It
136890be798eSDimitry Andric.Va WITHOUT_DMAGENT
136990be798eSDimitry Andric.It
137090be798eSDimitry Andric.Va WITHOUT_MAILWRAPPER
137190be798eSDimitry Andric.It
137290be798eSDimitry Andric.Va WITHOUT_SENDMAIL
137390be798eSDimitry Andric.El
137490be798eSDimitry Andric.It Va WITHOUT_MAILWRAPPER
137590be798eSDimitry AndricSet to not build the
137690be798eSDimitry Andric.Xr mailwrapper 8
137790be798eSDimitry AndricMTA selector.
137890be798eSDimitry Andric.It Va WITHOUT_MAKE
137990be798eSDimitry AndricSet to not install
138090be798eSDimitry Andric.Xr make 1
138190be798eSDimitry Andricand related support files.
138274782f0eSEnji Cooper.It Va WITHOUT_MAKE_CHECK_USE_SANDBOX
138374782f0eSEnji CooperSet to not execute
138474782f0eSEnji Cooper.Dq Li "make check"
138574782f0eSEnji Cooperin limited sandbox mode.
138674782f0eSEnji CooperThis option should be paired with
138774782f0eSEnji Cooper.Va WITH_INSTALL_AS_USER
138874782f0eSEnji Cooperif executed as an unprivileged user.
138974782f0eSEnji CooperSee
139074782f0eSEnji Cooper.Xr tests 7
139174782f0eSEnji Cooperfor more details.
139290be798eSDimitry Andric.It Va WITHOUT_MAN
139390be798eSDimitry AndricSet to not build manual pages.
1394344e2bb9SEd MasteWhen set, these options are also in effect:
139590be798eSDimitry Andric.Pp
139690be798eSDimitry Andric.Bl -inset -compact
139790be798eSDimitry Andric.It Va WITHOUT_MAN_UTILS
139890be798eSDimitry Andric(unless
139990be798eSDimitry Andric.Va WITH_MAN_UTILS
140090be798eSDimitry Andricis set explicitly)
140190be798eSDimitry Andric.El
140290be798eSDimitry Andric.It Va WITHOUT_MANCOMPRESS
140390be798eSDimitry AndricSet to not to install compressed man pages.
140490be798eSDimitry AndricOnly the uncompressed versions will be installed.
140590be798eSDimitry Andric.It Va WITHOUT_MAN_UTILS
140690be798eSDimitry AndricSet to not build utilities for manual pages,
140790be798eSDimitry Andric.Xr apropos 1 ,
140890be798eSDimitry Andric.Xr makewhatis 1 ,
140990be798eSDimitry Andric.Xr man 1 ,
141090be798eSDimitry Andric.Xr whatis 1 ,
141190be798eSDimitry Andric.Xr manctl 8 ,
141290be798eSDimitry Andricand related support files.
1413cc2520d2SSimon J. Gerraty.It Va WITH_META_MODE
1414344e2bb9SEd MasteCreate
1415be894451SBryan Drewery.Xr make 1
1416be894451SBryan Drewerymeta files when building, which can provide a reliable incremental build when
1417be894451SBryan Dreweryusing
1418be894451SBryan Drewery.Xr filemon 4 .
1419344e2bb9SEd MasteThe meta file is created in OBJDIR as
1420be894451SBryan Drewery.Pa target.meta .
1421344e2bb9SEd MasteThese meta files track the command that was executed, its output, and the
1422344e2bb9SEd Mastecurrent directory.
14232710e62cSBryan DreweryThe
14247f76a95cSBryan Drewery.Xr filemon 4
14252710e62cSBryan Drewerymodule is required unless
14262710e62cSBryan Drewery.Va NO_FILEMON
14272710e62cSBryan Dreweryis defined.
1428344e2bb9SEd MasteWhen the module is loaded, any files used by the commands executed are
1429344e2bb9SEd Mastetracked as dependencies for the target in its meta file.
1430344e2bb9SEd MasteThe target is considered out-of-date and rebuilt if any of these
1431344e2bb9SEd Masteconditions are true compared to the last build:
1432be894451SBryan Drewery.Bl -bullet -compact
1433be894451SBryan Drewery.It
1434be894451SBryan DreweryThe command to execute changes.
1435be894451SBryan Drewery.It
1436be894451SBryan DreweryThe current working directory changes.
1437be894451SBryan Drewery.It
1438a4a2269eSBryan DreweryThe target's meta file is missing.
1439a4a2269eSBryan Drewery.It
1440a4a2269eSBryan DreweryThe target's meta file is missing filemon data when filemon is loaded
1441a4a2269eSBryan Dreweryand a previous run did not have it loaded.
1442be894451SBryan Drewery.It
1443be894451SBryan Drewery[requires
1444be894451SBryan Drewery.Xr filemon 4 ]
1445be894451SBryan DreweryFiles read, executed or linked to are newer than the target.
1446be894451SBryan Drewery.It
1447be894451SBryan Drewery[requires
1448be894451SBryan Drewery.Xr filemon 4 ]
1449be894451SBryan DreweryFiles read, written, executed or linked are missing.
1450be894451SBryan Drewery.El
14517f76a95cSBryan DreweryThe meta files can also be useful for debugging.
14527f76a95cSBryan Drewery.Pp
1453344e2bb9SEd MasteThe build hides commands that are executed unless
14547f76a95cSBryan Drewery.Va NO_SILENT
14557f76a95cSBryan Dreweryis defined.
1456344e2bb9SEd MasteErrors cause
14572710e62cSBryan Drewery.Xr make 1
14582710e62cSBryan Dreweryto show some of its environment for further debugging.
14590a70ef02SBryan Drewery.Pp
1460be894451SBryan DreweryThe build operates as it normally would otherwise.
1461be894451SBryan DreweryThis option originally invoked a different build system but that was renamed
1462be894451SBryan Dreweryto
1463be894451SBryan Drewery.Va WITH_DIRDEPS_BUILD .
1464be894451SBryan Drewery.Pp
1465ba852870SBryan DreweryThis must be set in the environment, make command line, or
14660a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
14670a70ef02SBryan Drewerynot
14680a70ef02SBryan Drewery.Pa /etc/src.conf .
1469912aad0fSKyle Evans.It Va WITHOUT_MLX5TOOL
1470912aad0fSKyle EvansSet to not build
1471912aad0fSKyle Evans.Xr mlx5tool 8
1472912aad0fSKyle Evans.Pp
1473912aad0fSKyle EvansThis is a default setting on
1474*de19b521SDimitry Andricarm/arm, arm/armv6, arm/armv7, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1475912aad0fSKyle Evans.It Va WITH_MLX5TOOL
1476912aad0fSKyle EvansSet to build
1477912aad0fSKyle Evans.Xr mlx5tool 8
1478912aad0fSKyle Evans.Pp
1479912aad0fSKyle EvansThis is a default setting on
1480*de19b521SDimitry Andricamd64/amd64, arm64/aarch64, i386/i386 and sparc64/sparc64.
148190be798eSDimitry Andric.It Va WITHOUT_NDIS
148290be798eSDimitry AndricSet to not build programs and libraries
148390be798eSDimitry Andricrelated to NDIS emulation support.
148490be798eSDimitry Andric.It Va WITHOUT_NETCAT
148590be798eSDimitry AndricSet to not build
148690be798eSDimitry Andric.Xr nc 1
148790be798eSDimitry Andricutility.
148890be798eSDimitry Andric.It Va WITHOUT_NETGRAPH
148990be798eSDimitry AndricSet to not build applications to support
149090be798eSDimitry Andric.Xr netgraph 4 .
1491344e2bb9SEd MasteWhen set, it enforces these options:
149290be798eSDimitry Andric.Pp
149390be798eSDimitry Andric.Bl -item -compact
149490be798eSDimitry Andric.It
149590be798eSDimitry Andric.Va WITHOUT_ATM
149690be798eSDimitry Andric.It
149790be798eSDimitry Andric.Va WITHOUT_BLUETOOTH
1498bf64e879SBryan Drewery.El
1499bf64e879SBryan Drewery.Pp
1500bf64e879SBryan DreweryWhen set, these options are also in effect:
1501bf64e879SBryan Drewery.Pp
1502bf64e879SBryan Drewery.Bl -inset -compact
1503bf64e879SBryan Drewery.It Va WITHOUT_NETGRAPH_SUPPORT
1504bf64e879SBryan Drewery(unless
1505bf64e879SBryan Drewery.Va WITH_NETGRAPH_SUPPORT
1506bf64e879SBryan Dreweryis set explicitly)
150790be798eSDimitry Andric.El
150890be798eSDimitry Andric.It Va WITHOUT_NETGRAPH_SUPPORT
150990be798eSDimitry AndricSet to build libraries, programs, and kernel modules without netgraph support.
151090be798eSDimitry Andric.It Va WITHOUT_NIS
151190be798eSDimitry AndricSet to not build
151290be798eSDimitry Andric.Xr NIS 8
151390be798eSDimitry Andricsupport and related programs.
151490be798eSDimitry AndricIf set, you might need to adopt your
151590be798eSDimitry Andric.Xr nsswitch.conf 5
151690be798eSDimitry Andricand remove
151790be798eSDimitry Andric.Sq nis
151890be798eSDimitry Andricentries.
151990be798eSDimitry Andric.It Va WITHOUT_NLS
152090be798eSDimitry AndricSet to not build NLS catalogs.
152157a87b06SEnji CooperWhen set, it enforces these options:
152257a87b06SEnji Cooper.Pp
152357a87b06SEnji Cooper.Bl -item -compact
152457a87b06SEnji Cooper.It
152557a87b06SEnji Cooper.Va WITHOUT_NLS_CATALOGS
152657a87b06SEnji Cooper.El
152790be798eSDimitry Andric.It Va WITHOUT_NLS_CATALOGS
152890be798eSDimitry AndricSet to not build NLS catalog support for
152990be798eSDimitry Andric.Xr csh 1 .
153090be798eSDimitry Andric.It Va WITHOUT_NS_CACHING
153190be798eSDimitry AndricSet to disable name caching in the
153290be798eSDimitry Andric.Pa nsswitch
153390be798eSDimitry Andricsubsystem.
153490be798eSDimitry AndricThe generic caching daemon,
153590be798eSDimitry Andric.Xr nscd 8 ,
153690be798eSDimitry Andricwill not be built either if this option is set.
153790be798eSDimitry Andric.It Va WITHOUT_NTP
153890be798eSDimitry AndricSet to not build
153990be798eSDimitry Andric.Xr ntpd 8
154090be798eSDimitry Andricand related programs.
15418edab9cdSWarner Losh.It Va WITHOUT_NVME
15428edab9cdSWarner LoshSet to not build nvme related tools and kernel modules.
15438edab9cdSWarner Losh.Pp
15448edab9cdSWarner LoshThis is a default setting on
1545*de19b521SDimitry Andricarm/arm, arm/armv6, arm/armv7, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
15468edab9cdSWarner Losh.It Va WITH_NVME
15478edab9cdSWarner LoshSet to build nvme related tools and kernel modules.
15488edab9cdSWarner Losh
15498edab9cdSWarner Losh.Pp
15508edab9cdSWarner LoshThis is a default setting on
1551*de19b521SDimitry Andricamd64/amd64, arm64/aarch64 and i386/i386.
155290be798eSDimitry Andric.It Va WITH_OFED
155390be798eSDimitry AndricSet to build the
155490be798eSDimitry Andric.Dq "OpenFabrics Enterprise Distribution"
155590be798eSDimitry AndricInfiniband software stack.
15564a3caf80SKonstantin Belousov.It Va WITH_OFED_EXTRA
15574a3caf80SKonstantin BelousovSet to build the non-essential components of the
15584a3caf80SKonstantin Belousov.Dq "OpenFabrics Enterprise Distribution"
15594a3caf80SKonstantin BelousovInfiniband software stack, mostly examples.
156090be798eSDimitry Andric.It Va WITH_OPENLDAP
156190be798eSDimitry AndricEnable building openldap support for kerberos.
1562b0840a28SDimitry Andric.It Va WITHOUT_OPENMP
1563b0840a28SDimitry AndricSet to not build LLVM's OpenMP runtime.
1564b0840a28SDimitry Andric.Pp
1565b0840a28SDimitry AndricThis is a default setting on
1566*de19b521SDimitry Andricarm/arm, arm/armv6, arm/armv7, arm64/aarch64, riscv/riscv64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and sparc64/sparc64.
1567b0840a28SDimitry Andric.It Va WITH_OPENMP
1568b0840a28SDimitry AndricSet to build LLVM's OpenMP runtime.
1569b0840a28SDimitry Andric.Pp
1570b0840a28SDimitry AndricThis is a default setting on
1571*de19b521SDimitry Andricamd64/amd64 and i386/i386.
157290be798eSDimitry Andric.It Va WITHOUT_OPENSSH
157390be798eSDimitry AndricSet to not build OpenSSH.
157490be798eSDimitry Andric.It Va WITHOUT_OPENSSL
157590be798eSDimitry AndricSet to not build OpenSSL.
1576344e2bb9SEd MasteWhen set, it enforces these options:
157790be798eSDimitry Andric.Pp
157890be798eSDimitry Andric.Bl -item -compact
157990be798eSDimitry Andric.It
158090be798eSDimitry Andric.Va WITHOUT_KERBEROS
158190be798eSDimitry Andric.It
158290be798eSDimitry Andric.Va WITHOUT_OPENSSH
158390be798eSDimitry Andric.El
158490be798eSDimitry Andric.Pp
1585344e2bb9SEd MasteWhen set, these options are also in effect:
158690be798eSDimitry Andric.Pp
158790be798eSDimitry Andric.Bl -inset -compact
158890be798eSDimitry Andric.It Va WITHOUT_GSSAPI
158990be798eSDimitry Andric(unless
159090be798eSDimitry Andric.Va WITH_GSSAPI
159190be798eSDimitry Andricis set explicitly)
159290be798eSDimitry Andric.El
159390be798eSDimitry Andric.It Va WITHOUT_PAM
159490be798eSDimitry AndricSet to not build PAM library and modules.
159590be798eSDimitry Andric.Bf -symbolic
159690be798eSDimitry AndricThis option is deprecated and does nothing.
159790be798eSDimitry Andric.Ef
1598bf64e879SBryan DreweryWhen set, these options are also in effect:
159990be798eSDimitry Andric.Pp
1600bf64e879SBryan Drewery.Bl -inset -compact
1601bf64e879SBryan Drewery.It Va WITHOUT_PAM_SUPPORT
1602bf64e879SBryan Drewery(unless
1603bf64e879SBryan Drewery.Va WITH_PAM_SUPPORT
1604bf64e879SBryan Dreweryis set explicitly)
160590be798eSDimitry Andric.El
160690be798eSDimitry Andric.It Va WITHOUT_PAM_SUPPORT
160790be798eSDimitry AndricSet to build some programs without PAM support, particularly
160890be798eSDimitry Andric.Xr ftpd 8
160990be798eSDimitry Andricand
161090be798eSDimitry Andric.Xr ppp 8 .
161190be798eSDimitry Andric.It Va WITHOUT_PF
161290be798eSDimitry AndricSet to not build PF firewall package.
1613344e2bb9SEd MasteWhen set, it enforces these options:
161490be798eSDimitry Andric.Pp
161590be798eSDimitry Andric.Bl -item -compact
161690be798eSDimitry Andric.It
161790be798eSDimitry Andric.Va WITHOUT_AUTHPF
161890be798eSDimitry Andric.El
1619b3a27c81SEd Maste.It Va WITH_PIE
1620b3a27c81SEd MasteBuild dynamically linked binaries as
1621b3a27c81SEd MastePosition-Independent Executable (PIE).
162290be798eSDimitry Andric.It Va WITHOUT_PKGBOOTSTRAP
162390be798eSDimitry AndricSet to not build
162490be798eSDimitry Andric.Xr pkg 7
162590be798eSDimitry Andricbootstrap tool.
162690be798eSDimitry Andric.It Va WITHOUT_PMC
162790be798eSDimitry AndricSet to not build
162890be798eSDimitry Andric.Xr pmccontrol 8
162990be798eSDimitry Andricand related programs.
163090be798eSDimitry Andric.It Va WITHOUT_PORTSNAP
163190be798eSDimitry AndricSet to not build or install
163290be798eSDimitry Andric.Xr portsnap 8
163390be798eSDimitry Andricand related files.
163445b8de2dSEd MasteWhen set, it enforces these options:
163545b8de2dSEd Maste.Pp
163645b8de2dSEd Maste.Bl -item -compact
163745b8de2dSEd Maste.It
163845b8de2dSEd Maste.Va WITHOUT_FREEBSD_UPDATE
163945b8de2dSEd Maste.El
164090be798eSDimitry Andric.It Va WITHOUT_PPP
164190be798eSDimitry AndricSet to not build
164290be798eSDimitry Andric.Xr ppp 8
164390be798eSDimitry Andricand related programs.
164490be798eSDimitry Andric.It Va WITHOUT_PROFILE
16454c033a73SEnji CooperSet to not build profiled libraries for use with
16464c033a73SEnji Cooper.Xr gprof 8 .
16470780f5c3SJohn Baldwin.Pp
16480780f5c3SJohn BaldwinThis is a default setting on
1649e8788097SKonstantin Belousovmips/mips64el, mips/mips64, mips/mips64elhf and mips/mips64hf.
16504c033a73SEnji Cooper.It Va WITH_PROFILE
16514c033a73SEnji CooperSet to build profiled libraries for use with
16524c033a73SEnji Cooper.Xr gprof 8 .
16534c033a73SEnji Cooper.Pp
16544c033a73SEnji CooperThis is a default setting on
1655*de19b521SDimitry Andricamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64, mips/mipsel, mips/mips, mips/mipsn32, mips/mipselhf, mips/mipshf and sparc64/sparc64.
165690be798eSDimitry Andric.It Va WITHOUT_QUOTAS
165790be798eSDimitry AndricSet to not build
165823a6b49aSEdward Tomasz Napierala.Xr quota 1
165990be798eSDimitry Andricand related programs.
16600e0e9604SEnji Cooper.It Va WITHOUT_RADIUS_SUPPORT
16610e0e9604SEnji CooperSet to not build radius support into various applications, like
16620e0e9604SEnji Cooper.Xr pam_radius 8
16630e0e9604SEnji Cooperand
16640e0e9604SEnji Cooper.Xr ppp 8 .
166588342134SEnji Cooper.It Va WITH_RATELIMIT
166688342134SEnji CooperSet to build the system with rate limit support.
166788342134SEnji Cooper.Pp
166888342134SEnji CooperThis makes
166988342134SEnji Cooper.Dv SO_MAX_PACING_RATE
167088342134SEnji Coopereffective in
167188342134SEnji Cooper.Xr getsockopt 2 ,
167288342134SEnji Cooperand
167388342134SEnji Cooper.Ar txrlimit
167488342134SEnji Coopersupport in
167588342134SEnji Cooper.Xr ifconfig 8 ,
167688342134SEnji Cooperby proxy.
16770e0e9604SEnji Cooper.It Va WITHOUT_RBOOTD
16780e0e9604SEnji CooperSet to not build or install
16790e0e9604SEnji Cooper.Xr rbootd 8 .
168085d55309SEd Maste.It Va WITH_REPRODUCIBLE_BUILD
168185d55309SEd MasteSet to exclude build metadata (such as the build time, user, or host)
168285d55309SEd Mastefrom the kernel, boot loaders, and uname output, so that builds produce
168385d55309SEd Mastebit-for-bit identical output.
168490be798eSDimitry Andric.It Va WITHOUT_RESCUE
168590be798eSDimitry AndricSet to not build
168690be798eSDimitry Andric.Xr rescue 8 .
16878ccac680SEd Maste.It Va WITH_RETPOLINE
16888ccac680SEd MasteSet to build the base system with the retpoline speculative execution
16898ccac680SEd Mastevulnerability mitigation for CVE-2017-5715.
169090be798eSDimitry Andric.It Va WITHOUT_ROUTED
169190be798eSDimitry AndricSet to not build
169290be798eSDimitry Andric.Xr routed 8
169390be798eSDimitry Andricutility.
16944c033a73SEnji Cooper.It Va WITH_RPCBIND_WARMSTART_SUPPORT
16954c033a73SEnji CooperSet to build
16964c033a73SEnji Cooper.Xr rpcbind 8
16974c033a73SEnji Cooperwith warmstart support.
169890be798eSDimitry Andric.It Va WITHOUT_SENDMAIL
169990be798eSDimitry AndricSet to not build
170090be798eSDimitry Andric.Xr sendmail 8
170190be798eSDimitry Andricand related programs.
1702e8788097SKonstantin Belousov.It Va WITHOUT_SERVICESDB
1703e8788097SKonstantin BelousovSet to not install
1704e8788097SKonstantin Belousov.Pa /var/db/services.db .
170590be798eSDimitry Andric.It Va WITHOUT_SETUID_LOGIN
170690be798eSDimitry AndricSet this to disable the installation of
170790be798eSDimitry Andric.Xr login 1
170890be798eSDimitry Andricas a set-user-ID root program.
170990be798eSDimitry Andric.It Va WITHOUT_SHAREDOCS
171090be798eSDimitry AndricSet to not build the
171190be798eSDimitry Andric.Bx 4.4
171290be798eSDimitry Andriclegacy docs.
171390be798eSDimitry Andric.It Va WITH_SHARED_TOOLCHAIN
1714*de19b521SDimitry AndricSet to build the toolchain binaries as dynamically linked executables.
171590be798eSDimitry AndricThe set includes
171690be798eSDimitry Andric.Xr cc 1 ,
171790be798eSDimitry Andric.Xr make 1
171890be798eSDimitry Andricand necessary utilities like assembler, linker and library archive manager.
171990be798eSDimitry Andric.It Va WITH_SORT_THREADS
172090be798eSDimitry AndricSet to enable threads in
172190be798eSDimitry Andric.Xr sort 1 .
172290be798eSDimitry Andric.It Va WITHOUT_SOURCELESS
172390be798eSDimitry AndricSet to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
1724344e2bb9SEd MasteWhen set, it enforces these options:
172590be798eSDimitry Andric.Pp
172690be798eSDimitry Andric.Bl -item -compact
172790be798eSDimitry Andric.It
172890be798eSDimitry Andric.Va WITHOUT_SOURCELESS_HOST
172990be798eSDimitry Andric.It
173090be798eSDimitry Andric.Va WITHOUT_SOURCELESS_UCODE
173190be798eSDimitry Andric.El
173290be798eSDimitry Andric.It Va WITHOUT_SOURCELESS_HOST
173390be798eSDimitry AndricSet to not build kernel modules that include sourceless native code for host CPU.
173490be798eSDimitry Andric.It Va WITHOUT_SOURCELESS_UCODE
173590be798eSDimitry AndricSet to not build kernel modules that include sourceless microcode.
173690be798eSDimitry Andric.It Va WITHOUT_SSP
173790be798eSDimitry AndricSet to not build world with propolice stack smashing protection.
1738cc68b6e5SEd Maste.Pp
1739344e2bb9SEd MasteThis is a default setting on
174036e8c7bbSEd Mastemips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
17410cd582c8SEnji Cooper.It Va WITH_SSP
17420cd582c8SEnji CooperSet to build world with propolice stack smashing protection.
17430cd582c8SEnji Cooper.Pp
1744344e2bb9SEd MasteThis is a default setting on
1745*de19b521SDimitry Andricamd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and sparc64/sparc64.
1746cc2520d2SSimon J. Gerraty.It Va WITH_STAGING
1747cc2520d2SSimon J. GerratyEnable staging of files to a stage tree.
1748cc2520d2SSimon J. GerratyThis can be best thought of as auto-install to
1749cc2520d2SSimon J. Gerraty.Va DESTDIR
1750cc2520d2SSimon J. Gerratywith some extra meta data to ensure dependencies can be tracked.
1751cc2520d2SSimon J. GerratyDepends on
175232b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD .
1753344e2bb9SEd MasteWhen set, these options are also in effect:
1754cc2520d2SSimon J. Gerraty.Pp
1755cc2520d2SSimon J. Gerraty.Bl -inset -compact
1756cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_MAN
1757cc2520d2SSimon J. Gerraty(unless
1758cc2520d2SSimon J. Gerraty.Va WITHOUT_STAGING_MAN
1759cc2520d2SSimon J. Gerratyis set explicitly)
1760cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_PROG
1761cc2520d2SSimon J. Gerraty(unless
1762cc2520d2SSimon J. Gerraty.Va WITHOUT_STAGING_PROG
1763cc2520d2SSimon J. Gerratyis set explicitly)
1764cc2520d2SSimon J. Gerraty.El
17650a70ef02SBryan Drewery.Pp
1766ba852870SBryan DreweryThis must be set in the environment, make command line, or
17670a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
17680a70ef02SBryan Drewerynot
17690a70ef02SBryan Drewery.Pa /etc/src.conf .
1770cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_MAN
1771344e2bb9SEd MasteEnable staging of man pages to stage tree.
1772cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_PROG
1773cc2520d2SSimon J. GerratyEnable staging of PROGs to stage tree.
1774cc2520d2SSimon J. Gerraty.It Va WITH_STALE_STAGED
1775cc2520d2SSimon J. GerratyCheck staged files are not stale.
1776*de19b521SDimitry Andric.It Va WITHOUT_STATS
1777*de19b521SDimitry AndricSet to neither build nor install
1778*de19b521SDimitry Andric.Lb libstats
1779*de19b521SDimitry Andricand dependent binaries.
178090be798eSDimitry Andric.It Va WITH_SVN
178190be798eSDimitry AndricSet to install
178290be798eSDimitry Andric.Xr svnlite 1
178390be798eSDimitry Andricas
178490be798eSDimitry Andric.Xr svn 1 .
178590be798eSDimitry Andric.It Va WITHOUT_SVNLITE
178690be798eSDimitry AndricSet to not build
178790be798eSDimitry Andric.Xr svnlite 1
178890be798eSDimitry Andricand related programs.
178990be798eSDimitry Andric.It Va WITHOUT_SYMVER
179090be798eSDimitry AndricSet to disable symbol versioning when building shared libraries.
179190be798eSDimitry Andric.It Va WITHOUT_SYSCONS
179290be798eSDimitry AndricSet to not build
179390be798eSDimitry Andric.Xr syscons 4
179490be798eSDimitry Andricsupport files such as keyboard maps, fonts, and screen output maps.
1795cc2520d2SSimon J. Gerraty.It Va WITH_SYSROOT
1796cc2520d2SSimon J. GerratyEnable use of sysroot during build.
1797cc2520d2SSimon J. GerratyDepends on
179832b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD .
17990a70ef02SBryan Drewery.Pp
1800ba852870SBryan DreweryThis must be set in the environment, make command line, or
18010a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
18020a70ef02SBryan Drewerynot
18030a70ef02SBryan Drewery.Pa /etc/src.conf .
18048095b3c2SBryan Drewery.It Va WITHOUT_SYSTEM_COMPILER
18058095b3c2SBryan DrewerySet to not opportunistically skip building a cross-compiler during the
1806a9da9b86SBryan Drewerybootstrap phase of the build.
18078095b3c2SBryan DreweryNormally, if the currently installed compiler matches the planned bootstrap
18088095b3c2SBryan Drewerycompiler type and revision, then it will not be built.
1809a9da9b86SBryan DreweryThis does not prevent a compiler from being built for installation though,
1810a9da9b86SBryan Dreweryonly for building one for the build itself.
1811a9da9b86SBryan DreweryThe
1812a9da9b86SBryan Drewery.Va WITHOUT_CLANG
1813a9da9b86SBryan Dreweryand
1814a9da9b86SBryan Drewery.Va WITHOUT_GCC
1815a9da9b86SBryan Dreweryoptions control those.
1816be9309deSBryan Drewery.It Va WITHOUT_SYSTEM_LINKER
1817be9309deSBryan DrewerySet to not opportunistically skip building a cross-linker during the
1818be9309deSBryan Drewerybootstrap phase of the build.
1819be9309deSBryan DreweryNormally, if the currently installed linker matches the planned bootstrap
1820be9309deSBryan Drewerylinker type and revision, then it will not be built.
1821be9309deSBryan DreweryThis does not prevent a linker from being built for installation though,
1822be9309deSBryan Dreweryonly for building one for the build itself.
1823be9309deSBryan DreweryThe
1824be9309deSBryan Drewery.Va WITHOUT_LLD
1825be9309deSBryan Dreweryand
1826be9309deSBryan Drewery.Va WITHOUT_BINUTILS
1827be9309deSBryan Dreweryoptions control those.
1828be9309deSBryan Drewery.Pp
1829be9309deSBryan DreweryThis option is only relevant when
1830be9309deSBryan Drewery.Va WITH_LLD_BOOTSTRAP
1831be9309deSBryan Dreweryis set.
183293da8366SEnji Cooper.It Va WITHOUT_TALK
183393da8366SEnji CooperSet to not build or install
183493da8366SEnji Cooper.Xr talk 1
183593da8366SEnji Cooperand
183693da8366SEnji Cooper.Xr talkd 8 .
18370e0e9604SEnji Cooper.It Va WITHOUT_TCP_WRAPPERS
18380e0e9604SEnji CooperSet to not build or install
18390e0e9604SEnji Cooper.Xr tcpd 8 ,
18400e0e9604SEnji Cooperand related utilities.
184190be798eSDimitry Andric.It Va WITHOUT_TCSH
184290be798eSDimitry AndricSet to not build and install
184390be798eSDimitry Andric.Pa /bin/csh
184490be798eSDimitry Andric(which is
184590be798eSDimitry Andric.Xr tcsh 1 ) .
184690be798eSDimitry Andric.It Va WITHOUT_TELNET
184790be798eSDimitry AndricSet to not build
184823a6b49aSEdward Tomasz Napierala.Xr telnet 1
184990be798eSDimitry Andricand related programs.
185018c6fc4cSJulio Merino.It Va WITHOUT_TESTS
185118c6fc4cSJulio MerinoSet to not build nor install the
185290be798eSDimitry Andric.Fx
185390be798eSDimitry AndricTest Suite in
185490be798eSDimitry Andric.Pa /usr/tests/ .
185590be798eSDimitry AndricSee
185690be798eSDimitry Andric.Xr tests 7
185790be798eSDimitry Andricfor more details.
185818c6fc4cSJulio MerinoThis also disables the build of all test-related dependencies, including ATF.
1859344e2bb9SEd MasteWhen set, it enforces these options:
1860c5d09a87SGlen Barber.Pp
1861c5d09a87SGlen Barber.Bl -item -compact
1862c5d09a87SGlen Barber.It
186316f3fdf5SMark Johnston.Va WITHOUT_DTRACE_TESTS
1864bf64e879SBryan Drewery.El
1865bf64e879SBryan Drewery.Pp
1866bf64e879SBryan DreweryWhen set, these options are also in effect:
1867bf64e879SBryan Drewery.Pp
1868bf64e879SBryan Drewery.Bl -inset -compact
18697840b63aSEnji Cooper.It Va WITHOUT_GOOGLETEST
18707840b63aSEnji Cooper(unless
18717840b63aSEnji Cooper.Va WITH_GOOGLETEST
18727840b63aSEnji Cooperis set explicitly)
1873bf64e879SBryan Drewery.It Va WITHOUT_TESTS_SUPPORT
1874bf64e879SBryan Drewery(unless
1875bf64e879SBryan Drewery.Va WITH_TESTS_SUPPORT
1876bf64e879SBryan Dreweryis set explicitly)
1877c5d09a87SGlen Barber.El
1878c5d09a87SGlen Barber.It Va WITHOUT_TESTS_SUPPORT
1879c5d09a87SGlen BarberSet to disables the build of all test-related dependencies, including ATF.
18807840b63aSEnji CooperWhen set, it enforces these options:
18817840b63aSEnji Cooper.Pp
18827840b63aSEnji Cooper.Bl -item -compact
18837840b63aSEnji Cooper.It
18847840b63aSEnji Cooper.Va WITHOUT_GOOGLETEST
18857840b63aSEnji Cooper.El
188690be798eSDimitry Andric.It Va WITHOUT_TEXTPROC
188790be798eSDimitry AndricSet to not build
188890be798eSDimitry Andricprograms used for text processing.
18890e0e9604SEnji Cooper.It Va WITHOUT_TFTP
18900e0e9604SEnji CooperSet to not build or install
18910e0e9604SEnji Cooper.Xr tftp 1
18920e0e9604SEnji Cooperand
18930e0e9604SEnji Cooper.Xr tftpd 8 .
189490be798eSDimitry Andric.It Va WITHOUT_TOOLCHAIN
1895148bdd15SBrooks DavisSet to not install header or
189690be798eSDimitry Andricprograms used for program development,
189790be798eSDimitry Andriccompilers, debuggers etc.
1898344e2bb9SEd MasteWhen set, it enforces these options:
189990be798eSDimitry Andric.Pp
190090be798eSDimitry Andric.Bl -item -compact
190190be798eSDimitry Andric.It
190290be798eSDimitry Andric.Va WITHOUT_BINUTILS
190390be798eSDimitry Andric.It
190490be798eSDimitry Andric.Va WITHOUT_CLANG
190590be798eSDimitry Andric.It
190690be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS
190790be798eSDimitry Andric.It
190890be798eSDimitry Andric.Va WITHOUT_CLANG_FULL
190990be798eSDimitry Andric.It
191090be798eSDimitry Andric.Va WITHOUT_GCC
191190be798eSDimitry Andric.It
191290be798eSDimitry Andric.Va WITHOUT_GDB
1913c5d09a87SGlen Barber.It
1914c5d09a87SGlen Barber.Va WITHOUT_INCLUDES
19153d02549fSBryan Drewery.It
19166c2b7edaSEd Maste.Va WITHOUT_LLD
19176c2b7edaSEd Maste.It
19183d02549fSBryan Drewery.Va WITHOUT_LLDB
19195b9c3654SEd Maste.It
19205b9c3654SEd Maste.Va WITHOUT_LLVM_COV
192190be798eSDimitry Andric.El
192290be798eSDimitry Andric.It Va WITHOUT_UNBOUND
192390be798eSDimitry AndricSet to not build
192490be798eSDimitry Andric.Xr unbound 8
192590be798eSDimitry Andricand related programs.
1926efb949a6SBryan Drewery.It Va WITHOUT_UNIFIED_OBJDIR
1927efb949a6SBryan DrewerySet to use the historical object directory format for
1928efb949a6SBryan Drewery.Xr build 7
1929efb949a6SBryan Drewerytargets.
1930efb949a6SBryan DreweryFor native-builds and builds done directly in sub-directories the format of
1931efb949a6SBryan Drewery.Pa ${MAKEOBJDIRPREFIX}/${.CURDIR}
1932efb949a6SBryan Dreweryis used,
1933efb949a6SBryan Drewerywhile for cross-builds
1934efb949a6SBryan Drewery.Pa ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR}
1935efb949a6SBryan Dreweryis used.
1936efb949a6SBryan Drewery.Pp
1937efb949a6SBryan DreweryThis option is transitional and will be removed before the 12.0 release,
1938efb949a6SBryan Dreweryat which time
1939efb949a6SBryan Drewery.va WITH_UNIFIED_OBJDIR
1940efb949a6SBryan Drewerywill be enabled permanently.
1941efb949a6SBryan Drewery.Pp
1942efb949a6SBryan DreweryThis must be set in the environment, make command line, or
1943efb949a6SBryan Drewery.Pa /etc/src-env.conf ,
1944efb949a6SBryan Drewerynot
1945efb949a6SBryan Drewery.Pa /etc/src.conf .
194690be798eSDimitry Andric.It Va WITHOUT_USB
194790be798eSDimitry AndricSet to not build USB-related programs and libraries.
1948c5d09a87SGlen Barber.It Va WITHOUT_USB_GADGET_EXAMPLES
1949d1040cedSWarren BlockSet to not build USB gadget kernel modules.
195090be798eSDimitry Andric.It Va WITHOUT_UTMPX
195190be798eSDimitry AndricSet to not build user accounting tools such as
195290be798eSDimitry Andric.Xr last 1 ,
195390be798eSDimitry Andric.Xr users 1 ,
195490be798eSDimitry Andric.Xr who 1 ,
195590be798eSDimitry Andric.Xr ac 8 ,
195690be798eSDimitry Andric.Xr lastlogin 8
195790be798eSDimitry Andricand
195890be798eSDimitry Andric.Xr utx 8 .
1959bfdf8aa9SJohn Baldwin.It Va WITH_VERIEXEC
1960bfdf8aa9SJohn BaldwinEnable building
1961bfdf8aa9SJohn Baldwin.Xr veriexec 8
1962bfdf8aa9SJohn Baldwinwhich loads the contents of verified manifests into the kernel
1963bfdf8aa9SJohn Baldwinfor use by
1964bfdf8aa9SJohn Baldwin.Xr mac_veriexec 4
1965bfdf8aa9SJohn Baldwin.Pp
1966*de19b521SDimitry AndricDepends on
1967*de19b521SDimitry Andric.Va WITH_BEARSSL .
196890be798eSDimitry Andric.It Va WITHOUT_VI
196990be798eSDimitry AndricSet to not build and install vi, view, ex and related programs.
197090be798eSDimitry Andric.It Va WITHOUT_VT
197190be798eSDimitry AndricSet to not build
197290be798eSDimitry Andric.Xr vt 4
197390be798eSDimitry Andricsupport files (fonts and keymaps).
197490be798eSDimitry Andric.It Va WITHOUT_WARNS
197590be798eSDimitry AndricSet this to not add warning flags to the compiler invocations.
197690be798eSDimitry AndricUseful as a temporary workaround when code enters the tree
197790be798eSDimitry Andricwhich triggers warnings in environments that differ from the
1978559f9bfcSJens Schweikhardtoriginal developer.
197990be798eSDimitry Andric.It Va WITHOUT_WIRELESS
198090be798eSDimitry AndricSet to not build programs used for 802.11 wireless networks; especially
198190be798eSDimitry Andric.Xr wpa_supplicant 8
198290be798eSDimitry Andricand
198390be798eSDimitry Andric.Xr hostapd 8 .
1984bf64e879SBryan DreweryWhen set, these options are also in effect:
198590be798eSDimitry Andric.Pp
1986bf64e879SBryan Drewery.Bl -inset -compact
1987bf64e879SBryan Drewery.It Va WITHOUT_WIRELESS_SUPPORT
1988bf64e879SBryan Drewery(unless
1989bf64e879SBryan Drewery.Va WITH_WIRELESS_SUPPORT
1990bf64e879SBryan Dreweryis set explicitly)
199190be798eSDimitry Andric.El
199290be798eSDimitry Andric.It Va WITHOUT_WIRELESS_SUPPORT
199390be798eSDimitry AndricSet to build libraries, programs, and kernel modules without
199490be798eSDimitry Andric802.11 wireless support.
199590be798eSDimitry Andric.It Va WITHOUT_WPA_SUPPLICANT_EAPOL
199690be798eSDimitry AndricBuild
199790be798eSDimitry Andric.Xr wpa_supplicant 8
199890be798eSDimitry Andricwithout support for the IEEE 802.1X protocol and without
199990be798eSDimitry Andricsupport for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS
200090be798eSDimitry Andricprotocols (usable only via 802.1X).
200190be798eSDimitry Andric.It Va WITHOUT_ZFS
20021f7d1483SEd MasteSet to not build ZFS file system kernel module, libraries, and user commands.
200390be798eSDimitry Andric.It Va WITHOUT_ZONEINFO
200490be798eSDimitry AndricSet to not build the timezone database.
20055c021049SEnji CooperWhen set, it enforces these options:
20065c021049SEnji Cooper.Pp
20075c021049SEnji Cooper.Bl -item -compact
20085c021049SEnji Cooper.It
20095c021049SEnji Cooper.Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT
20105c021049SEnji Cooper.It
20115c021049SEnji Cooper.Va WITHOUT_ZONEINFO_OLD_TIMEZONES_SUPPORT
20125c021049SEnji Cooper.El
20135c021049SEnji Cooper.It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
20145c021049SEnji CooperSet to build leapsecond information in to the timezone database.
20155c021049SEnji Cooper.It Va WITH_ZONEINFO_OLD_TIMEZONES_SUPPORT
20165c021049SEnji CooperSet to build backward compatibility timezone aliases in to the timezone
20175c021049SEnji Cooperdatabase.
201890be798eSDimitry Andric.El
201990be798eSDimitry Andric.Sh FILES
202090be798eSDimitry Andric.Bl -tag -compact -width Pa
202190be798eSDimitry Andric.It Pa /etc/src.conf
20220a70ef02SBryan Drewery.It Pa /etc/src-env.conf
202390be798eSDimitry Andric.It Pa /usr/share/mk/bsd.own.mk
202490be798eSDimitry Andric.El
202590be798eSDimitry Andric.Sh SEE ALSO
202690be798eSDimitry Andric.Xr make 1 ,
202790be798eSDimitry Andric.Xr make.conf 5 ,
202890be798eSDimitry Andric.Xr build 7 ,
202990be798eSDimitry Andric.Xr ports 7
203090be798eSDimitry Andric.Sh HISTORY
203190be798eSDimitry AndricThe
203290be798eSDimitry Andric.Nm
203390be798eSDimitry Andricfile appeared in
203490be798eSDimitry Andric.Fx 7.0 .
203590be798eSDimitry Andric.Sh AUTHORS
203688342134SEnji CooperThis manual page was autogenerated by
2037a121d3a8SEnji Cooper.An tools/build/options/makeman .
2038