xref: /freebsd/share/man/man5/src.conf.5 (revision a5798ec8ceeb79c01c579e87d989e352587ccc32)
1b1a0e564SEitan Adler.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman.
2fa07cb9cSRuslan Ermilov.\" $FreeBSD$
3*a5798ec8SEd Maste.Dd February 29, 2020
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.
10363b149ffSEd Maste.It Va WITH_AMD
1048683408cSEd MasteSet to build the legacy
1058683408cSEd Maste.Xr amd 8
1068683408cSEd Masteautomount daemon and related programs.
1078683408cSEd MasteNote that
1088683408cSEd Maste.Xr autofs 5
1098683408cSEd Masteis the preferred automount technique.
110aaa6d7ebSSam Leffler.It Va WITHOUT_APM
111aaa6d7ebSSam LefflerSet to not build
112aaa6d7ebSSam Leffler.Xr apm 8 ,
113aaa6d7ebSSam Leffler.Xr apmd 8
114aaa6d7ebSSam Lefflerand related programs.
115e567b213SRuslan Ermilov.It Va WITHOUT_ASSERT_DEBUG
116e567b213SRuslan ErmilovSet to compile programs and libraries without the
117e567b213SRuslan Ermilov.Xr assert 3
118e567b213SRuslan Ermilovchecks.
119aaa6d7ebSSam Leffler.It Va WITHOUT_AT
120aaa6d7ebSSam LefflerSet to not build
121aaa6d7ebSSam Leffler.Xr at 1
122aaa6d7ebSSam Lefflerand related utilities.
123fa07cb9cSRuslan Ermilov.It Va WITHOUT_ATM
124fa07cb9cSRuslan ErmilovSet to not build
125fa07cb9cSRuslan Ermilovprograms and libraries related to ATM networking.
126fa07cb9cSRuslan Ermilov.It Va WITHOUT_AUDIT
127fa07cb9cSRuslan ErmilovSet to not build audit support into system programs.
128fa07cb9cSRuslan Ermilov.It Va WITHOUT_AUTHPF
129fa07cb9cSRuslan ErmilovSet to not build
130fa07cb9cSRuslan Ermilov.Xr authpf 8 .
13161940879SEnji Cooper.It Va WITHOUT_AUTOFS
13261940879SEnji CooperSet to not build
1334b9f77e4SEdward Tomasz Napierala.Xr autofs 5
13461940879SEnji Cooperrelated programs, libraries, and kernel modules.
135906a1c6cSBryan Drewery.It Va WITHOUT_AUTO_OBJ
136906a1c6cSBryan DreweryDisable automatic creation of objdirs.
137906a1c6cSBryan DreweryThis is enabled by default if the wanted OBJDIR is writable by the current user.
1380a70ef02SBryan Drewery.Pp
139ba852870SBryan DreweryThis must be set in the environment, make command line, or
1400a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
1410a70ef02SBryan Drewerynot
1420a70ef02SBryan Drewery.Pa /etc/src.conf .
143bfdf8aa9SJohn Baldwin.It Va WITH_BEARSSL
144bfdf8aa9SJohn BaldwinBuild the BearSSL library.
145bfdf8aa9SJohn Baldwin.Pp
146bfdf8aa9SJohn BaldwinBearSSL is a tiny SSL library suitable for embedded environments.
147bfdf8aa9SJohn BaldwinFor details see
148bfdf8aa9SJohn Baldwin.Lk http://www.BearSSL.org/
149bfdf8aa9SJohn Baldwin.Pp
150bfdf8aa9SJohn BaldwinThis library is currently only used to perform
151bfdf8aa9SJohn Baldwinsignature verification and related operations
152bfdf8aa9SJohn Baldwinfor Verified Exec and
153bfdf8aa9SJohn Baldwin.Xr loader 8 .
154bfdf8aa9SJohn BaldwinWhen set, these options are also in effect:
155bfdf8aa9SJohn Baldwin.Pp
156bfdf8aa9SJohn Baldwin.Bl -inset -compact
157bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT
158bfdf8aa9SJohn Baldwin(unless
159bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_EFI_SECUREBOOT
160bfdf8aa9SJohn Baldwinis set explicitly)
161bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_VERIEXEC
162bfdf8aa9SJohn Baldwin(unless
163bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_VERIEXEC
164bfdf8aa9SJohn Baldwinis set explicitly)
165bfdf8aa9SJohn Baldwin.It Va WITH_VERIEXEC
166bfdf8aa9SJohn Baldwin(unless
167bfdf8aa9SJohn Baldwin.Va WITHOUT_VERIEXEC
168bfdf8aa9SJohn Baldwinis set explicitly)
169bfdf8aa9SJohn Baldwin.El
17061940879SEnji Cooper.It Va WITHOUT_BHYVE
17161940879SEnji CooperSet to not build or install
17261940879SEnji Cooper.Xr bhyve 8 ,
17361940879SEnji Cooperassociated utilities, and examples.
17461940879SEnji Cooper.Pp
17561940879SEnji CooperThis option only affects amd64/amd64.
1761f3b049dSEd Maste.It Va WITH_BIND_NOW
1771f3b049dSEd MasteBuild all binaries with the
1781f3b049dSEd Maste.Dv DF_BIND_NOW
1791f3b049dSEd Masteflag set to indicate that the run-time loader should perform all relocation
1801f3b049dSEd Masteprocessing at process startup rather than on demand.
18190be798eSDimitry Andric.It Va WITHOUT_BINUTILS
1829f4e04c1SEd MasteDo not build or install GNU
1830179c835SEd Maste.Xr as 1 ,
1849f4e04c1SEd Maste.Xr ld.bfd 1 , and
1859f4e04c1SEd Maste.Xr objdump 1
1860179c835SEd Masteas part
18790be798eSDimitry Andricof the normal system build.
1885be09b10SEd Maste.Pp
189344e2bb9SEd MasteThis is a default setting on
1904cee74dfSEd Mastearm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
1915977355fSBryan Drewery.It Va WITH_BINUTILS
192fa3c36d3SEd MasteBuild and install GNU
193fa3c36d3SEd Maste.Xr as 1
194fa3c36d3SEd Masteon i386 and amd64,
1950179c835SEd Maste.Xr objdump 1 ,
196fa3c36d3SEd Masteand
1970179c835SEd Maste.Xr ld.bfd 1
198fa3c36d3SEd Masteon powerpc as part of the normal system build.
1995977355fSBryan Drewery.Pp
200344e2bb9SEd MasteThis is a default setting on
201429932baSEd Masteamd64/amd64, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc and powerpc/powerpc64.
20290be798eSDimitry Andric.It Va WITHOUT_BINUTILS_BOOTSTRAP
203429932baSEd MasteDo not build GNU binutils
20490be798eSDimitry Andricas part of the bootstrap process.
2055be09b10SEd Maste.Pp
206344e2bb9SEd MasteThis is a default setting on
207429932baSEd Mastearm/armv6, arm/armv7, arm64/aarch64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf.
2085977355fSBryan Drewery.It Va WITH_BINUTILS_BOOTSTRAP
209429932baSEd MasteBuild GNU binutils
2105977355fSBryan Dreweryas part of the bootstrap process.
2115977355fSBryan Drewery.Pp
212344e2bb9SEd MasteThis is a default setting on
213fa3c36d3SEd Masteamd64/amd64, i386/i386, powerpc/powerpc and powerpc/powerpc64.
2140341a043SBryan Drewery.It Va WITHOUT_BLACKLIST
2154650b8aeSEnji CooperSet this if you do not want to build
2164650b8aeSEnji Cooper.Xr blacklistd 8
2174650b8aeSEnji Cooperand
2184650b8aeSEnji Cooper.Xr blacklistctl 8 .
219bf64e879SBryan DreweryWhen set, these options are also in effect:
2200341a043SBryan Drewery.Pp
221bf64e879SBryan Drewery.Bl -inset -compact
222bf64e879SBryan Drewery.It Va WITHOUT_BLACKLIST_SUPPORT
223bf64e879SBryan Drewery(unless
224bf64e879SBryan Drewery.Va WITH_BLACKLIST_SUPPORT
225bf64e879SBryan Dreweryis set explicitly)
2260341a043SBryan Drewery.El
2270341a043SBryan Drewery.It Va WITHOUT_BLACKLIST_SUPPORT
2284650b8aeSEnji CooperSet to build some programs without
2294650b8aeSEnji Cooper.Xr libblacklist 3
2304650b8aeSEnji Coopersupport, like
2310341a043SBryan Drewery.Xr fingerd 8 ,
2320341a043SBryan Drewery.Xr ftpd 8 ,
2330341a043SBryan Dreweryand
2340341a043SBryan Drewery.Xr sshd 8 .
23590be798eSDimitry Andric.It Va WITHOUT_BLUETOOTH
23690be798eSDimitry AndricSet to not build Bluetooth related kernel modules, programs and libraries.
23790be798eSDimitry Andric.It Va WITHOUT_BOOT
23890be798eSDimitry AndricSet to not build the boot blocks and loader.
2390e0e9604SEnji Cooper.It Va WITHOUT_BOOTPARAMD
2400e0e9604SEnji CooperSet to not build or install
2410e0e9604SEnji Cooper.Xr bootparamd 8 .
2420e0e9604SEnji Cooper.It Va WITHOUT_BOOTPD
2430e0e9604SEnji CooperSet to not build or install
2440e0e9604SEnji Cooper.Xr bootpd 8 .
24593da8366SEnji Cooper.It Va WITHOUT_BSDINSTALL
24693da8366SEnji CooperSet to not build
24793da8366SEnji Cooper.Xr bsdinstall 8 ,
24893da8366SEnji Cooper.Xr sade 8 ,
24993da8366SEnji Cooperand related programs.
25090be798eSDimitry Andric.It Va WITHOUT_BSD_CPIO
25190be798eSDimitry AndricSet to not build the BSD licensed version of cpio based on
25290be798eSDimitry Andric.Xr libarchive 3 .
25390be798eSDimitry Andric.It Va WITH_BSD_GREP
25490be798eSDimitry AndricInstall BSD-licensed grep as '[ef]grep' instead of GNU grep.
25590be798eSDimitry Andric.It Va WITHOUT_BSNMP
25690be798eSDimitry AndricSet to not build or install
25790be798eSDimitry Andric.Xr bsnmpd 1
25890be798eSDimitry Andricand related libraries and data files.
25990be798eSDimitry Andric.It Va WITHOUT_BZIP2
26090be798eSDimitry AndricSet to not build contributed bzip2 software as a part of the base system.
26190be798eSDimitry Andric.Bf -symbolic
26290be798eSDimitry AndricThe option has no effect yet.
26390be798eSDimitry Andric.Ef
264bf64e879SBryan DreweryWhen set, these options are also in effect:
26590be798eSDimitry Andric.Pp
266bf64e879SBryan Drewery.Bl -inset -compact
267bf64e879SBryan Drewery.It Va WITHOUT_BZIP2_SUPPORT
268bf64e879SBryan Drewery(unless
269bf64e879SBryan Drewery.Va WITH_BZIP2_SUPPORT
270bf64e879SBryan Dreweryis set explicitly)
27190be798eSDimitry Andric.El
27290be798eSDimitry Andric.It Va WITHOUT_BZIP2_SUPPORT
27390be798eSDimitry AndricSet to build some programs without optional bzip2 support.
27490be798eSDimitry Andric.It Va WITHOUT_CALENDAR
27590be798eSDimitry AndricSet to not build
27690be798eSDimitry Andric.Xr calendar 1 .
27790be798eSDimitry Andric.It Va WITHOUT_CAPSICUM
27890be798eSDimitry AndricSet to not build Capsicum support into system programs.
279344e2bb9SEd MasteWhen set, it enforces these options:
280aced6942SBaptiste Daroussin.Pp
281aced6942SBaptiste Daroussin.Bl -item -compact
282aced6942SBaptiste Daroussin.It
283aced6942SBaptiste Daroussin.Va WITHOUT_CASPER
284aced6942SBaptiste Daroussin.El
285de19b521SDimitry Andric.It Va WITHOUT_CAROOT
286de19b521SDimitry AndricSet to not add the trusted certificates from the Mozilla NSS bundle to
287de19b521SDimitry Andricbase.
28890be798eSDimitry Andric.It Va WITHOUT_CASPER
28990be798eSDimitry AndricSet to not build Casper program and related libraries.
2901c01e4f8SBryan Drewery.It Va WITH_CCACHE_BUILD
2911c01e4f8SBryan DrewerySet to use
2921c01e4f8SBryan Drewery.Xr ccache 1
2931c01e4f8SBryan Dreweryfor the build.
2941c01e4f8SBryan DreweryNo configuration is required except to install the
2951c01e4f8SBryan Drewery.Sy devel/ccache
2961c01e4f8SBryan Drewerypackage.
297344e2bb9SEd MasteWhen using with
298344e2bb9SEd Maste.Xr distcc 1 ,
299344e2bb9SEd Masteset
3001c01e4f8SBryan Drewery.Sy CCACHE_PREFIX=/usr/local/bin/distcc .
3011c01e4f8SBryan DreweryThe default cache directory of
3021c01e4f8SBryan Drewery.Pa $HOME/.ccache
3031c01e4f8SBryan Drewerywill be used, which can be overridden by setting
3041c01e4f8SBryan Drewery.Sy CCACHE_DIR .
3051c01e4f8SBryan DreweryThe
3061c01e4f8SBryan Drewery.Sy CCACHE_COMPILERCHECK
3071c01e4f8SBryan Dreweryoption defaults to
3081c01e4f8SBryan Drewery.Sy content
3091c01e4f8SBryan Drewerywhen using the in-tree bootstrap compiler,
3101c01e4f8SBryan Dreweryand
3111c01e4f8SBryan Drewery.Sy mtime
3121c01e4f8SBryan Drewerywhen using an external compiler.
3131c01e4f8SBryan DreweryThe
3141c01e4f8SBryan Drewery.Sy CCACHE_CPP2
3151c01e4f8SBryan Dreweryoption is used for Clang but not GCC.
3161c01e4f8SBryan Drewery.Pp
3171c01e4f8SBryan DrewerySharing a cache between multiple work directories requires using a layout
3181c01e4f8SBryan Drewerysimilar to
3191c01e4f8SBryan Drewery.Pa /some/prefix/src
3201c01e4f8SBryan Drewery.Pa /some/prefix/obj
3211c01e4f8SBryan Dreweryand an environment such as:
3221c01e4f8SBryan Drewery.Bd -literal -offset indent
3231c01e4f8SBryan DreweryCCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj'
3241c01e4f8SBryan Drewery.Ed
3251c01e4f8SBryan Drewery.Pp
3261c01e4f8SBryan DrewerySee
3271c01e4f8SBryan Drewery.Xr ccache 1
3281c01e4f8SBryan Dreweryfor more configuration options.
32993da8366SEnji Cooper.It Va WITHOUT_CCD
33093da8366SEnji CooperSet to not build
33193da8366SEnji Cooper.Xr geom_ccd 4
33293da8366SEnji Cooperand related utilities.
33390be798eSDimitry Andric.It Va WITHOUT_CDDL
33490be798eSDimitry AndricSet to not build code licensed under Sun's CDDL.
335344e2bb9SEd MasteWhen set, it enforces these options:
33690be798eSDimitry Andric.Pp
33790be798eSDimitry Andric.Bl -item -compact
33890be798eSDimitry Andric.It
33990be798eSDimitry Andric.Va WITHOUT_CTF
34090be798eSDimitry Andric.It
3411f7d1483SEd Maste.Va WITHOUT_LOADER_ZFS
3421f7d1483SEd Maste.It
34390be798eSDimitry Andric.Va WITHOUT_ZFS
34490be798eSDimitry Andric.El
34590be798eSDimitry Andric.It Va WITHOUT_CLANG
34690be798eSDimitry AndricSet to not build the Clang C/C++ compiler during the regular phase of the build.
347344e2bb9SEd MasteWhen set, it enforces these options:
34890be798eSDimitry Andric.Pp
34990be798eSDimitry Andric.Bl -item -compact
35090be798eSDimitry Andric.It
35190be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS
35290be798eSDimitry Andric.It
35390be798eSDimitry Andric.Va WITHOUT_CLANG_FULL
3545b9c3654SEd Maste.It
3555b9c3654SEd Maste.Va WITHOUT_LLVM_COV
35690be798eSDimitry Andric.El
35790be798eSDimitry Andric.It Va WITHOUT_CLANG_BOOTSTRAP
358344e2bb9SEd MasteSet to not build the Clang C/C++ compiler during the bootstrap phase of
359344e2bb9SEd Mastethe build.
360344e2bb9SEd MasteTo be able to build the system, either gcc or clang bootstrap must be
361344e2bb9SEd Masteenabled unless an alternate compiler is provided via XCC.
36290be798eSDimitry Andric.Pp
363344e2bb9SEd MasteThis is a default setting on
364429932baSEd Mastemips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
36590be798eSDimitry Andric.It Va WITH_CLANG_BOOTSTRAP
36690be798eSDimitry AndricSet to build the Clang C/C++ compiler during the bootstrap phase of the build.
36790be798eSDimitry Andric.Pp
368344e2bb9SEd MasteThis is a default setting on
3694cee74dfSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
37090be798eSDimitry Andric.It Va WITH_CLANG_EXTRAS
371b3a27c81SEd MasteSet to build additional clang and llvm tools, such as bugpoint and
372b3a27c81SEd Masteclang-format.
37390be798eSDimitry Andric.It Va WITHOUT_CLANG_FULL
37490be798eSDimitry AndricSet to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
37590be798eSDimitry Andricthe Clang C/C++ compiler.
37690be798eSDimitry Andric.It Va WITHOUT_CLANG_IS_CC
3778683408cSEd MasteDo not install links to the Clang C/C++ compiler as
37890be798eSDimitry Andric.Pa /usr/bin/cc ,
37990be798eSDimitry Andric.Pa /usr/bin/c++
38090be798eSDimitry Andricand
38190be798eSDimitry Andric.Pa /usr/bin/cpp .
38290be798eSDimitry Andric.Pp
383344e2bb9SEd MasteThis is a default setting on
384429932baSEd Mastemips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
38590be798eSDimitry Andric.It Va WITH_CLANG_IS_CC
3868683408cSEd MasteInstall links to the Clang C/C++ compiler as
38790be798eSDimitry Andric.Pa /usr/bin/cc ,
38890be798eSDimitry Andric.Pa /usr/bin/c++
38990be798eSDimitry Andricand
39090be798eSDimitry Andric.Pa /usr/bin/cpp .
39190be798eSDimitry Andric.Pp
392344e2bb9SEd MasteThis is a default setting on
3934cee74dfSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
39490be798eSDimitry Andric.It Va WITHOUT_CPP
39590be798eSDimitry AndricSet to not build
39690be798eSDimitry Andric.Xr cpp 1 .
39790be798eSDimitry Andric.It Va WITHOUT_CROSS_COMPILER
39890be798eSDimitry AndricSet to not build any cross compiler in the cross-tools stage of buildworld.
399344e2bb9SEd MasteWhen compiling a different version of
40090be798eSDimitry Andric.Fx
401344e2bb9SEd Mastethan what is installed on the system, provide an alternate
40290be798eSDimitry Andriccompiler with XCC to ensure success.
403344e2bb9SEd MasteWhen compiling with an identical version of
40490be798eSDimitry Andric.Fx
40590be798eSDimitry Andricto the host, this option may be safely used.
40690be798eSDimitry AndricThis option may also be safe when the host version of
40790be798eSDimitry Andric.Fx
40890be798eSDimitry Andricis close to the sources being built, but all bets are off if there have
40990be798eSDimitry Andricbeen any changes to the toolchain between the versions.
410344e2bb9SEd MasteWhen set, it enforces these options:
41190be798eSDimitry Andric.Pp
41290be798eSDimitry Andric.Bl -item -compact
41390be798eSDimitry Andric.It
41490be798eSDimitry Andric.Va WITHOUT_BINUTILS_BOOTSTRAP
41590be798eSDimitry Andric.It
41690be798eSDimitry Andric.Va WITHOUT_CLANG_BOOTSTRAP
41790be798eSDimitry Andric.It
418f972b8a4SBryan Drewery.Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
419f972b8a4SBryan Drewery.It
42028f52545SEd Maste.Va WITHOUT_LLD_BOOTSTRAP
42190be798eSDimitry Andric.El
42290be798eSDimitry Andric.It Va WITHOUT_CRYPT
42390be798eSDimitry AndricSet to not build any crypto code.
424344e2bb9SEd MasteWhen set, it enforces these options:
42590be798eSDimitry Andric.Pp
42690be798eSDimitry Andric.Bl -item -compact
42790be798eSDimitry Andric.It
4289f4e04c1SEd Maste.Va WITHOUT_DMAGENT
4299f4e04c1SEd Maste.It
43090be798eSDimitry Andric.Va WITHOUT_KERBEROS
43190be798eSDimitry Andric.It
432fb27d7aeSEd Maste.Va WITHOUT_KERBEROS_SUPPORT
433fb27d7aeSEd Maste.It
434da39b3adSEd Maste.Va WITHOUT_LDNS
435da39b3adSEd Maste.It
436da39b3adSEd Maste.Va WITHOUT_LDNS_UTILS
437da39b3adSEd Maste.It
43890be798eSDimitry Andric.Va WITHOUT_OPENSSH
43990be798eSDimitry Andric.It
44090be798eSDimitry Andric.Va WITHOUT_OPENSSL
441da39b3adSEd Maste.It
442da39b3adSEd Maste.Va WITHOUT_UNBOUND
44390be798eSDimitry Andric.El
44490be798eSDimitry Andric.Pp
445344e2bb9SEd MasteWhen set, these options are also in effect:
44690be798eSDimitry Andric.Pp
44790be798eSDimitry Andric.Bl -inset -compact
44890be798eSDimitry Andric.It Va WITHOUT_GSSAPI
44990be798eSDimitry Andric(unless
45090be798eSDimitry Andric.Va WITH_GSSAPI
45190be798eSDimitry Andricis set explicitly)
45290be798eSDimitry Andric.El
45390be798eSDimitry Andric.It Va WITH_CTF
45490be798eSDimitry AndricSet to compile with CTF (Compact C Type Format) data.
45590be798eSDimitry AndricCTF data encapsulates a reduced form of debugging information
45690be798eSDimitry Andricsimilar to DWARF and the venerable stabs and is required for DTrace.
45754d8c5d5SBryan Drewery.It Va WITHOUT_CUSE
45854d8c5d5SBryan DrewerySet to not build CUSE-related programs and libraries.
4599cf76983SNavdeep Parhar.It Va WITHOUT_CXGBETOOL
4609cf76983SNavdeep ParharSet to not build
4619cf76983SNavdeep Parhar.Xr cxgbetool 8
4629cf76983SNavdeep Parhar.Pp
4639cf76983SNavdeep ParharThis is a default setting on
4644cee74dfSEd Mastearm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
4659cf76983SNavdeep Parhar.It Va WITH_CXGBETOOL
4669cf76983SNavdeep ParharSet to build
4679cf76983SNavdeep Parhar.Xr cxgbetool 8
4689cf76983SNavdeep Parhar.Pp
4699cf76983SNavdeep ParharThis is a default setting on
470429932baSEd Masteamd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64.
47190be798eSDimitry Andric.It Va WITHOUT_CXX
47290be798eSDimitry AndricSet to not build
4734a62dc3aSBryan Drewery.Xr c++ 1
47490be798eSDimitry Andricand related libraries.
47590be798eSDimitry AndricIt will also prevent building of
47690be798eSDimitry Andric.Xr gperf 1
47790be798eSDimitry Andricand
47890be798eSDimitry Andric.Xr devd 8 .
479344e2bb9SEd MasteWhen set, it enforces these options:
48090be798eSDimitry Andric.Pp
48190be798eSDimitry Andric.Bl -item -compact
48290be798eSDimitry Andric.It
48390be798eSDimitry Andric.Va WITHOUT_CLANG
48490be798eSDimitry Andric.It
48590be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS
48690be798eSDimitry Andric.It
48790be798eSDimitry Andric.Va WITHOUT_CLANG_FULL
48890be798eSDimitry Andric.It
489051ea717SEd Maste.Va WITHOUT_DTRACE_TESTS
490051ea717SEd Maste.It
491770379b9SEd Maste.Va WITHOUT_GOOGLETEST
492770379b9SEd Maste.It
4935b9c3654SEd Maste.Va WITHOUT_LLVM_COV
4945b9c3654SEd Maste.It
495051ea717SEd Maste.Va WITHOUT_TESTS
49690be798eSDimitry Andric.El
4974a5e4462SEd Maste.It Va WITHOUT_DEBUG_FILES
4984a5e4462SEd MasteSet to avoid building or installing standalone debug files for each
4994a5e4462SEd Masteexecutable binary and shared library.
500cc68b6e5SEd Maste.It Va WITHOUT_DIALOG
501344e2bb9SEd MasteSet to not build
502344e2bb9SEd Maste.Xr dialog 1 ,
503344e2bb9SEd Maste.Xr dialog 3 ,
504344e2bb9SEd Maste.Xr dpv 1 ,
505344e2bb9SEd Masteand
506344e2bb9SEd Maste.Xr dpv 3 .
507344e2bb9SEd MasteWhen set, it enforces these options:
508cc68b6e5SEd Maste.Pp
509cc68b6e5SEd Maste.Bl -item -compact
510cc68b6e5SEd Maste.It
511cc68b6e5SEd Maste.Va WITHOUT_BSDINSTALL
512cc68b6e5SEd Maste.El
51390be798eSDimitry Andric.It Va WITHOUT_DICT
51490be798eSDimitry AndricSet to not build the Webster dictionary files.
51532b5dc9aSSimon J. Gerraty.It Va WITH_DIRDEPS_BUILD
516be894451SBryan DreweryThis is an experimental build system.
51732b5dc9aSSimon J. GerratyFor details see
51832b5dc9aSSimon J. Gerratyhttp://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
519be894451SBryan DreweryBuild commands can be seen from the top-level with:
520be894451SBryan Drewery.Dl make show-valid-targets
52132b5dc9aSSimon J. GerratyThe build is driven by dirdeps.mk using
52232b5dc9aSSimon J. Gerraty.Va DIRDEPS
52332b5dc9aSSimon J. Gerratystored in
52432b5dc9aSSimon J. GerratyMakefile.depend files found in each directory.
52532b5dc9aSSimon J. Gerraty.Pp
52632b5dc9aSSimon J. GerratyThe build can be started from anywhere, and behaves the same.
52732b5dc9aSSimon J. GerratyThe initial instance of
52832b5dc9aSSimon J. Gerraty.Xr make 1
52932b5dc9aSSimon J. Gerratyrecursively reads
53032b5dc9aSSimon J. Gerraty.Va DIRDEPS
531344e2bb9SEd Mastefrom
532344e2bb9SEd Maste.Pa Makefile.depend ,
53332b5dc9aSSimon J. Gerratycomputing a graph of tree dependencies from the current origin.
53432b5dc9aSSimon J. GerratySetting
53532b5dc9aSSimon J. Gerraty.Va NO_DIRDEPS
536344e2bb9SEd Masteskips checking dirdep dependencies and will only build in the current
5377f76a95cSBryan Dreweryand child directories.
5387f76a95cSBryan Drewery.Va NO_DIRDEPS_BELOW
539344e2bb9SEd Masteskips building any dirdeps and only build the current directory.
54032b5dc9aSSimon J. Gerraty.Pp
541be894451SBryan DreweryThis also utilizes the
542be894451SBryan Drewery.Va WITH_META_MODE
543be894451SBryan Drewerylogic for incremental builds.
54432b5dc9aSSimon J. Gerraty.Pp
545344e2bb9SEd MasteThe build hides commands executed unless
54632b5dc9aSSimon J. Gerraty.Va NO_SILENT
54732b5dc9aSSimon J. Gerratyis defined.
54832b5dc9aSSimon J. Gerraty.Pp
549be894451SBryan DreweryNote that there is currently no mass install feature for this.
550be894451SBryan Drewery.Pp
551344e2bb9SEd MasteWhen set, it enforces these options:
55232b5dc9aSSimon J. Gerraty.Pp
55332b5dc9aSSimon J. Gerraty.Bl -item -compact
55432b5dc9aSSimon J. Gerraty.It
55532b5dc9aSSimon J. Gerraty.Va WITH_INSTALL_AS_USER
55632b5dc9aSSimon J. Gerraty.El
55732b5dc9aSSimon J. Gerraty.Pp
558344e2bb9SEd MasteWhen set, these options are also in effect:
55932b5dc9aSSimon J. Gerraty.Pp
56032b5dc9aSSimon J. Gerraty.Bl -inset -compact
56126b79d5bSHajimu UMEMOTO.It Va WITH_META_MODE
56226b79d5bSHajimu UMEMOTO(unless
56326b79d5bSHajimu UMEMOTO.Va WITHOUT_META_MODE
56426b79d5bSHajimu UMEMOTOis set explicitly)
56532b5dc9aSSimon J. Gerraty.It Va WITH_STAGING
56632b5dc9aSSimon J. Gerraty(unless
56732b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING
56832b5dc9aSSimon J. Gerratyis set explicitly)
56932b5dc9aSSimon J. Gerraty.It Va WITH_STAGING_MAN
57032b5dc9aSSimon J. Gerraty(unless
57132b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING_MAN
57232b5dc9aSSimon J. Gerratyis set explicitly)
57332b5dc9aSSimon J. Gerraty.It Va WITH_STAGING_PROG
57432b5dc9aSSimon J. Gerraty(unless
57532b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING_PROG
57632b5dc9aSSimon J. Gerratyis set explicitly)
57732b5dc9aSSimon J. Gerraty.It Va WITH_SYSROOT
57832b5dc9aSSimon J. Gerraty(unless
57932b5dc9aSSimon J. Gerraty.Va WITHOUT_SYSROOT
58032b5dc9aSSimon J. Gerratyis set explicitly)
58132b5dc9aSSimon J. Gerraty.El
58232b5dc9aSSimon J. Gerraty.Pp
58332b5dc9aSSimon J. GerratyThis must be set in the environment, make command line, or
58432b5dc9aSSimon J. Gerraty.Pa /etc/src-env.conf ,
58532b5dc9aSSimon J. Gerratynot
58632b5dc9aSSimon J. Gerraty.Pa /etc/src.conf .
587cc2520d2SSimon J. Gerraty.It Va WITH_DIRDEPS_CACHE
588cc2520d2SSimon J. GerratyCache result of dirdeps.mk which can save significant time
589cc2520d2SSimon J. Gerratyfor subsequent builds.
590cc2520d2SSimon J. GerratyDepends on
59132b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD .
5920a70ef02SBryan Drewery.Pp
593ba852870SBryan DreweryThis must be set in the environment, make command line, or
5940a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
5950a70ef02SBryan Drewerynot
5960a70ef02SBryan Drewery.Pa /etc/src.conf .
59790be798eSDimitry Andric.It Va WITHOUT_DMAGENT
598344e2bb9SEd MasteSet to not build dma Mail Transport Agent.
59990be798eSDimitry Andric.It Va WITHOUT_DOCCOMPRESS
600344e2bb9SEd MasteSet to not install compressed system documentation.
60190be798eSDimitry AndricOnly the uncompressed version will be installed.
60216f3fdf5SMark Johnston.It Va WITH_DTRACE_TESTS
60316f3fdf5SMark JohnstonSet to build and install the DTrace test suite in
60416f3fdf5SMark Johnston.Pa /usr/tests/cddl/usr.sbin/dtrace .
60516f3fdf5SMark JohnstonThis test suite is considered experimental on architectures other than
60616f3fdf5SMark Johnstonamd64/amd64 and running it may cause system instability.
60790be798eSDimitry Andric.It Va WITHOUT_DYNAMICROOT
60890be798eSDimitry AndricSet this if you do not want to link
60990be798eSDimitry Andric.Pa /bin
61090be798eSDimitry Andricand
61190be798eSDimitry Andric.Pa /sbin
61290be798eSDimitry Andricdynamically.
61393da8366SEnji Cooper.It Va WITHOUT_EE
61493da8366SEnji CooperSet to not build and install
61593da8366SEnji Cooper.Xr edit 1 ,
61693da8366SEnji Cooper.Xr ee 1 ,
61793da8366SEnji Cooperand related programs.
6180cd582c8SEnji Cooper.It Va WITHOUT_EFI
6190cd582c8SEnji CooperSet not to build
6200cd582c8SEnji Cooper.Xr efivar 3
6210cd582c8SEnji Cooperand
6220cd582c8SEnji Cooper.Xr efivar 8 .
6230cd582c8SEnji Cooper.Pp
624344e2bb9SEd MasteThis is a default setting on
625429932baSEd Mastemips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
6260cd582c8SEnji Cooper.It Va WITH_EFI
6270cd582c8SEnji CooperSet to build
6280cd582c8SEnji Cooper.Xr efivar 3
6290cd582c8SEnji Cooperand
6300cd582c8SEnji Cooper.Xr efivar 8 .
6310cd582c8SEnji Cooper.Pp
632344e2bb9SEd MasteThis is a default setting on
633f3cdc622SEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
6345977355fSBryan Drewery.It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
6355977355fSBryan DrewerySet to not build ELF Tool Chain tools
6365977355fSBryan Drewery(addr2line, nm, size, strings and strip)
6375977355fSBryan Dreweryas part of the bootstrap process.
6385977355fSBryan Drewery.Bf -symbolic
6395977355fSBryan DreweryAn alternate bootstrap tool chain must be provided.
6405977355fSBryan Drewery.Ef
64190be798eSDimitry Andric.It Va WITHOUT_EXAMPLES
64290be798eSDimitry AndricSet to avoid installing examples to
64390be798eSDimitry Andric.Pa /usr/share/examples/ .
64443f75d57SBjoern A. Zeeb.It Va WITH_EXPERIMENTAL
64543f75d57SBjoern A. ZeebSet to include experimental features in the build.
646d5a2667bSJonathan T. Looney.It Va WITH_EXTRA_TCP_STACKS
647d5a2667bSJonathan T. LooneySet to build extra TCP stack modules.
64890be798eSDimitry Andric.It Va WITHOUT_FDT
64990be798eSDimitry AndricSet to not build Flattened Device Tree support as part of the base system.
65090be798eSDimitry AndricThis includes the device tree compiler (dtc) and libfdt support library.
6510e0e9604SEnji Cooper.It Va WITHOUT_FILE
6520e0e9604SEnji CooperSet to not build
6530e0e9604SEnji Cooper.Xr file 1
6540e0e9604SEnji Cooperand related programs.
655770379b9SEd MasteWhen set, it enforces these options:
656770379b9SEd Maste.Pp
657770379b9SEd Maste.Bl -item -compact
658770379b9SEd Maste.It
659770379b9SEd Maste.Va WITHOUT_SVNLITE
660770379b9SEd Maste.El
6610e0e9604SEnji Cooper.It Va WITHOUT_FINGER
6620e0e9604SEnji CooperSet to not build or install
6630e0e9604SEnji Cooper.Xr finger 1
6640e0e9604SEnji Cooperand
6650e0e9604SEnji Cooper.Xr fingerd 8 .
66690be798eSDimitry Andric.It Va WITHOUT_FLOPPY
66790be798eSDimitry AndricSet to not build or install programs
66890be798eSDimitry Andricfor operating floppy disk driver.
66990be798eSDimitry Andric.It Va WITHOUT_FMTREE
67090be798eSDimitry AndricSet to not build and install
67190be798eSDimitry Andric.Pa /usr/sbin/fmtree .
672a0f6423bSEd Maste.It Va WITHOUT_FORMAT_EXTENSIONS
673a0f6423bSEd MasteSet to not enable
674a0f6423bSEd Maste.Fl fformat-extensions
675a0f6423bSEd Mastewhen compiling the kernel.
676a0f6423bSEd MasteAlso disables all format checking.
67790be798eSDimitry Andric.It Va WITHOUT_FORTH
67890be798eSDimitry AndricSet to build bootloaders without Forth support.
67990be798eSDimitry Andric.It Va WITHOUT_FP_LIBC
68090be798eSDimitry AndricSet to build
68190be798eSDimitry Andric.Nm libc
68290be798eSDimitry Andricwithout floating-point support.
68390be798eSDimitry Andric.It Va WITHOUT_FREEBSD_UPDATE
68490be798eSDimitry AndricSet to not build
68590be798eSDimitry Andric.Xr freebsd-update 8 .
6860e0e9604SEnji Cooper.It Va WITHOUT_FTP
6870e0e9604SEnji CooperSet to not build or install
6880e0e9604SEnji Cooper.Xr ftp 1
6890e0e9604SEnji Cooperand
6900e0e9604SEnji Cooper.Xr ftpd 8 .
69190be798eSDimitry Andric.It Va WITHOUT_GAMES
69290be798eSDimitry AndricSet to not build games.
69390be798eSDimitry Andric.It Va WITHOUT_GDB
69490be798eSDimitry AndricSet to not build
69590be798eSDimitry Andric.Xr gdb 1 .
6965be09b10SEd Maste.Pp
697344e2bb9SEd MasteThis is a default setting on
6984cee74dfSEd Mastearm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
6995977355fSBryan Drewery.It Va WITH_GDB
7005977355fSBryan DrewerySet to build
7015977355fSBryan Drewery.Xr gdb 1 .
7025977355fSBryan Drewery.Pp
703344e2bb9SEd MasteThis is a default setting on
704429932baSEd Masteamd64/amd64, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc and powerpc/powerpc64.
7054650b8aeSEnji Cooper.It Va WITHOUT_GDB_LIBEXEC
7064650b8aeSEnji CooperSet to install
7074650b8aeSEnji Cooper.Xr gdb 1
7084650b8aeSEnji Cooperinto
7094650b8aeSEnji Cooper.Pa /usr/bin .
71036e8c7bbSEd Maste.It Va WITHOUT_GNU_DIFF
71136e8c7bbSEd MasteSet to not build GNU
71236e8c7bbSEd Maste.Xr diff 1
71336e8c7bbSEd Masteand
71436e8c7bbSEd Maste.Xr diff3 1 .
71536e8c7bbSEd Maste.It Va WITHOUT_GNU_GREP
71636e8c7bbSEd MasteSet to not build GNU
71736e8c7bbSEd Maste.Xr grep 1 .
718e9e768f7SEd Maste.It Va WITH_GNU_GREP_COMPAT
719e9e768f7SEd MasteSet this option to include GNU extensions in
720e9e768f7SEd Maste.Xr bsdgrep 1
721e9e768f7SEd Masteby linking against libgnuregex.
7227840b63aSEnji Cooper.It Va WITHOUT_GOOGLETEST
7237840b63aSEnji CooperSet to neither build nor install
7247840b63aSEnji Cooper.Lb libgmock ,
7257840b63aSEnji Cooper.Lb libgtest ,
7267840b63aSEnji Cooperand dependent tests.
72745181e6dSEd Maste.Pp
72845181e6dSEd MasteThis is a default setting on
72945181e6dSEd Mastemips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
73045181e6dSEd Maste.It Va WITH_GOOGLETEST
73145181e6dSEd MasteSet to build and install
73245181e6dSEd Maste.Lb libgmock ,
73345181e6dSEd Maste.Lb libgtest ,
73445181e6dSEd Masteand dependent tests.
73545181e6dSEd Maste.Pp
73645181e6dSEd MasteThis is a default setting on
73745181e6dSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
73890be798eSDimitry Andric.It Va WITHOUT_GPIO
73990be798eSDimitry AndricSet to not build
74090be798eSDimitry Andric.Xr gpioctl 8
74190be798eSDimitry Andricas part of the base system.
742fcf8f4a8SEmmanuel Vadot.It Va WITH_GPL_DTC
743fcf8f4a8SEmmanuel VadotSet to build the GPL'd version of the device tree compiler from elinux.org,
744fcf8f4a8SEmmanuel Vadotinstead of the BSD licensed one.
74590be798eSDimitry Andric.It Va WITHOUT_GSSAPI
74690be798eSDimitry AndricSet to not build libgssapi.
74761940879SEnji Cooper.It Va WITHOUT_HAST
74861940879SEnji CooperSet to not build
74961940879SEnji Cooper.Xr hastd 8
75061940879SEnji Cooperand related utilities.
75190be798eSDimitry Andric.It Va WITH_HESIOD
75290be798eSDimitry AndricSet to build Hesiod support.
75390be798eSDimitry Andric.It Va WITHOUT_HTML
75490be798eSDimitry AndricSet to not build HTML docs.
7552c4b4abcSXin LI.It Va WITHOUT_HYPERV
7562c4b4abcSXin LISet to not build or install HyperV utilities.
7570543ade3SBrooks Davis.Pp
7580543ade3SBrooks DavisThis is a default setting on
759429932baSEd Mastearm/armv6, arm/armv7, arm64/aarch64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
7600543ade3SBrooks Davis.It Va WITH_HYPERV
7610543ade3SBrooks DavisSet to build or install HyperV utilities.
7620543ade3SBrooks Davis.Pp
7630543ade3SBrooks DavisThis is a default setting on
7640543ade3SBrooks Davisamd64/amd64 and i386/i386.
76590be798eSDimitry Andric.It Va WITHOUT_ICONV
76690be798eSDimitry AndricSet to not build iconv as part of libc.
767c5d09a87SGlen Barber.It Va WITHOUT_INCLUDES
768c5d09a87SGlen BarberSet to not install header files.
769c5d09a87SGlen BarberThis option used to be spelled
770c5d09a87SGlen Barber.Va NO_INCS .
771c5d09a87SGlen Barber.Bf -symbolic
772c5d09a87SGlen BarberThe option does not work for build targets.
773c5d09a87SGlen Barber.Ef
77490be798eSDimitry Andric.It Va WITHOUT_INET
77590be798eSDimitry AndricSet to not build programs and libraries related to IPv4 networking.
776344e2bb9SEd MasteWhen set, it enforces these options:
77790be798eSDimitry Andric.Pp
77890be798eSDimitry Andric.Bl -item -compact
77990be798eSDimitry Andric.It
78090be798eSDimitry Andric.Va WITHOUT_INET_SUPPORT
78190be798eSDimitry Andric.El
78290be798eSDimitry Andric.It Va WITHOUT_INET6
78390be798eSDimitry AndricSet to not build
78490be798eSDimitry Andricprograms and libraries related to IPv6 networking.
785344e2bb9SEd MasteWhen set, it enforces these options:
78690be798eSDimitry Andric.Pp
78790be798eSDimitry Andric.Bl -item -compact
78890be798eSDimitry Andric.It
78990be798eSDimitry Andric.Va WITHOUT_INET6_SUPPORT
79090be798eSDimitry Andric.El
79190be798eSDimitry Andric.It Va WITHOUT_INET6_SUPPORT
79290be798eSDimitry AndricSet to build libraries, programs, and kernel modules without IPv6 support.
7930e0e9604SEnji Cooper.It Va WITHOUT_INETD
7940e0e9604SEnji CooperSet to not build
7950e0e9604SEnji Cooper.Xr inetd 8 .
79690be798eSDimitry Andric.It Va WITHOUT_INET_SUPPORT
79790be798eSDimitry AndricSet to build libraries, programs, and kernel modules without IPv4 support.
79890be798eSDimitry Andric.It Va WITHOUT_INSTALLLIB
799344e2bb9SEd MasteSet this to not install optional libraries.
800344e2bb9SEd MasteFor example, when creating a
80190be798eSDimitry Andric.Xr nanobsd 8
80290be798eSDimitry Andricimage.
803f79bedf5SBryan Drewery.Bf -symbolic
804f79bedf5SBryan DreweryThe option does not work for build targets.
805f79bedf5SBryan Drewery.Ef
80690be798eSDimitry Andric.It Va WITH_INSTALL_AS_USER
80790be798eSDimitry AndricSet to make install targets succeed for non-root users by installing
80890be798eSDimitry Andricfiles with owner and group attributes set to that of the user running
80990be798eSDimitry Andricthe
81090be798eSDimitry Andric.Xr make 1
81190be798eSDimitry Andriccommand.
812344e2bb9SEd MasteThe user still must set the
81390be798eSDimitry Andric.Va DESTDIR
81490be798eSDimitry Andricvariable to point to a directory where the user has write permissions.
81590be798eSDimitry Andric.It Va WITHOUT_IPFILTER
81690be798eSDimitry AndricSet to not build IP Filter package.
81790be798eSDimitry Andric.It Va WITHOUT_IPFW
81890be798eSDimitry AndricSet to not build IPFW tools.
81988342134SEnji Cooper.It Va WITHOUT_IPSEC_SUPPORT
82088342134SEnji CooperSet to not build the kernel with
82188342134SEnji Cooper.Xr ipsec 4
82288342134SEnji Coopersupport.
82388342134SEnji CooperThis option is needed for
82488342134SEnji Cooper.Xr ipsec 4
82588342134SEnji Cooperand
82688342134SEnji Cooper.Xr tcpmd5 4 .
82793da8366SEnji Cooper.It Va WITHOUT_ISCSI
82893da8366SEnji CooperSet to not build
82926d6bbfaSSevan Janiyan.Xr iscsid 8
83093da8366SEnji Cooperand related utilities.
83190be798eSDimitry Andric.It Va WITHOUT_JAIL
83290be798eSDimitry AndricSet to not build tools for the support of jails; e.g.,
83390be798eSDimitry Andric.Xr jail 8 .
83490be798eSDimitry Andric.It Va WITHOUT_KDUMP
83590be798eSDimitry AndricSet to not build
83690be798eSDimitry Andric.Xr kdump 1
83790be798eSDimitry Andricand
83890be798eSDimitry Andric.Xr truss 1 .
83990be798eSDimitry Andric.It Va WITHOUT_KERBEROS
840344e2bb9SEd MasteSet this to not build Kerberos 5 (KTH Heimdal).
841344e2bb9SEd MasteWhen set, these options are also in effect:
84290be798eSDimitry Andric.Pp
84390be798eSDimitry Andric.Bl -inset -compact
84490be798eSDimitry Andric.It Va WITHOUT_GSSAPI
84590be798eSDimitry Andric(unless
84690be798eSDimitry Andric.Va WITH_GSSAPI
84790be798eSDimitry Andricis set explicitly)
848bf64e879SBryan Drewery.It Va WITHOUT_KERBEROS_SUPPORT
849bf64e879SBryan Drewery(unless
850bf64e879SBryan Drewery.Va WITH_KERBEROS_SUPPORT
851bf64e879SBryan Dreweryis set explicitly)
85290be798eSDimitry Andric.El
85390be798eSDimitry Andric.It Va WITHOUT_KERBEROS_SUPPORT
85490be798eSDimitry AndricSet to build some programs without Kerberos support, like
85590be798eSDimitry Andric.Xr ssh 1 ,
85690be798eSDimitry Andric.Xr telnet 1 ,
85790be798eSDimitry Andric.Xr sshd 8 ,
85890be798eSDimitry Andricand
85990be798eSDimitry Andric.Xr telnetd 8 .
8606f7527f0SEd Maste.It Va WITH_KERNEL_RETPOLINE
8616f7527f0SEd MasteSet to enable the "retpoline" mitigation for CVE-2017-5715 in the kernel
8626f7527f0SEd Mastebuild.
863a0f6423bSEd Maste.It Va WITHOUT_KERNEL_SYMBOLS
864a0f6423bSEd MasteSet to not install kernel symbol files.
865a0f6423bSEd Maste.Bf -symbolic
866a0f6423bSEd MasteThis option is recommended for those people who have small root partitions.
867a0f6423bSEd Maste.Ef
86890be798eSDimitry Andric.It Va WITHOUT_KVM
86990be798eSDimitry AndricSet to not build the
87090be798eSDimitry Andric.Nm libkvm
87190be798eSDimitry Andriclibrary as a part of the base system.
87290be798eSDimitry Andric.Bf -symbolic
87390be798eSDimitry AndricThe option has no effect yet.
87490be798eSDimitry Andric.Ef
875bf64e879SBryan DreweryWhen set, these options are also in effect:
87690be798eSDimitry Andric.Pp
877bf64e879SBryan Drewery.Bl -inset -compact
878bf64e879SBryan Drewery.It Va WITHOUT_KVM_SUPPORT
879bf64e879SBryan Drewery(unless
880bf64e879SBryan Drewery.Va WITH_KVM_SUPPORT
881bf64e879SBryan Dreweryis set explicitly)
88290be798eSDimitry Andric.El
88390be798eSDimitry Andric.It Va WITHOUT_KVM_SUPPORT
88490be798eSDimitry AndricSet to build some programs without optional
88590be798eSDimitry Andric.Nm libkvm
88690be798eSDimitry Andricsupport.
88790be798eSDimitry Andric.It Va WITHOUT_LDNS
88890be798eSDimitry AndricSetting this variable will prevent the LDNS library from being built.
889344e2bb9SEd MasteWhen set, it enforces these options:
89090be798eSDimitry Andric.Pp
89190be798eSDimitry Andric.Bl -item -compact
89290be798eSDimitry Andric.It
89390be798eSDimitry Andric.Va WITHOUT_LDNS_UTILS
89490be798eSDimitry Andric.It
89590be798eSDimitry Andric.Va WITHOUT_UNBOUND
89690be798eSDimitry Andric.El
89790be798eSDimitry Andric.It Va WITHOUT_LDNS_UTILS
89890be798eSDimitry AndricSetting this variable will prevent building the LDNS utilities
89990be798eSDimitry Andric.Xr drill 1
90090be798eSDimitry Andricand
90190be798eSDimitry Andric.Xr host 1 .
90290be798eSDimitry Andric.It Va WITHOUT_LEGACY_CONSOLE
90390be798eSDimitry AndricSet to not build programs that support a legacy PC console; e.g.,
90423a6b49aSEdward Tomasz Napierala.Xr kbdcontrol 1
90590be798eSDimitry Andricand
90623a6b49aSEdward Tomasz Napierala.Xr vidcontrol 1 .
90790be798eSDimitry Andric.It Va WITHOUT_LIB32
908c5d09a87SGlen BarberOn 64-bit platforms, set to not build 32-bit library set and a
90990be798eSDimitry Andric.Nm ld-elf32.so.1
91090be798eSDimitry Andricruntime linker.
911f3cdc622SEd Maste.Pp
912f3cdc622SEd MasteThis is a default setting on
913429932baSEd Mastearm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mipsn32, mips/mipselhf, mips/mipshf, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
91490be798eSDimitry Andric.It Va WITHOUT_LIBCPLUSPLUS
91590be798eSDimitry AndricSet to avoid building libcxxrt and libc++.
91690be798eSDimitry Andric.It Va WITHOUT_LIBPTHREAD
91790be798eSDimitry AndricSet to not build the
91890be798eSDimitry Andric.Nm libpthread
91990be798eSDimitry Andricproviding library,
92090be798eSDimitry Andric.Nm libthr .
921344e2bb9SEd MasteWhen set, it enforces these options:
92290be798eSDimitry Andric.Pp
92390be798eSDimitry Andric.Bl -item -compact
92490be798eSDimitry Andric.It
92590be798eSDimitry Andric.Va WITHOUT_LIBTHR
92690be798eSDimitry Andric.El
9278a7c8ae4SBryan Drewery.It Va WITH_LIBSOFT
9288a7c8ae4SBryan DreweryOn armv6 only, set to enable soft float ABI compatibility libraries.
9298a7c8ae4SBryan DreweryThis option is for transitioning to the new hard float ABI.
93090be798eSDimitry Andric.It Va WITHOUT_LIBTHR
93190be798eSDimitry AndricSet to not build the
93290be798eSDimitry Andric.Nm libthr
93390be798eSDimitry Andric(1:1 threading)
93490be798eSDimitry Andriclibrary.
93536e8c7bbSEd Maste.It Va WITHOUT_LLD
93636e8c7bbSEd MasteSet to not build LLVM's lld linker.
9371500eb21SEd Maste.It Va WITHOUT_LLDB
9381500eb21SEd MasteSet to not build the LLDB debugger.
9391500eb21SEd Maste.Pp
940344e2bb9SEd MasteThis is a default setting on
941429932baSEd Mastearm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
94290be798eSDimitry Andric.It Va WITH_LLDB
94390be798eSDimitry AndricSet to build the LLDB debugger.
9441500eb21SEd Maste.Pp
945344e2bb9SEd MasteThis is a default setting on
946e5259506SEnji Cooperamd64/amd64, arm64/aarch64 and i386/i386.
9476c2b7edaSEd Maste.It Va WITHOUT_LLD_BOOTSTRAP
9486c2b7edaSEd MasteSet to not build the LLD linker during the bootstrap phase of
9496c2b7edaSEd Mastethe build.
9506c2b7edaSEd MasteTo be able to build the system, either Binutils or LLD bootstrap must be
9516c2b7edaSEd Masteenabled unless an alternate linker is provided via XLD.
9526c2b7edaSEd Maste.Pp
9536c2b7edaSEd MasteThis is a default setting on
954429932baSEd Mastemips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and powerpc/powerpc.
9556c2b7edaSEd Maste.It Va WITH_LLD_BOOTSTRAP
95618655ca2SEd MasteSet to build the LLD linker during the bootstrap phase of the build,
95718655ca2SEd Masteand use it during buildworld and buildkernel.
9586c2b7edaSEd Maste.Pp
9596c2b7edaSEd MasteThis is a default setting on
9604cee74dfSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
961661cf9b6SYoshihiro Takahashi.It Va WITHOUT_LLD_IS_LD
96236e8c7bbSEd MasteSet to use GNU binutils ld as the system linker, instead of LLVM's LLD.
96336e8c7bbSEd Maste.Pp
964344e2bb9SEd MasteThis is a default setting on
965429932baSEd Mastemips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and powerpc/powerpc.
966661cf9b6SYoshihiro Takahashi.It Va WITH_LLD_IS_LD
96736e8c7bbSEd MasteSet to use LLVM's LLD as the system linker, instead of GNU binutils ld.
96836e8c7bbSEd Maste.Pp
969344e2bb9SEd MasteThis is a default setting on
9704cee74dfSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
9715b9c3654SEd Maste.It Va WITHOUT_LLVM_COV
9725b9c3654SEd MasteSet to not build the
9735b9c3654SEd Maste.Xr llvm-cov 1
9745b9c3654SEd Mastetool.
9751500eb21SEd Maste.It Va WITHOUT_LLVM_LIBUNWIND
9761500eb21SEd MasteSet to use GCC's stack unwinder (instead of LLVM's libunwind).
977cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_AARCH64
978cbafd263SDimitry AndricSet to not build LLVM target support for AArch64.
979bf64e879SBryan DreweryThe
980bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
981bf64e879SBryan Dreweryoption should be used rather than this in most cases.
982bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ALL
983bf64e879SBryan DrewerySet to only build the required LLVM target support.
984bf64e879SBryan DreweryThis option is preferred to specific target support options.
985bf64e879SBryan DreweryWhen set, these options are also in effect:
986bf64e879SBryan Drewery.Pp
987bf64e879SBryan Drewery.Bl -inset -compact
988bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_AARCH64
989bf64e879SBryan Drewery(unless
990bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_AARCH64
991bf64e879SBryan Dreweryis set explicitly)
992bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ARM
993bf64e879SBryan Drewery(unless
994bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_ARM
995bf64e879SBryan Dreweryis set explicitly)
996bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_MIPS
997bf64e879SBryan Drewery(unless
998bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_MIPS
999bf64e879SBryan Dreweryis set explicitly)
1000bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_POWERPC
1001bf64e879SBryan Drewery(unless
1002bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_POWERPC
1003bf64e879SBryan Dreweryis set explicitly)
1004f3cdc622SEd Maste.It Va WITHOUT_LLVM_TARGET_RISCV
1005f3cdc622SEd Maste(unless
1006f3cdc622SEd Maste.Va WITH_LLVM_TARGET_RISCV
1007f3cdc622SEd Masteis set explicitly)
1008bf64e879SBryan Drewery.El
1009cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_ARM
1010cbafd263SDimitry AndricSet to not build LLVM target support for ARM.
1011bf64e879SBryan DreweryThe
1012bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1013bf64e879SBryan Dreweryoption should be used rather than this in most cases.
101489edb881SDimitry Andric.It Va WITH_LLVM_TARGET_BPF
101589edb881SDimitry AndricSet to build LLVM target support for BPF.
101689edb881SDimitry AndricThe
101789edb881SDimitry Andric.Va LLVM_TARGET_ALL
101889edb881SDimitry Andricoption should be used rather than this in most cases.
1019cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_MIPS
1020cbafd263SDimitry AndricSet to not build LLVM target support for MIPS.
1021bf64e879SBryan DreweryThe
1022bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1023bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1024cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_POWERPC
1025cbafd263SDimitry AndricSet to not build LLVM target support for PowerPC.
1026bf64e879SBryan DreweryThe
1027bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1028bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1029f3cdc622SEd Maste.It Va WITHOUT_LLVM_TARGET_RISCV
1030f3cdc622SEd MasteSet to not build LLVM target support for RISC-V.
1031f3cdc622SEd MasteThe
1032f3cdc622SEd Maste.Va LLVM_TARGET_ALL
1033f3cdc622SEd Masteoption should be used rather than this in most cases.
10343352b550SEd Maste.It Va WITH_LLVM_TARGET_SPARC
10353352b550SEd MasteSet to build LLVM target support for SPARC.
1036bf64e879SBryan DreweryThe
1037bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1038bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1039cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_X86
1040cbafd263SDimitry AndricSet to not build LLVM target support for X86.
1041bf64e879SBryan DreweryThe
1042bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
1043bf64e879SBryan Dreweryoption should be used rather than this in most cases.
1044bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT
1045bfdf8aa9SJohn BaldwinEnable building
1046bfdf8aa9SJohn Baldwin.Xr loader 8
1047bfdf8aa9SJohn Baldwinwith support for verification based on certificates obtained from UEFI.
1048bfdf8aa9SJohn Baldwin.Pp
1049782df3edSEd Maste.It Va WITH_LOADER_FIREWIRE
1050e8788097SKonstantin BelousovEnable firewire support in /boot/loader on x86. This option is a nop
1051e8788097SKonstantin Belousovon all other platforms.
10528edab9cdSWarner Losh.It Va WITH_LOADER_FORCE_LE
10538edab9cdSWarner LoshSet to force the powerpc boot loader to launch the kernel in little
10548edab9cdSWarner Loshendian mode.
1055782df3edSEd Maste.It Va WITHOUT_LOADER_GELI
1056782df3edSEd MasteDisable inclusion of GELI crypto support in the boot chain binaries.
105730323356SWarner Losh.Pp
105830323356SWarner LoshThis is a default setting on
1059429932baSEd Mastepowerpc/powerpc and powerpc/powerpc64.
10608edab9cdSWarner Losh.It Va WITH_LOADER_GELI
10618edab9cdSWarner LoshSet to build GELI bootloader support.
10628edab9cdSWarner Losh.Pp
10638edab9cdSWarner LoshThis is a default setting on
10644cee74dfSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf.
10658edab9cdSWarner Losh.It Va WITHOUT_LOADER_LUA
10668edab9cdSWarner LoshSet to not build LUA bindings for the boot loader.
10678edab9cdSWarner Losh.Pp
10688edab9cdSWarner LoshThis is a default setting on
1069429932baSEd Mastepowerpc/powerpc and powerpc/powerpc64.
10706f7527f0SEd Maste.It Va WITH_LOADER_LUA
10716f7527f0SEd MasteSet to build LUA bindings for the boot loader.
107230323356SWarner Losh.Pp
107330323356SWarner LoshThis is a default setting on
10744cee74dfSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf.
1075b8f3641fSKyle Evans.It Va WITHOUT_LOADER_OFW
1076b8f3641fSKyle EvansDisable building of openfirmware bootloader components.
1077b8f3641fSKyle Evans.Pp
1078b8f3641fSKyle EvansThis is a default setting on
10794cee74dfSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, riscv/riscv64 and riscv/riscv64sf.
1080b8f3641fSKyle Evans.It Va WITH_LOADER_OFW
1081b8f3641fSKyle EvansSet to build openfirmware bootloader components.
1082b8f3641fSKyle Evans.Pp
1083b8f3641fSKyle EvansThis is a default setting on
1084429932baSEd Mastepowerpc/powerpc and powerpc/powerpc64.
1085b8f3641fSKyle Evans.It Va WITHOUT_LOADER_UBOOT
1086b8f3641fSKyle EvansDisable building of ubldr.
1087b8f3641fSKyle Evans.Pp
1088b8f3641fSKyle EvansThis is a default setting on
1089429932baSEd Masteamd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
1090b8f3641fSKyle Evans.It Va WITH_LOADER_UBOOT
1091b8f3641fSKyle EvansSet to build ubldr.
1092b8f3641fSKyle Evans.Pp
1093b8f3641fSKyle EvansThis is a default setting on
10944cee74dfSEd Mastearm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc and powerpc/powerpc64.
10951f7d1483SEd Maste.It Va WITH_LOADER_VERBOSE
10961f7d1483SEd MasteSet to build with extra verbose debugging in the loader.
10971f7d1483SEd MasteMay explode already nearly too large loader over the limit.
10981f7d1483SEd MasteUse with care.
10991f7d1483SEd Maste
1100bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_VERIEXEC
1101bfdf8aa9SJohn BaldwinEnable building
1102bfdf8aa9SJohn Baldwin.Xr loader 8
1103de19b521SDimitry Andricwith support for verification similar to Verified Exec.
1104bfdf8aa9SJohn Baldwin.Pp
1105de19b521SDimitry AndricDepends on
1106de19b521SDimitry Andric.Va WITH_BEARSSL .
1107bfdf8aa9SJohn BaldwinWhen set, these options are also in effect:
1108bfdf8aa9SJohn Baldwin.Pp
1109bfdf8aa9SJohn Baldwin.Bl -inset -compact
1110bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT
1111bfdf8aa9SJohn Baldwin(unless
1112bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_EFI_SECUREBOOT
1113bfdf8aa9SJohn Baldwinis set explicitly)
1114bfdf8aa9SJohn Baldwin.El
1115de19b521SDimitry Andric.It Va WITH_LOADER_VERIEXEC_PASS_MANIFEST
1116de19b521SDimitry AndricEnable building
1117de19b521SDimitry Andric.Xr loader 8
1118de19b521SDimitry Andricwith support to pass a verified manifest to the kernel.
1119de19b521SDimitry AndricThe kernel has to be built with a module to parse the manifest.
1120de19b521SDimitry Andric.Pp
1121de19b521SDimitry AndricDepends on
1122de19b521SDimitry Andric.Va WITH_LOADER_VERIEXEC .
11231f7d1483SEd Maste.It Va WITHOUT_LOADER_ZFS
11241f7d1483SEd MasteSet to not build ZFS file system boot loader support.
112590be798eSDimitry Andric.It Va WITHOUT_LOCALES
112690be798eSDimitry AndricSet to not build localization files; see
112790be798eSDimitry Andric.Xr locale 1 .
112890be798eSDimitry Andric.It Va WITHOUT_LOCATE
112990be798eSDimitry AndricSet to not build
113090be798eSDimitry Andric.Xr locate 1
113190be798eSDimitry Andricand related programs.
113290be798eSDimitry Andric.It Va WITHOUT_LPR
113390be798eSDimitry AndricSet to not build
113490be798eSDimitry Andric.Xr lpr 1
113590be798eSDimitry Andricand related programs.
113690be798eSDimitry Andric.It Va WITHOUT_LS_COLORS
113790be798eSDimitry AndricSet to build
113890be798eSDimitry Andric.Xr ls 1
113990be798eSDimitry Andricwithout support for colors to distinguish file types.
114090be798eSDimitry Andric.It Va WITHOUT_LZMA_SUPPORT
114190be798eSDimitry AndricSet to build some programs without optional lzma compression support.
114290be798eSDimitry Andric.It Va WITHOUT_MAIL
114390be798eSDimitry AndricSet to not build any mail support (MUA or MTA).
1144344e2bb9SEd MasteWhen set, it enforces these options:
114590be798eSDimitry Andric.Pp
114690be798eSDimitry Andric.Bl -item -compact
114790be798eSDimitry Andric.It
114890be798eSDimitry Andric.Va WITHOUT_DMAGENT
114990be798eSDimitry Andric.It
115090be798eSDimitry Andric.Va WITHOUT_MAILWRAPPER
115190be798eSDimitry Andric.It
115290be798eSDimitry Andric.Va WITHOUT_SENDMAIL
115390be798eSDimitry Andric.El
115490be798eSDimitry Andric.It Va WITHOUT_MAILWRAPPER
115590be798eSDimitry AndricSet to not build the
115690be798eSDimitry Andric.Xr mailwrapper 8
115790be798eSDimitry AndricMTA selector.
115890be798eSDimitry Andric.It Va WITHOUT_MAKE
115990be798eSDimitry AndricSet to not install
116090be798eSDimitry Andric.Xr make 1
116190be798eSDimitry Andricand related support files.
116274782f0eSEnji Cooper.It Va WITHOUT_MAKE_CHECK_USE_SANDBOX
116374782f0eSEnji CooperSet to not execute
116474782f0eSEnji Cooper.Dq Li "make check"
116574782f0eSEnji Cooperin limited sandbox mode.
116674782f0eSEnji CooperThis option should be paired with
116774782f0eSEnji Cooper.Va WITH_INSTALL_AS_USER
116874782f0eSEnji Cooperif executed as an unprivileged user.
116974782f0eSEnji CooperSee
117074782f0eSEnji Cooper.Xr tests 7
117174782f0eSEnji Cooperfor more details.
117290be798eSDimitry Andric.It Va WITHOUT_MAN
117390be798eSDimitry AndricSet to not build manual pages.
1174344e2bb9SEd MasteWhen set, these options are also in effect:
117590be798eSDimitry Andric.Pp
117690be798eSDimitry Andric.Bl -inset -compact
117790be798eSDimitry Andric.It Va WITHOUT_MAN_UTILS
117890be798eSDimitry Andric(unless
117990be798eSDimitry Andric.Va WITH_MAN_UTILS
118090be798eSDimitry Andricis set explicitly)
118190be798eSDimitry Andric.El
118290be798eSDimitry Andric.It Va WITHOUT_MANCOMPRESS
118390be798eSDimitry AndricSet to not to install compressed man pages.
118490be798eSDimitry AndricOnly the uncompressed versions will be installed.
118590be798eSDimitry Andric.It Va WITHOUT_MAN_UTILS
118690be798eSDimitry AndricSet to not build utilities for manual pages,
118790be798eSDimitry Andric.Xr apropos 1 ,
118890be798eSDimitry Andric.Xr makewhatis 1 ,
118990be798eSDimitry Andric.Xr man 1 ,
119090be798eSDimitry Andric.Xr whatis 1 ,
119190be798eSDimitry Andric.Xr manctl 8 ,
119290be798eSDimitry Andricand related support files.
1193cc2520d2SSimon J. Gerraty.It Va WITH_META_MODE
1194344e2bb9SEd MasteCreate
1195be894451SBryan Drewery.Xr make 1
1196be894451SBryan Drewerymeta files when building, which can provide a reliable incremental build when
1197be894451SBryan Dreweryusing
1198be894451SBryan Drewery.Xr filemon 4 .
1199344e2bb9SEd MasteThe meta file is created in OBJDIR as
1200be894451SBryan Drewery.Pa target.meta .
1201344e2bb9SEd MasteThese meta files track the command that was executed, its output, and the
1202344e2bb9SEd Mastecurrent directory.
12032710e62cSBryan DreweryThe
12047f76a95cSBryan Drewery.Xr filemon 4
12052710e62cSBryan Drewerymodule is required unless
12062710e62cSBryan Drewery.Va NO_FILEMON
12072710e62cSBryan Dreweryis defined.
1208344e2bb9SEd MasteWhen the module is loaded, any files used by the commands executed are
1209344e2bb9SEd Mastetracked as dependencies for the target in its meta file.
1210344e2bb9SEd MasteThe target is considered out-of-date and rebuilt if any of these
1211344e2bb9SEd Masteconditions are true compared to the last build:
1212be894451SBryan Drewery.Bl -bullet -compact
1213be894451SBryan Drewery.It
1214be894451SBryan DreweryThe command to execute changes.
1215be894451SBryan Drewery.It
1216be894451SBryan DreweryThe current working directory changes.
1217be894451SBryan Drewery.It
1218a4a2269eSBryan DreweryThe target's meta file is missing.
1219a4a2269eSBryan Drewery.It
1220a4a2269eSBryan DreweryThe target's meta file is missing filemon data when filemon is loaded
1221a4a2269eSBryan Dreweryand a previous run did not have it loaded.
1222be894451SBryan Drewery.It
1223be894451SBryan Drewery[requires
1224be894451SBryan Drewery.Xr filemon 4 ]
1225be894451SBryan DreweryFiles read, executed or linked to are newer than the target.
1226be894451SBryan Drewery.It
1227be894451SBryan Drewery[requires
1228be894451SBryan Drewery.Xr filemon 4 ]
1229be894451SBryan DreweryFiles read, written, executed or linked are missing.
1230be894451SBryan Drewery.El
12317f76a95cSBryan DreweryThe meta files can also be useful for debugging.
12327f76a95cSBryan Drewery.Pp
1233344e2bb9SEd MasteThe build hides commands that are executed unless
12347f76a95cSBryan Drewery.Va NO_SILENT
12357f76a95cSBryan Dreweryis defined.
1236344e2bb9SEd MasteErrors cause
12372710e62cSBryan Drewery.Xr make 1
12382710e62cSBryan Dreweryto show some of its environment for further debugging.
12390a70ef02SBryan Drewery.Pp
1240be894451SBryan DreweryThe build operates as it normally would otherwise.
1241be894451SBryan DreweryThis option originally invoked a different build system but that was renamed
1242be894451SBryan Dreweryto
1243be894451SBryan Drewery.Va WITH_DIRDEPS_BUILD .
1244be894451SBryan Drewery.Pp
1245ba852870SBryan DreweryThis must be set in the environment, make command line, or
12460a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
12470a70ef02SBryan Drewerynot
12480a70ef02SBryan Drewery.Pa /etc/src.conf .
1249912aad0fSKyle Evans.It Va WITHOUT_MLX5TOOL
1250912aad0fSKyle EvansSet to not build
1251912aad0fSKyle Evans.Xr mlx5tool 8
1252912aad0fSKyle Evans.Pp
1253912aad0fSKyle EvansThis is a default setting on
12544cee74dfSEd Mastearm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
1255912aad0fSKyle Evans.It Va WITH_MLX5TOOL
1256912aad0fSKyle EvansSet to build
1257912aad0fSKyle Evans.Xr mlx5tool 8
1258912aad0fSKyle Evans.Pp
1259912aad0fSKyle EvansThis is a default setting on
1260429932baSEd Masteamd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64.
126190be798eSDimitry Andric.It Va WITHOUT_NDIS
126290be798eSDimitry AndricSet to not build programs and libraries
126390be798eSDimitry Andricrelated to NDIS emulation support.
126490be798eSDimitry Andric.It Va WITHOUT_NETCAT
126590be798eSDimitry AndricSet to not build
126690be798eSDimitry Andric.Xr nc 1
126790be798eSDimitry Andricutility.
126890be798eSDimitry Andric.It Va WITHOUT_NETGRAPH
126990be798eSDimitry AndricSet to not build applications to support
127090be798eSDimitry Andric.Xr netgraph 4 .
1271344e2bb9SEd MasteWhen set, it enforces these options:
127290be798eSDimitry Andric.Pp
127390be798eSDimitry Andric.Bl -item -compact
127490be798eSDimitry Andric.It
127590be798eSDimitry Andric.Va WITHOUT_ATM
127690be798eSDimitry Andric.It
127790be798eSDimitry Andric.Va WITHOUT_BLUETOOTH
1278bf64e879SBryan Drewery.El
1279bf64e879SBryan Drewery.Pp
1280bf64e879SBryan DreweryWhen set, these options are also in effect:
1281bf64e879SBryan Drewery.Pp
1282bf64e879SBryan Drewery.Bl -inset -compact
1283bf64e879SBryan Drewery.It Va WITHOUT_NETGRAPH_SUPPORT
1284bf64e879SBryan Drewery(unless
1285bf64e879SBryan Drewery.Va WITH_NETGRAPH_SUPPORT
1286bf64e879SBryan Dreweryis set explicitly)
128790be798eSDimitry Andric.El
128890be798eSDimitry Andric.It Va WITHOUT_NETGRAPH_SUPPORT
128990be798eSDimitry AndricSet to build libraries, programs, and kernel modules without netgraph support.
129090be798eSDimitry Andric.It Va WITHOUT_NIS
129190be798eSDimitry AndricSet to not build
129290be798eSDimitry Andric.Xr NIS 8
129390be798eSDimitry Andricsupport and related programs.
129490be798eSDimitry AndricIf set, you might need to adopt your
129590be798eSDimitry Andric.Xr nsswitch.conf 5
129690be798eSDimitry Andricand remove
129790be798eSDimitry Andric.Sq nis
129890be798eSDimitry Andricentries.
129990be798eSDimitry Andric.It Va WITHOUT_NLS
130090be798eSDimitry AndricSet to not build NLS catalogs.
130157a87b06SEnji CooperWhen set, it enforces these options:
130257a87b06SEnji Cooper.Pp
130357a87b06SEnji Cooper.Bl -item -compact
130457a87b06SEnji Cooper.It
130557a87b06SEnji Cooper.Va WITHOUT_NLS_CATALOGS
130657a87b06SEnji Cooper.El
130790be798eSDimitry Andric.It Va WITHOUT_NLS_CATALOGS
130890be798eSDimitry AndricSet to not build NLS catalog support for
130990be798eSDimitry Andric.Xr csh 1 .
131090be798eSDimitry Andric.It Va WITHOUT_NS_CACHING
131190be798eSDimitry AndricSet to disable name caching in the
131290be798eSDimitry Andric.Pa nsswitch
131390be798eSDimitry Andricsubsystem.
131490be798eSDimitry AndricThe generic caching daemon,
131590be798eSDimitry Andric.Xr nscd 8 ,
131690be798eSDimitry Andricwill not be built either if this option is set.
131790be798eSDimitry Andric.It Va WITHOUT_NTP
131890be798eSDimitry AndricSet to not build
131990be798eSDimitry Andric.Xr ntpd 8
132090be798eSDimitry Andricand related programs.
13218edab9cdSWarner Losh.It Va WITHOUT_NVME
13228edab9cdSWarner LoshSet to not build nvme related tools and kernel modules.
13238edab9cdSWarner Losh.Pp
13248edab9cdSWarner LoshThis is a default setting on
1325429932baSEd Mastearm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
13268edab9cdSWarner Losh.It Va WITH_NVME
13278edab9cdSWarner LoshSet to build nvme related tools and kernel modules.
13288edab9cdSWarner Losh
13298edab9cdSWarner Losh.Pp
13308edab9cdSWarner LoshThis is a default setting on
1331f8783225SEd Masteamd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64.
133290be798eSDimitry Andric.It Va WITH_OFED
133390be798eSDimitry AndricSet to build the
133490be798eSDimitry Andric.Dq "OpenFabrics Enterprise Distribution"
133590be798eSDimitry AndricInfiniband software stack.
13364a3caf80SKonstantin Belousov.It Va WITH_OFED_EXTRA
13374a3caf80SKonstantin BelousovSet to build the non-essential components of the
13384a3caf80SKonstantin Belousov.Dq "OpenFabrics Enterprise Distribution"
13394a3caf80SKonstantin BelousovInfiniband software stack, mostly examples.
134090be798eSDimitry Andric.It Va WITH_OPENLDAP
134190be798eSDimitry AndricEnable building openldap support for kerberos.
1342b0840a28SDimitry Andric.It Va WITHOUT_OPENMP
1343b0840a28SDimitry AndricSet to not build LLVM's OpenMP runtime.
1344b0840a28SDimitry Andric.Pp
1345b0840a28SDimitry AndricThis is a default setting on
1346429932baSEd Mastearm/armv6, arm/armv7, arm64/aarch64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
1347b0840a28SDimitry Andric.It Va WITH_OPENMP
1348b0840a28SDimitry AndricSet to build LLVM's OpenMP runtime.
1349b0840a28SDimitry Andric.Pp
1350b0840a28SDimitry AndricThis is a default setting on
1351f8783225SEd Masteamd64/amd64, i386/i386 and powerpc/powerpc64.
135290be798eSDimitry Andric.It Va WITHOUT_OPENSSH
135390be798eSDimitry AndricSet to not build OpenSSH.
135490be798eSDimitry Andric.It Va WITHOUT_OPENSSL
135590be798eSDimitry AndricSet to not build OpenSSL.
1356344e2bb9SEd MasteWhen set, it enforces these options:
135790be798eSDimitry Andric.Pp
135890be798eSDimitry Andric.Bl -item -compact
135990be798eSDimitry Andric.It
13609f4e04c1SEd Maste.Va WITHOUT_DMAGENT
13619f4e04c1SEd Maste.It
136290be798eSDimitry Andric.Va WITHOUT_KERBEROS
136390be798eSDimitry Andric.It
1364fb27d7aeSEd Maste.Va WITHOUT_KERBEROS_SUPPORT
1365fb27d7aeSEd Maste.It
1366da39b3adSEd Maste.Va WITHOUT_LDNS
1367da39b3adSEd Maste.It
1368da39b3adSEd Maste.Va WITHOUT_LDNS_UTILS
1369da39b3adSEd Maste.It
137090be798eSDimitry Andric.Va WITHOUT_OPENSSH
1371da39b3adSEd Maste.It
1372da39b3adSEd Maste.Va WITHOUT_UNBOUND
137390be798eSDimitry Andric.El
137490be798eSDimitry Andric.Pp
1375344e2bb9SEd MasteWhen set, these options are also in effect:
137690be798eSDimitry Andric.Pp
137790be798eSDimitry Andric.Bl -inset -compact
137890be798eSDimitry Andric.It Va WITHOUT_GSSAPI
137990be798eSDimitry Andric(unless
138090be798eSDimitry Andric.Va WITH_GSSAPI
138190be798eSDimitry Andricis set explicitly)
138290be798eSDimitry Andric.El
138390be798eSDimitry Andric.It Va WITHOUT_PAM
138490be798eSDimitry AndricSet to not build PAM library and modules.
138590be798eSDimitry Andric.Bf -symbolic
138690be798eSDimitry AndricThis option is deprecated and does nothing.
138790be798eSDimitry Andric.Ef
1388bf64e879SBryan DreweryWhen set, these options are also in effect:
138990be798eSDimitry Andric.Pp
1390bf64e879SBryan Drewery.Bl -inset -compact
1391bf64e879SBryan Drewery.It Va WITHOUT_PAM_SUPPORT
1392bf64e879SBryan Drewery(unless
1393bf64e879SBryan Drewery.Va WITH_PAM_SUPPORT
1394bf64e879SBryan Dreweryis set explicitly)
139590be798eSDimitry Andric.El
139690be798eSDimitry Andric.It Va WITHOUT_PAM_SUPPORT
139790be798eSDimitry AndricSet to build some programs without PAM support, particularly
139890be798eSDimitry Andric.Xr ftpd 8
139990be798eSDimitry Andricand
140090be798eSDimitry Andric.Xr ppp 8 .
140190be798eSDimitry Andric.It Va WITHOUT_PF
140290be798eSDimitry AndricSet to not build PF firewall package.
1403344e2bb9SEd MasteWhen set, it enforces these options:
140490be798eSDimitry Andric.Pp
140590be798eSDimitry Andric.Bl -item -compact
140690be798eSDimitry Andric.It
140790be798eSDimitry Andric.Va WITHOUT_AUTHPF
140890be798eSDimitry Andric.El
1409b3a27c81SEd Maste.It Va WITH_PIE
1410b3a27c81SEd MasteBuild dynamically linked binaries as
1411b3a27c81SEd MastePosition-Independent Executable (PIE).
141290be798eSDimitry Andric.It Va WITHOUT_PKGBOOTSTRAP
141390be798eSDimitry AndricSet to not build
141490be798eSDimitry Andric.Xr pkg 7
141590be798eSDimitry Andricbootstrap tool.
141690be798eSDimitry Andric.It Va WITHOUT_PMC
141790be798eSDimitry AndricSet to not build
141890be798eSDimitry Andric.Xr pmccontrol 8
141990be798eSDimitry Andricand related programs.
142090be798eSDimitry Andric.It Va WITHOUT_PORTSNAP
142190be798eSDimitry AndricSet to not build or install
142290be798eSDimitry Andric.Xr portsnap 8
142390be798eSDimitry Andricand related files.
142445b8de2dSEd MasteWhen set, it enforces these options:
142545b8de2dSEd Maste.Pp
142645b8de2dSEd Maste.Bl -item -compact
142745b8de2dSEd Maste.It
142845b8de2dSEd Maste.Va WITHOUT_FREEBSD_UPDATE
142945b8de2dSEd Maste.El
143090be798eSDimitry Andric.It Va WITHOUT_PPP
143190be798eSDimitry AndricSet to not build
143290be798eSDimitry Andric.Xr ppp 8
143390be798eSDimitry Andricand related programs.
143490be798eSDimitry Andric.It Va WITHOUT_PROFILE
14354c033a73SEnji CooperSet to not build profiled libraries for use with
14364c033a73SEnji Cooper.Xr gprof 8 .
14370780f5c3SJohn Baldwin.Pp
14380780f5c3SJohn BaldwinThis is a default setting on
1439e8788097SKonstantin Belousovmips/mips64el, mips/mips64, mips/mips64elhf and mips/mips64hf.
14404c033a73SEnji Cooper.It Va WITH_PROFILE
14414c033a73SEnji CooperSet to build profiled libraries for use with
14424c033a73SEnji Cooper.Xr gprof 8 .
14434c033a73SEnji Cooper.Pp
14444c033a73SEnji CooperThis is a default setting on
1445429932baSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mipsn32, mips/mipselhf, mips/mipshf, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
144690be798eSDimitry Andric.It Va WITHOUT_QUOTAS
144790be798eSDimitry AndricSet to not build
144823a6b49aSEdward Tomasz Napierala.Xr quota 1
144990be798eSDimitry Andricand related programs.
14500e0e9604SEnji Cooper.It Va WITHOUT_RADIUS_SUPPORT
14510e0e9604SEnji CooperSet to not build radius support into various applications, like
14520e0e9604SEnji Cooper.Xr pam_radius 8
14530e0e9604SEnji Cooperand
14540e0e9604SEnji Cooper.Xr ppp 8 .
145588342134SEnji Cooper.It Va WITH_RATELIMIT
145688342134SEnji CooperSet to build the system with rate limit support.
145788342134SEnji Cooper.Pp
145888342134SEnji CooperThis makes
145988342134SEnji Cooper.Dv SO_MAX_PACING_RATE
146088342134SEnji Coopereffective in
146188342134SEnji Cooper.Xr getsockopt 2 ,
146288342134SEnji Cooperand
146388342134SEnji Cooper.Ar txrlimit
146488342134SEnji Coopersupport in
146588342134SEnji Cooper.Xr ifconfig 8 ,
146688342134SEnji Cooperby proxy.
14670e0e9604SEnji Cooper.It Va WITHOUT_RBOOTD
14680e0e9604SEnji CooperSet to not build or install
14690e0e9604SEnji Cooper.Xr rbootd 8 .
147085d55309SEd Maste.It Va WITH_REPRODUCIBLE_BUILD
147185d55309SEd MasteSet to exclude build metadata (such as the build time, user, or host)
147285d55309SEd Mastefrom the kernel, boot loaders, and uname output, so that builds produce
147385d55309SEd Mastebit-for-bit identical output.
147490be798eSDimitry Andric.It Va WITHOUT_RESCUE
147590be798eSDimitry AndricSet to not build
147690be798eSDimitry Andric.Xr rescue 8 .
14778ccac680SEd Maste.It Va WITH_RETPOLINE
14788ccac680SEd MasteSet to build the base system with the retpoline speculative execution
14798ccac680SEd Mastevulnerability mitigation for CVE-2017-5715.
148090be798eSDimitry Andric.It Va WITHOUT_ROUTED
148190be798eSDimitry AndricSet to not build
148290be798eSDimitry Andric.Xr routed 8
148390be798eSDimitry Andricutility.
14844c033a73SEnji Cooper.It Va WITH_RPCBIND_WARMSTART_SUPPORT
14854c033a73SEnji CooperSet to build
14864c033a73SEnji Cooper.Xr rpcbind 8
14874c033a73SEnji Cooperwith warmstart support.
148890be798eSDimitry Andric.It Va WITHOUT_SENDMAIL
148990be798eSDimitry AndricSet to not build
149090be798eSDimitry Andric.Xr sendmail 8
149190be798eSDimitry Andricand related programs.
1492e8788097SKonstantin Belousov.It Va WITHOUT_SERVICESDB
1493e8788097SKonstantin BelousovSet to not install
1494e8788097SKonstantin Belousov.Pa /var/db/services.db .
149590be798eSDimitry Andric.It Va WITHOUT_SETUID_LOGIN
149690be798eSDimitry AndricSet this to disable the installation of
149790be798eSDimitry Andric.Xr login 1
149890be798eSDimitry Andricas a set-user-ID root program.
149990be798eSDimitry Andric.It Va WITHOUT_SHAREDOCS
150090be798eSDimitry AndricSet to not build the
150190be798eSDimitry Andric.Bx 4.4
150290be798eSDimitry Andriclegacy docs.
15036ab18ea6SDimitry Andric.It Va WITHOUT_SHARED_TOOLCHAIN
15046ab18ea6SDimitry AndricSet to build the toolchain binaries as statically linked executables.
150590be798eSDimitry AndricThe set includes
150690be798eSDimitry Andric.Xr cc 1 ,
150790be798eSDimitry Andric.Xr make 1
150890be798eSDimitry Andricand necessary utilities like assembler, linker and library archive manager.
150990be798eSDimitry Andric.It Va WITH_SORT_THREADS
151090be798eSDimitry AndricSet to enable threads in
151190be798eSDimitry Andric.Xr sort 1 .
151290be798eSDimitry Andric.It Va WITHOUT_SOURCELESS
151390be798eSDimitry AndricSet to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
1514344e2bb9SEd MasteWhen set, it enforces these options:
151590be798eSDimitry Andric.Pp
151690be798eSDimitry Andric.Bl -item -compact
151790be798eSDimitry Andric.It
151890be798eSDimitry Andric.Va WITHOUT_SOURCELESS_HOST
151990be798eSDimitry Andric.It
152090be798eSDimitry Andric.Va WITHOUT_SOURCELESS_UCODE
152190be798eSDimitry Andric.El
152290be798eSDimitry Andric.It Va WITHOUT_SOURCELESS_HOST
152390be798eSDimitry AndricSet to not build kernel modules that include sourceless native code for host CPU.
152490be798eSDimitry Andric.It Va WITHOUT_SOURCELESS_UCODE
152590be798eSDimitry AndricSet to not build kernel modules that include sourceless microcode.
152690be798eSDimitry Andric.It Va WITHOUT_SSP
152790be798eSDimitry AndricSet to not build world with propolice stack smashing protection.
1528cc68b6e5SEd Maste.Pp
1529344e2bb9SEd MasteThis is a default setting on
153036e8c7bbSEd Mastemips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
15310cd582c8SEnji Cooper.It Va WITH_SSP
15320cd582c8SEnji CooperSet to build world with propolice stack smashing protection.
15330cd582c8SEnji Cooper.Pp
1534344e2bb9SEd MasteThis is a default setting on
1535429932baSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
1536cc2520d2SSimon J. Gerraty.It Va WITH_STAGING
1537cc2520d2SSimon J. GerratyEnable staging of files to a stage tree.
1538cc2520d2SSimon J. GerratyThis can be best thought of as auto-install to
1539cc2520d2SSimon J. Gerraty.Va DESTDIR
1540cc2520d2SSimon J. Gerratywith some extra meta data to ensure dependencies can be tracked.
1541cc2520d2SSimon J. GerratyDepends on
154232b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD .
1543344e2bb9SEd MasteWhen set, these options are also in effect:
1544cc2520d2SSimon J. Gerraty.Pp
1545cc2520d2SSimon J. Gerraty.Bl -inset -compact
1546cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_MAN
1547cc2520d2SSimon J. Gerraty(unless
1548cc2520d2SSimon J. Gerraty.Va WITHOUT_STAGING_MAN
1549cc2520d2SSimon J. Gerratyis set explicitly)
1550cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_PROG
1551cc2520d2SSimon J. Gerraty(unless
1552cc2520d2SSimon J. Gerraty.Va WITHOUT_STAGING_PROG
1553cc2520d2SSimon J. Gerratyis set explicitly)
1554cc2520d2SSimon J. Gerraty.El
15550a70ef02SBryan Drewery.Pp
1556ba852870SBryan DreweryThis must be set in the environment, make command line, or
15570a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
15580a70ef02SBryan Drewerynot
15590a70ef02SBryan Drewery.Pa /etc/src.conf .
1560cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_MAN
1561344e2bb9SEd MasteEnable staging of man pages to stage tree.
1562cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_PROG
1563cc2520d2SSimon J. GerratyEnable staging of PROGs to stage tree.
1564cc2520d2SSimon J. Gerraty.It Va WITH_STALE_STAGED
1565cc2520d2SSimon J. GerratyCheck staged files are not stale.
1566de19b521SDimitry Andric.It Va WITHOUT_STATS
1567de19b521SDimitry AndricSet to neither build nor install
1568de19b521SDimitry Andric.Lb libstats
1569de19b521SDimitry Andricand dependent binaries.
157090be798eSDimitry Andric.It Va WITH_SVN
157190be798eSDimitry AndricSet to install
157290be798eSDimitry Andric.Xr svnlite 1
157390be798eSDimitry Andricas
157490be798eSDimitry Andric.Xr svn 1 .
157590be798eSDimitry Andric.It Va WITHOUT_SVNLITE
157690be798eSDimitry AndricSet to not build
157790be798eSDimitry Andric.Xr svnlite 1
157890be798eSDimitry Andricand related programs.
157990be798eSDimitry Andric.It Va WITHOUT_SYMVER
158090be798eSDimitry AndricSet to disable symbol versioning when building shared libraries.
158190be798eSDimitry Andric.It Va WITHOUT_SYSCONS
158290be798eSDimitry AndricSet to not build
158390be798eSDimitry Andric.Xr syscons 4
158490be798eSDimitry Andricsupport files such as keyboard maps, fonts, and screen output maps.
1585cc2520d2SSimon J. Gerraty.It Va WITH_SYSROOT
1586cc2520d2SSimon J. GerratyEnable use of sysroot during build.
1587cc2520d2SSimon J. GerratyDepends on
158832b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD .
15890a70ef02SBryan Drewery.Pp
1590ba852870SBryan DreweryThis must be set in the environment, make command line, or
15910a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
15920a70ef02SBryan Drewerynot
15930a70ef02SBryan Drewery.Pa /etc/src.conf .
15948095b3c2SBryan Drewery.It Va WITHOUT_SYSTEM_COMPILER
15958095b3c2SBryan DrewerySet to not opportunistically skip building a cross-compiler during the
1596a9da9b86SBryan Drewerybootstrap phase of the build.
15978095b3c2SBryan DreweryNormally, if the currently installed compiler matches the planned bootstrap
15988095b3c2SBryan Drewerycompiler type and revision, then it will not be built.
1599a9da9b86SBryan DreweryThis does not prevent a compiler from being built for installation though,
1600a9da9b86SBryan Dreweryonly for building one for the build itself.
1601a9da9b86SBryan DreweryThe
1602a9da9b86SBryan Drewery.Va WITHOUT_CLANG
1603*a5798ec8SEd Masteoption controls that.
1604be9309deSBryan Drewery.It Va WITHOUT_SYSTEM_LINKER
1605be9309deSBryan DrewerySet to not opportunistically skip building a cross-linker during the
1606be9309deSBryan Drewerybootstrap phase of the build.
1607be9309deSBryan DreweryNormally, if the currently installed linker matches the planned bootstrap
1608be9309deSBryan Drewerylinker type and revision, then it will not be built.
1609be9309deSBryan DreweryThis does not prevent a linker from being built for installation though,
1610be9309deSBryan Dreweryonly for building one for the build itself.
1611be9309deSBryan DreweryThe
1612be9309deSBryan Drewery.Va WITHOUT_LLD
1613be9309deSBryan Dreweryand
1614be9309deSBryan Drewery.Va WITHOUT_BINUTILS
1615be9309deSBryan Dreweryoptions control those.
1616be9309deSBryan Drewery.Pp
1617be9309deSBryan DreweryThis option is only relevant when
1618be9309deSBryan Drewery.Va WITH_LLD_BOOTSTRAP
1619be9309deSBryan Dreweryis set.
162093da8366SEnji Cooper.It Va WITHOUT_TALK
162193da8366SEnji CooperSet to not build or install
162293da8366SEnji Cooper.Xr talk 1
162393da8366SEnji Cooperand
162493da8366SEnji Cooper.Xr talkd 8 .
16250e0e9604SEnji Cooper.It Va WITHOUT_TCP_WRAPPERS
16260e0e9604SEnji CooperSet to not build or install
16270e0e9604SEnji Cooper.Xr tcpd 8 ,
16280e0e9604SEnji Cooperand related utilities.
162990be798eSDimitry Andric.It Va WITHOUT_TCSH
163090be798eSDimitry AndricSet to not build and install
163190be798eSDimitry Andric.Pa /bin/csh
163290be798eSDimitry Andric(which is
163390be798eSDimitry Andric.Xr tcsh 1 ) .
163490be798eSDimitry Andric.It Va WITHOUT_TELNET
163590be798eSDimitry AndricSet to not build
163623a6b49aSEdward Tomasz Napierala.Xr telnet 1
163790be798eSDimitry Andricand related programs.
163818c6fc4cSJulio Merino.It Va WITHOUT_TESTS
163918c6fc4cSJulio MerinoSet to not build nor install the
164090be798eSDimitry Andric.Fx
164190be798eSDimitry AndricTest Suite in
164290be798eSDimitry Andric.Pa /usr/tests/ .
164390be798eSDimitry AndricSee
164490be798eSDimitry Andric.Xr tests 7
164590be798eSDimitry Andricfor more details.
164618c6fc4cSJulio MerinoThis also disables the build of all test-related dependencies, including ATF.
1647344e2bb9SEd MasteWhen set, it enforces these options:
1648c5d09a87SGlen Barber.Pp
1649c5d09a87SGlen Barber.Bl -item -compact
1650c5d09a87SGlen Barber.It
165116f3fdf5SMark Johnston.Va WITHOUT_DTRACE_TESTS
1652bf64e879SBryan Drewery.El
1653bf64e879SBryan Drewery.Pp
1654bf64e879SBryan DreweryWhen set, these options are also in effect:
1655bf64e879SBryan Drewery.Pp
1656bf64e879SBryan Drewery.Bl -inset -compact
16577840b63aSEnji Cooper.It Va WITHOUT_GOOGLETEST
16587840b63aSEnji Cooper(unless
16597840b63aSEnji Cooper.Va WITH_GOOGLETEST
16607840b63aSEnji Cooperis set explicitly)
1661bf64e879SBryan Drewery.It Va WITHOUT_TESTS_SUPPORT
1662bf64e879SBryan Drewery(unless
1663bf64e879SBryan Drewery.Va WITH_TESTS_SUPPORT
1664bf64e879SBryan Dreweryis set explicitly)
1665c5d09a87SGlen Barber.El
1666c5d09a87SGlen Barber.It Va WITHOUT_TESTS_SUPPORT
1667c5d09a87SGlen BarberSet to disables the build of all test-related dependencies, including ATF.
16687840b63aSEnji CooperWhen set, it enforces these options:
16697840b63aSEnji Cooper.Pp
16707840b63aSEnji Cooper.Bl -item -compact
16717840b63aSEnji Cooper.It
16727840b63aSEnji Cooper.Va WITHOUT_GOOGLETEST
16737840b63aSEnji Cooper.El
167490be798eSDimitry Andric.It Va WITHOUT_TEXTPROC
167590be798eSDimitry AndricSet to not build
167690be798eSDimitry Andricprograms used for text processing.
16770e0e9604SEnji Cooper.It Va WITHOUT_TFTP
16780e0e9604SEnji CooperSet to not build or install
16790e0e9604SEnji Cooper.Xr tftp 1
16800e0e9604SEnji Cooperand
16810e0e9604SEnji Cooper.Xr tftpd 8 .
168290be798eSDimitry Andric.It Va WITHOUT_TOOLCHAIN
1683148bdd15SBrooks DavisSet to not install header or
168490be798eSDimitry Andricprograms used for program development,
168590be798eSDimitry Andriccompilers, debuggers etc.
1686344e2bb9SEd MasteWhen set, it enforces these options:
168790be798eSDimitry Andric.Pp
168890be798eSDimitry Andric.Bl -item -compact
168990be798eSDimitry Andric.It
169090be798eSDimitry Andric.Va WITHOUT_BINUTILS
169190be798eSDimitry Andric.It
169290be798eSDimitry Andric.Va WITHOUT_CLANG
169390be798eSDimitry Andric.It
169490be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS
169590be798eSDimitry Andric.It
169690be798eSDimitry Andric.Va WITHOUT_CLANG_FULL
169790be798eSDimitry Andric.It
169890be798eSDimitry Andric.Va WITHOUT_GDB
1699c5d09a87SGlen Barber.It
1700c5d09a87SGlen Barber.Va WITHOUT_INCLUDES
17013d02549fSBryan Drewery.It
17026c2b7edaSEd Maste.Va WITHOUT_LLD
17036c2b7edaSEd Maste.It
17043d02549fSBryan Drewery.Va WITHOUT_LLDB
17055b9c3654SEd Maste.It
17065b9c3654SEd Maste.Va WITHOUT_LLVM_COV
170790be798eSDimitry Andric.El
170890be798eSDimitry Andric.It Va WITHOUT_UNBOUND
170990be798eSDimitry AndricSet to not build
171090be798eSDimitry Andric.Xr unbound 8
171190be798eSDimitry Andricand related programs.
1712efb949a6SBryan Drewery.It Va WITHOUT_UNIFIED_OBJDIR
1713efb949a6SBryan DrewerySet to use the historical object directory format for
1714efb949a6SBryan Drewery.Xr build 7
1715efb949a6SBryan Drewerytargets.
1716efb949a6SBryan DreweryFor native-builds and builds done directly in sub-directories the format of
1717efb949a6SBryan Drewery.Pa ${MAKEOBJDIRPREFIX}/${.CURDIR}
1718efb949a6SBryan Dreweryis used,
1719efb949a6SBryan Drewerywhile for cross-builds
1720efb949a6SBryan Drewery.Pa ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR}
1721efb949a6SBryan Dreweryis used.
1722efb949a6SBryan Drewery.Pp
1723efb949a6SBryan DreweryThis option is transitional and will be removed before the 12.0 release,
1724efb949a6SBryan Dreweryat which time
1725efb949a6SBryan Drewery.va WITH_UNIFIED_OBJDIR
1726efb949a6SBryan Drewerywill be enabled permanently.
1727efb949a6SBryan Drewery.Pp
1728efb949a6SBryan DreweryThis must be set in the environment, make command line, or
1729efb949a6SBryan Drewery.Pa /etc/src-env.conf ,
1730efb949a6SBryan Drewerynot
1731efb949a6SBryan Drewery.Pa /etc/src.conf .
173290be798eSDimitry Andric.It Va WITHOUT_USB
173390be798eSDimitry AndricSet to not build USB-related programs and libraries.
1734c5d09a87SGlen Barber.It Va WITHOUT_USB_GADGET_EXAMPLES
1735d1040cedSWarren BlockSet to not build USB gadget kernel modules.
173690be798eSDimitry Andric.It Va WITHOUT_UTMPX
173790be798eSDimitry AndricSet to not build user accounting tools such as
173890be798eSDimitry Andric.Xr last 1 ,
173990be798eSDimitry Andric.Xr users 1 ,
174090be798eSDimitry Andric.Xr who 1 ,
174190be798eSDimitry Andric.Xr ac 8 ,
174290be798eSDimitry Andric.Xr lastlogin 8
174390be798eSDimitry Andricand
174490be798eSDimitry Andric.Xr utx 8 .
1745bfdf8aa9SJohn Baldwin.It Va WITH_VERIEXEC
1746bfdf8aa9SJohn BaldwinEnable building
1747bfdf8aa9SJohn Baldwin.Xr veriexec 8
1748bfdf8aa9SJohn Baldwinwhich loads the contents of verified manifests into the kernel
1749bfdf8aa9SJohn Baldwinfor use by
1750bfdf8aa9SJohn Baldwin.Xr mac_veriexec 4
1751bfdf8aa9SJohn Baldwin.Pp
1752de19b521SDimitry AndricDepends on
1753de19b521SDimitry Andric.Va WITH_BEARSSL .
175490be798eSDimitry Andric.It Va WITHOUT_VI
175590be798eSDimitry AndricSet to not build and install vi, view, ex and related programs.
175690be798eSDimitry Andric.It Va WITHOUT_VT
175790be798eSDimitry AndricSet to not build
175890be798eSDimitry Andric.Xr vt 4
175990be798eSDimitry Andricsupport files (fonts and keymaps).
176090be798eSDimitry Andric.It Va WITHOUT_WARNS
176190be798eSDimitry AndricSet this to not add warning flags to the compiler invocations.
176290be798eSDimitry AndricUseful as a temporary workaround when code enters the tree
176390be798eSDimitry Andricwhich triggers warnings in environments that differ from the
1764559f9bfcSJens Schweikhardtoriginal developer.
176590be798eSDimitry Andric.It Va WITHOUT_WIRELESS
176690be798eSDimitry AndricSet to not build programs used for 802.11 wireless networks; especially
176790be798eSDimitry Andric.Xr wpa_supplicant 8
176890be798eSDimitry Andricand
176990be798eSDimitry Andric.Xr hostapd 8 .
1770bf64e879SBryan DreweryWhen set, these options are also in effect:
177190be798eSDimitry Andric.Pp
1772bf64e879SBryan Drewery.Bl -inset -compact
1773bf64e879SBryan Drewery.It Va WITHOUT_WIRELESS_SUPPORT
1774bf64e879SBryan Drewery(unless
1775bf64e879SBryan Drewery.Va WITH_WIRELESS_SUPPORT
1776bf64e879SBryan Dreweryis set explicitly)
177790be798eSDimitry Andric.El
177890be798eSDimitry Andric.It Va WITHOUT_WIRELESS_SUPPORT
177990be798eSDimitry AndricSet to build libraries, programs, and kernel modules without
178090be798eSDimitry Andric802.11 wireless support.
178190be798eSDimitry Andric.It Va WITHOUT_WPA_SUPPLICANT_EAPOL
178290be798eSDimitry AndricBuild
178390be798eSDimitry Andric.Xr wpa_supplicant 8
178490be798eSDimitry Andricwithout support for the IEEE 802.1X protocol and without
178590be798eSDimitry Andricsupport for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS
178690be798eSDimitry Andricprotocols (usable only via 802.1X).
178790be798eSDimitry Andric.It Va WITHOUT_ZFS
17881f7d1483SEd MasteSet to not build ZFS file system kernel module, libraries, and user commands.
178990be798eSDimitry Andric.It Va WITHOUT_ZONEINFO
179090be798eSDimitry AndricSet to not build the timezone database.
17915c021049SEnji CooperWhen set, it enforces these options:
17925c021049SEnji Cooper.Pp
17935c021049SEnji Cooper.Bl -item -compact
17945c021049SEnji Cooper.It
17955c021049SEnji Cooper.Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT
17965c021049SEnji Cooper.It
17975c021049SEnji Cooper.Va WITHOUT_ZONEINFO_OLD_TIMEZONES_SUPPORT
17985c021049SEnji Cooper.El
17995c021049SEnji Cooper.It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
18005c021049SEnji CooperSet to build leapsecond information in to the timezone database.
18015c021049SEnji Cooper.It Va WITH_ZONEINFO_OLD_TIMEZONES_SUPPORT
18025c021049SEnji CooperSet to build backward compatibility timezone aliases in to the timezone
18035c021049SEnji Cooperdatabase.
180490be798eSDimitry Andric.El
180590be798eSDimitry Andric.Sh FILES
180690be798eSDimitry Andric.Bl -tag -compact -width Pa
180790be798eSDimitry Andric.It Pa /etc/src.conf
18080a70ef02SBryan Drewery.It Pa /etc/src-env.conf
180990be798eSDimitry Andric.It Pa /usr/share/mk/bsd.own.mk
181090be798eSDimitry Andric.El
181190be798eSDimitry Andric.Sh SEE ALSO
181290be798eSDimitry Andric.Xr make 1 ,
181390be798eSDimitry Andric.Xr make.conf 5 ,
181490be798eSDimitry Andric.Xr build 7 ,
181590be798eSDimitry Andric.Xr ports 7
181690be798eSDimitry Andric.Sh HISTORY
181790be798eSDimitry AndricThe
181890be798eSDimitry Andric.Nm
181990be798eSDimitry Andricfile appeared in
182090be798eSDimitry Andric.Fx 7.0 .
182190be798eSDimitry Andric.Sh AUTHORS
182288342134SEnji CooperThis manual page was autogenerated by
1823a121d3a8SEnji Cooper.An tools/build/options/makeman .
1824