xref: /freebsd/share/man/man5/src.conf.5 (revision 7d4374f65f7b3df3d2567029c510f2e1576f0f69)
1b1a0e564SEitan Adler.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman.
2fa07cb9cSRuslan Ermilov.\" $FreeBSD$
3*7d4374f6SDimitry Andric.Dd September 5, 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.
103aaa6d7ebSSam Leffler.It Va WITHOUT_APM
104aaa6d7ebSSam LefflerSet to not build
105aaa6d7ebSSam Leffler.Xr apm 8 ,
106aaa6d7ebSSam Leffler.Xr apmd 8
107aaa6d7ebSSam Lefflerand related programs.
108e567b213SRuslan Ermilov.It Va WITHOUT_ASSERT_DEBUG
109e567b213SRuslan ErmilovSet to compile programs and libraries without the
110e567b213SRuslan Ermilov.Xr assert 3
111e567b213SRuslan Ermilovchecks.
112aaa6d7ebSSam Leffler.It Va WITHOUT_AT
113aaa6d7ebSSam LefflerSet to not build
114aaa6d7ebSSam Leffler.Xr at 1
115aaa6d7ebSSam Lefflerand related utilities.
116fa07cb9cSRuslan Ermilov.It Va WITHOUT_ATM
117fa07cb9cSRuslan ErmilovSet to not build
118fa07cb9cSRuslan Ermilovprograms and libraries related to ATM networking.
119fa07cb9cSRuslan Ermilov.It Va WITHOUT_AUDIT
120fa07cb9cSRuslan ErmilovSet to not build audit support into system programs.
121fa07cb9cSRuslan Ermilov.It Va WITHOUT_AUTHPF
122fa07cb9cSRuslan ErmilovSet to not build
123fa07cb9cSRuslan Ermilov.Xr authpf 8 .
12461940879SEnji Cooper.It Va WITHOUT_AUTOFS
12561940879SEnji CooperSet to not build
1264b9f77e4SEdward Tomasz Napierala.Xr autofs 5
12761940879SEnji Cooperrelated programs, libraries, and kernel modules.
128906a1c6cSBryan Drewery.It Va WITHOUT_AUTO_OBJ
129906a1c6cSBryan DreweryDisable automatic creation of objdirs.
130906a1c6cSBryan DreweryThis is enabled by default if the wanted OBJDIR is writable by the current user.
1310a70ef02SBryan Drewery.Pp
132ba852870SBryan DreweryThis must be set in the environment, make command line, or
1330a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
1340a70ef02SBryan Drewerynot
1350a70ef02SBryan Drewery.Pa /etc/src.conf .
136bfdf8aa9SJohn Baldwin.It Va WITH_BEARSSL
137bfdf8aa9SJohn BaldwinBuild the BearSSL library.
138bfdf8aa9SJohn Baldwin.Pp
139bfdf8aa9SJohn BaldwinBearSSL is a tiny SSL library suitable for embedded environments.
140bfdf8aa9SJohn BaldwinFor details see
141bfdf8aa9SJohn Baldwin.Lk http://www.BearSSL.org/
142bfdf8aa9SJohn Baldwin.Pp
143bfdf8aa9SJohn BaldwinThis library is currently only used to perform
144bfdf8aa9SJohn Baldwinsignature verification and related operations
145bfdf8aa9SJohn Baldwinfor Verified Exec and
146bfdf8aa9SJohn Baldwin.Xr loader 8 .
147bfdf8aa9SJohn BaldwinWhen set, these options are also in effect:
148bfdf8aa9SJohn Baldwin.Pp
149bfdf8aa9SJohn Baldwin.Bl -inset -compact
150bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT
151bfdf8aa9SJohn Baldwin(unless
152bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_EFI_SECUREBOOT
153bfdf8aa9SJohn Baldwinis set explicitly)
154bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_VERIEXEC
155bfdf8aa9SJohn Baldwin(unless
156bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_VERIEXEC
157bfdf8aa9SJohn Baldwinis set explicitly)
158f87a2082SEd Maste.It Va WITH_LOADER_VERIEXEC_VECTX
159f87a2082SEd Maste(unless
160f87a2082SEd Maste.Va WITHOUT_LOADER_VERIEXEC_VECTX
161f87a2082SEd Masteis set explicitly)
162bfdf8aa9SJohn Baldwin.It Va WITH_VERIEXEC
163bfdf8aa9SJohn Baldwin(unless
164bfdf8aa9SJohn Baldwin.Va WITHOUT_VERIEXEC
165bfdf8aa9SJohn Baldwinis set explicitly)
166bfdf8aa9SJohn Baldwin.El
16761940879SEnji Cooper.It Va WITHOUT_BHYVE
16861940879SEnji CooperSet to not build or install
16961940879SEnji Cooper.Xr bhyve 8 ,
17061940879SEnji Cooperassociated utilities, and examples.
17161940879SEnji Cooper.Pp
17261940879SEnji CooperThis option only affects amd64/amd64.
173483d953aSJohn Baldwin.It Va WITH_BHYVE_SNAPSHOT
174483d953aSJohn BaldwinSet to include support for save and restore (snapshots) in
175483d953aSJohn Baldwin.Xr bhyve 8
176483d953aSJohn Baldwinand
177483d953aSJohn Baldwin.Xr bhyvectl 8 .
178483d953aSJohn Baldwin.Pp
179483d953aSJohn BaldwinThis option only affects amd64/amd64.
1801f3b049dSEd Maste.It Va WITH_BIND_NOW
1811f3b049dSEd MasteBuild all binaries with the
1821f3b049dSEd Maste.Dv DF_BIND_NOW
1831f3b049dSEd Masteflag set to indicate that the run-time loader should perform all relocation
1841f3b049dSEd Masteprocessing at process startup rather than on demand.
1850341a043SBryan Drewery.It Va WITHOUT_BLACKLIST
1864650b8aeSEnji CooperSet this if you do not want to build
1874650b8aeSEnji Cooper.Xr blacklistd 8
1884650b8aeSEnji Cooperand
1894650b8aeSEnji Cooper.Xr blacklistctl 8 .
190bf64e879SBryan DreweryWhen set, these options are also in effect:
1910341a043SBryan Drewery.Pp
192bf64e879SBryan Drewery.Bl -inset -compact
193bf64e879SBryan Drewery.It Va WITHOUT_BLACKLIST_SUPPORT
194bf64e879SBryan Drewery(unless
195bf64e879SBryan Drewery.Va WITH_BLACKLIST_SUPPORT
196bf64e879SBryan Dreweryis set explicitly)
1970341a043SBryan Drewery.El
1980341a043SBryan Drewery.It Va WITHOUT_BLACKLIST_SUPPORT
1994650b8aeSEnji CooperSet to build some programs without
2004650b8aeSEnji Cooper.Xr libblacklist 3
2014650b8aeSEnji Coopersupport, like
2020341a043SBryan Drewery.Xr fingerd 8 ,
2030341a043SBryan Drewery.Xr ftpd 8 ,
2040341a043SBryan Dreweryand
2050341a043SBryan Drewery.Xr sshd 8 .
20690be798eSDimitry Andric.It Va WITHOUT_BLUETOOTH
20790be798eSDimitry AndricSet to not build Bluetooth related kernel modules, programs and libraries.
20890be798eSDimitry Andric.It Va WITHOUT_BOOT
20990be798eSDimitry AndricSet to not build the boot blocks and loader.
2100e0e9604SEnji Cooper.It Va WITHOUT_BOOTPARAMD
2110e0e9604SEnji CooperSet to not build or install
2120e0e9604SEnji Cooper.Xr bootparamd 8 .
2130e0e9604SEnji Cooper.It Va WITHOUT_BOOTPD
2140e0e9604SEnji CooperSet to not build or install
2150e0e9604SEnji Cooper.Xr bootpd 8 .
21693da8366SEnji Cooper.It Va WITHOUT_BSDINSTALL
21793da8366SEnji CooperSet to not build
21893da8366SEnji Cooper.Xr bsdinstall 8 ,
21993da8366SEnji Cooper.Xr sade 8 ,
22093da8366SEnji Cooperand related programs.
22190be798eSDimitry Andric.It Va WITHOUT_BSD_CPIO
22290be798eSDimitry AndricSet to not build the BSD licensed version of cpio based on
22390be798eSDimitry Andric.Xr libarchive 3 .
22490be798eSDimitry Andric.It Va WITH_BSD_GREP
22590be798eSDimitry AndricInstall BSD-licensed grep as '[ef]grep' instead of GNU grep.
22690be798eSDimitry Andric.It Va WITHOUT_BSNMP
22790be798eSDimitry AndricSet to not build or install
22890be798eSDimitry Andric.Xr bsnmpd 1
22990be798eSDimitry Andricand related libraries and data files.
23090be798eSDimitry Andric.It Va WITHOUT_BZIP2
23190be798eSDimitry AndricSet to not build contributed bzip2 software as a part of the base system.
23290be798eSDimitry Andric.Bf -symbolic
23390be798eSDimitry AndricThe option has no effect yet.
23490be798eSDimitry Andric.Ef
235bf64e879SBryan DreweryWhen set, these options are also in effect:
23690be798eSDimitry Andric.Pp
237bf64e879SBryan Drewery.Bl -inset -compact
238bf64e879SBryan Drewery.It Va WITHOUT_BZIP2_SUPPORT
239bf64e879SBryan Drewery(unless
240bf64e879SBryan Drewery.Va WITH_BZIP2_SUPPORT
241bf64e879SBryan Dreweryis set explicitly)
24290be798eSDimitry Andric.El
24390be798eSDimitry Andric.It Va WITHOUT_BZIP2_SUPPORT
24490be798eSDimitry AndricSet to build some programs without optional bzip2 support.
245fd1efedcSConrad Meyer.It Va WITHOUT_CALENDAR
246fd1efedcSConrad MeyerSet to not build
247fd1efedcSConrad Meyer.Xr calendar 1 .
24890be798eSDimitry Andric.It Va WITHOUT_CAPSICUM
24990be798eSDimitry AndricSet to not build Capsicum support into system programs.
250344e2bb9SEd MasteWhen set, it enforces these options:
251aced6942SBaptiste Daroussin.Pp
252aced6942SBaptiste Daroussin.Bl -item -compact
253aced6942SBaptiste Daroussin.It
254aced6942SBaptiste Daroussin.Va WITHOUT_CASPER
255aced6942SBaptiste Daroussin.El
256de19b521SDimitry Andric.It Va WITHOUT_CAROOT
257de19b521SDimitry AndricSet to not add the trusted certificates from the Mozilla NSS bundle to
258de19b521SDimitry Andricbase.
25990be798eSDimitry Andric.It Va WITHOUT_CASPER
26090be798eSDimitry AndricSet to not build Casper program and related libraries.
2611c01e4f8SBryan Drewery.It Va WITH_CCACHE_BUILD
2621c01e4f8SBryan DrewerySet to use
2631c01e4f8SBryan Drewery.Xr ccache 1
2641c01e4f8SBryan Dreweryfor the build.
2651c01e4f8SBryan DreweryNo configuration is required except to install the
2661c01e4f8SBryan Drewery.Sy devel/ccache
2671c01e4f8SBryan Drewerypackage.
268344e2bb9SEd MasteWhen using with
269344e2bb9SEd Maste.Xr distcc 1 ,
270344e2bb9SEd Masteset
2711c01e4f8SBryan Drewery.Sy CCACHE_PREFIX=/usr/local/bin/distcc .
2721c01e4f8SBryan DreweryThe default cache directory of
2731c01e4f8SBryan Drewery.Pa $HOME/.ccache
2741c01e4f8SBryan Drewerywill be used, which can be overridden by setting
2751c01e4f8SBryan Drewery.Sy CCACHE_DIR .
2761c01e4f8SBryan DreweryThe
2771c01e4f8SBryan Drewery.Sy CCACHE_COMPILERCHECK
2781c01e4f8SBryan Dreweryoption defaults to
2791c01e4f8SBryan Drewery.Sy content
2801c01e4f8SBryan Drewerywhen using the in-tree bootstrap compiler,
2811c01e4f8SBryan Dreweryand
2821c01e4f8SBryan Drewery.Sy mtime
2831c01e4f8SBryan Drewerywhen using an external compiler.
2841c01e4f8SBryan DreweryThe
2851c01e4f8SBryan Drewery.Sy CCACHE_CPP2
2861c01e4f8SBryan Dreweryoption is used for Clang but not GCC.
2871c01e4f8SBryan Drewery.Pp
2881c01e4f8SBryan DrewerySharing a cache between multiple work directories requires using a layout
2891c01e4f8SBryan Drewerysimilar to
2901c01e4f8SBryan Drewery.Pa /some/prefix/src
2911c01e4f8SBryan Drewery.Pa /some/prefix/obj
2921c01e4f8SBryan Dreweryand an environment such as:
2931c01e4f8SBryan Drewery.Bd -literal -offset indent
2941c01e4f8SBryan DreweryCCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj'
2951c01e4f8SBryan Drewery.Ed
2961c01e4f8SBryan Drewery.Pp
2971c01e4f8SBryan DrewerySee
2981c01e4f8SBryan Drewery.Xr ccache 1
2991c01e4f8SBryan Dreweryfor more configuration options.
30093da8366SEnji Cooper.It Va WITHOUT_CCD
30193da8366SEnji CooperSet to not build
30293da8366SEnji Cooper.Xr geom_ccd 4
30393da8366SEnji Cooperand related utilities.
30490be798eSDimitry Andric.It Va WITHOUT_CDDL
30590be798eSDimitry AndricSet to not build code licensed under Sun's CDDL.
306344e2bb9SEd MasteWhen set, it enforces these options:
30790be798eSDimitry Andric.Pp
30890be798eSDimitry Andric.Bl -item -compact
30990be798eSDimitry Andric.It
31090be798eSDimitry Andric.Va WITHOUT_CTF
31190be798eSDimitry Andric.It
3121f7d1483SEd Maste.Va WITHOUT_LOADER_ZFS
3131f7d1483SEd Maste.It
31490be798eSDimitry Andric.Va WITHOUT_ZFS
31590be798eSDimitry Andric.El
31690be798eSDimitry Andric.It Va WITHOUT_CLANG
31790be798eSDimitry AndricSet to not build the Clang C/C++ compiler during the regular phase of the build.
318344e2bb9SEd MasteWhen set, it enforces these options:
31990be798eSDimitry Andric.Pp
32090be798eSDimitry Andric.Bl -item -compact
32190be798eSDimitry Andric.It
32290be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS
32390be798eSDimitry Andric.It
32419267656SConrad Meyer.Va WITHOUT_CLANG_FORMAT
32519267656SConrad Meyer.It
32690be798eSDimitry Andric.Va WITHOUT_CLANG_FULL
3275b9c3654SEd Maste.It
3285b9c3654SEd Maste.Va WITHOUT_LLVM_COV
32990be798eSDimitry Andric.El
33090be798eSDimitry Andric.It Va WITHOUT_CLANG_BOOTSTRAP
331344e2bb9SEd MasteSet to not build the Clang C/C++ compiler during the bootstrap phase of
332344e2bb9SEd Mastethe build.
333344e2bb9SEd MasteTo be able to build the system, either gcc or clang bootstrap must be
334344e2bb9SEd Masteenabled unless an alternate compiler is provided via XCC.
33590be798eSDimitry Andric.It Va WITH_CLANG_EXTRAS
336b3a27c81SEd MasteSet to build additional clang and llvm tools, such as bugpoint and
337b3a27c81SEd Masteclang-format.
33819267656SConrad Meyer.It Va WITH_CLANG_FORMAT
33919267656SConrad MeyerSet to build clang-format.
34090be798eSDimitry Andric.It Va WITHOUT_CLANG_FULL
34190be798eSDimitry AndricSet to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
34290be798eSDimitry Andricthe Clang C/C++ compiler.
34390be798eSDimitry Andric.It Va WITHOUT_CLANG_IS_CC
3448683408cSEd MasteDo not install links to the Clang C/C++ compiler as
34590be798eSDimitry Andric.Pa /usr/bin/cc ,
34690be798eSDimitry Andric.Pa /usr/bin/c++
34790be798eSDimitry Andricand
34890be798eSDimitry Andric.Pa /usr/bin/cpp .
34990be798eSDimitry Andric.It Va WITHOUT_CPP
35090be798eSDimitry AndricSet to not build
35190be798eSDimitry Andric.Xr cpp 1 .
35290be798eSDimitry Andric.It Va WITHOUT_CROSS_COMPILER
35390be798eSDimitry AndricSet to not build any cross compiler in the cross-tools stage of buildworld.
354344e2bb9SEd MasteWhen compiling a different version of
35590be798eSDimitry Andric.Fx
356344e2bb9SEd Mastethan what is installed on the system, provide an alternate
35790be798eSDimitry Andriccompiler with XCC to ensure success.
358344e2bb9SEd MasteWhen compiling with an identical version of
35990be798eSDimitry Andric.Fx
36090be798eSDimitry Andricto the host, this option may be safely used.
36190be798eSDimitry AndricThis option may also be safe when the host version of
36290be798eSDimitry Andric.Fx
36390be798eSDimitry Andricis close to the sources being built, but all bets are off if there have
36490be798eSDimitry Andricbeen any changes to the toolchain between the versions.
365344e2bb9SEd MasteWhen set, it enforces these options:
36690be798eSDimitry Andric.Pp
36790be798eSDimitry Andric.Bl -item -compact
36890be798eSDimitry Andric.It
36990be798eSDimitry Andric.Va WITHOUT_CLANG_BOOTSTRAP
37090be798eSDimitry Andric.It
371f972b8a4SBryan Drewery.Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
372f972b8a4SBryan Drewery.It
37328f52545SEd Maste.Va WITHOUT_LLD_BOOTSTRAP
37490be798eSDimitry Andric.El
37590be798eSDimitry Andric.It Va WITHOUT_CRYPT
37690be798eSDimitry AndricSet to not build any crypto code.
377344e2bb9SEd MasteWhen set, it enforces these options:
37890be798eSDimitry Andric.Pp
37990be798eSDimitry Andric.Bl -item -compact
38090be798eSDimitry Andric.It
3819f4e04c1SEd Maste.Va WITHOUT_DMAGENT
3829f4e04c1SEd Maste.It
38390be798eSDimitry Andric.Va WITHOUT_KERBEROS
38490be798eSDimitry Andric.It
385fb27d7aeSEd Maste.Va WITHOUT_KERBEROS_SUPPORT
386fb27d7aeSEd Maste.It
387da39b3adSEd Maste.Va WITHOUT_LDNS
388da39b3adSEd Maste.It
389da39b3adSEd Maste.Va WITHOUT_LDNS_UTILS
390da39b3adSEd Maste.It
39190be798eSDimitry Andric.Va WITHOUT_OPENSSH
39290be798eSDimitry Andric.It
39390be798eSDimitry Andric.Va WITHOUT_OPENSSL
394da39b3adSEd Maste.It
395116f7fccSEd Maste.Va WITHOUT_PKGBOOTSTRAP
396116f7fccSEd Maste.It
397116f7fccSEd Maste.Va WITHOUT_SVN
398116f7fccSEd Maste.It
399116f7fccSEd Maste.Va WITHOUT_SVNLITE
400116f7fccSEd Maste.It
401da39b3adSEd Maste.Va WITHOUT_UNBOUND
402116f7fccSEd Maste.It
403116f7fccSEd Maste.Va WITHOUT_WIRELESS
40490be798eSDimitry Andric.El
40590be798eSDimitry Andric.Pp
406344e2bb9SEd MasteWhen set, these options are also in effect:
40790be798eSDimitry Andric.Pp
40890be798eSDimitry Andric.Bl -inset -compact
40990be798eSDimitry Andric.It Va WITHOUT_GSSAPI
41090be798eSDimitry Andric(unless
41190be798eSDimitry Andric.Va WITH_GSSAPI
41290be798eSDimitry Andricis set explicitly)
41390be798eSDimitry Andric.El
41490be798eSDimitry Andric.It Va WITH_CTF
41590be798eSDimitry AndricSet to compile with CTF (Compact C Type Format) data.
41690be798eSDimitry AndricCTF data encapsulates a reduced form of debugging information
41790be798eSDimitry Andricsimilar to DWARF and the venerable stabs and is required for DTrace.
41854d8c5d5SBryan Drewery.It Va WITHOUT_CUSE
41954d8c5d5SBryan DrewerySet to not build CUSE-related programs and libraries.
4209cf76983SNavdeep Parhar.It Va WITHOUT_CXGBETOOL
4219cf76983SNavdeep ParharSet to not build
4229cf76983SNavdeep Parhar.Xr cxgbetool 8
4239cf76983SNavdeep Parhar.Pp
4249cf76983SNavdeep ParharThis is a default setting on
42573699177SEd Mastearm/armv6, arm/armv7, mips/mips, mips/mips64, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
4269cf76983SNavdeep Parhar.It Va WITH_CXGBETOOL
4279cf76983SNavdeep ParharSet to build
4289cf76983SNavdeep Parhar.Xr cxgbetool 8
4299cf76983SNavdeep Parhar.Pp
4309cf76983SNavdeep ParharThis is a default setting on
431429932baSEd Masteamd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64.
43290be798eSDimitry Andric.It Va WITHOUT_CXX
43390be798eSDimitry AndricSet to not build
4344a62dc3aSBryan Drewery.Xr c++ 1
43590be798eSDimitry Andricand related libraries.
43690be798eSDimitry AndricIt will also prevent building of
43790be798eSDimitry Andric.Xr gperf 1
43890be798eSDimitry Andricand
43990be798eSDimitry Andric.Xr devd 8 .
440344e2bb9SEd MasteWhen set, it enforces these options:
44190be798eSDimitry Andric.Pp
44290be798eSDimitry Andric.Bl -item -compact
44390be798eSDimitry Andric.It
44490be798eSDimitry Andric.Va WITHOUT_CLANG
44590be798eSDimitry Andric.It
44690be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS
44790be798eSDimitry Andric.It
44819267656SConrad Meyer.Va WITHOUT_CLANG_FORMAT
44919267656SConrad Meyer.It
45090be798eSDimitry Andric.Va WITHOUT_CLANG_FULL
45190be798eSDimitry Andric.It
452051ea717SEd Maste.Va WITHOUT_DTRACE_TESTS
453051ea717SEd Maste.It
454770379b9SEd Maste.Va WITHOUT_GOOGLETEST
455770379b9SEd Maste.It
4565b9c3654SEd Maste.Va WITHOUT_LLVM_COV
4575b9c3654SEd Maste.It
458051ea717SEd Maste.Va WITHOUT_TESTS
45990be798eSDimitry Andric.El
4604a5e4462SEd Maste.It Va WITHOUT_DEBUG_FILES
4614a5e4462SEd MasteSet to avoid building or installing standalone debug files for each
4624a5e4462SEd Masteexecutable binary and shared library.
463cc68b6e5SEd Maste.It Va WITHOUT_DIALOG
464344e2bb9SEd MasteSet to not build
465344e2bb9SEd Maste.Xr dialog 1 ,
466344e2bb9SEd Maste.Xr dialog 3 ,
467344e2bb9SEd Maste.Xr dpv 1 ,
468344e2bb9SEd Masteand
469344e2bb9SEd Maste.Xr dpv 3 .
470344e2bb9SEd MasteWhen set, it enforces these options:
471cc68b6e5SEd Maste.Pp
472cc68b6e5SEd Maste.Bl -item -compact
473cc68b6e5SEd Maste.It
474cc68b6e5SEd Maste.Va WITHOUT_BSDINSTALL
475cc68b6e5SEd Maste.El
47690be798eSDimitry Andric.It Va WITHOUT_DICT
47790be798eSDimitry AndricSet to not build the Webster dictionary files.
47832b5dc9aSSimon J. Gerraty.It Va WITH_DIRDEPS_BUILD
479be894451SBryan DreweryThis is an experimental build system.
48032b5dc9aSSimon J. GerratyFor details see
48132b5dc9aSSimon J. Gerratyhttp://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
482be894451SBryan DreweryBuild commands can be seen from the top-level with:
483be894451SBryan Drewery.Dl make show-valid-targets
48432b5dc9aSSimon J. GerratyThe build is driven by dirdeps.mk using
48532b5dc9aSSimon J. Gerraty.Va DIRDEPS
48632b5dc9aSSimon J. Gerratystored in
48732b5dc9aSSimon J. GerratyMakefile.depend files found in each directory.
48832b5dc9aSSimon J. Gerraty.Pp
48932b5dc9aSSimon J. GerratyThe build can be started from anywhere, and behaves the same.
49032b5dc9aSSimon J. GerratyThe initial instance of
49132b5dc9aSSimon J. Gerraty.Xr make 1
49232b5dc9aSSimon J. Gerratyrecursively reads
49332b5dc9aSSimon J. Gerraty.Va DIRDEPS
494344e2bb9SEd Mastefrom
495344e2bb9SEd Maste.Pa Makefile.depend ,
49632b5dc9aSSimon J. Gerratycomputing a graph of tree dependencies from the current origin.
49732b5dc9aSSimon J. GerratySetting
49832b5dc9aSSimon J. Gerraty.Va NO_DIRDEPS
499344e2bb9SEd Masteskips checking dirdep dependencies and will only build in the current
5007f76a95cSBryan Dreweryand child directories.
5017f76a95cSBryan Drewery.Va NO_DIRDEPS_BELOW
502344e2bb9SEd Masteskips building any dirdeps and only build the current directory.
50332b5dc9aSSimon J. Gerraty.Pp
504be894451SBryan DreweryThis also utilizes the
505be894451SBryan Drewery.Va WITH_META_MODE
506be894451SBryan Drewerylogic for incremental builds.
50732b5dc9aSSimon J. Gerraty.Pp
508344e2bb9SEd MasteThe build hides commands executed unless
50932b5dc9aSSimon J. Gerraty.Va NO_SILENT
51032b5dc9aSSimon J. Gerratyis defined.
51132b5dc9aSSimon J. Gerraty.Pp
512be894451SBryan DreweryNote that there is currently no mass install feature for this.
513be894451SBryan Drewery.Pp
514344e2bb9SEd MasteWhen set, it enforces these options:
51532b5dc9aSSimon J. Gerraty.Pp
51632b5dc9aSSimon J. Gerraty.Bl -item -compact
51732b5dc9aSSimon J. Gerraty.It
51832b5dc9aSSimon J. Gerraty.Va WITH_INSTALL_AS_USER
51932b5dc9aSSimon J. Gerraty.El
52032b5dc9aSSimon J. Gerraty.Pp
521344e2bb9SEd MasteWhen set, these options are also in effect:
52232b5dc9aSSimon J. Gerraty.Pp
52332b5dc9aSSimon J. Gerraty.Bl -inset -compact
52426b79d5bSHajimu UMEMOTO.It Va WITH_META_MODE
52526b79d5bSHajimu UMEMOTO(unless
52626b79d5bSHajimu UMEMOTO.Va WITHOUT_META_MODE
52726b79d5bSHajimu UMEMOTOis set explicitly)
52832b5dc9aSSimon J. Gerraty.It Va WITH_STAGING
52932b5dc9aSSimon J. Gerraty(unless
53032b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING
53132b5dc9aSSimon J. Gerratyis set explicitly)
53232b5dc9aSSimon J. Gerraty.It Va WITH_STAGING_MAN
53332b5dc9aSSimon J. Gerraty(unless
53432b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING_MAN
53532b5dc9aSSimon J. Gerratyis set explicitly)
53632b5dc9aSSimon J. Gerraty.It Va WITH_STAGING_PROG
53732b5dc9aSSimon J. Gerraty(unless
53832b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING_PROG
53932b5dc9aSSimon J. Gerratyis set explicitly)
54032b5dc9aSSimon J. Gerraty.It Va WITH_SYSROOT
54132b5dc9aSSimon J. Gerraty(unless
54232b5dc9aSSimon J. Gerraty.Va WITHOUT_SYSROOT
54332b5dc9aSSimon J. Gerratyis set explicitly)
54432b5dc9aSSimon J. Gerraty.El
54532b5dc9aSSimon J. Gerraty.Pp
54632b5dc9aSSimon J. GerratyThis must be set in the environment, make command line, or
54732b5dc9aSSimon J. Gerraty.Pa /etc/src-env.conf ,
54832b5dc9aSSimon J. Gerratynot
54932b5dc9aSSimon J. Gerraty.Pa /etc/src.conf .
550cc2520d2SSimon J. Gerraty.It Va WITH_DIRDEPS_CACHE
551cc2520d2SSimon J. GerratyCache result of dirdeps.mk which can save significant time
552cc2520d2SSimon J. Gerratyfor subsequent builds.
553cc2520d2SSimon J. GerratyDepends on
55432b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD .
5550a70ef02SBryan Drewery.Pp
556ba852870SBryan DreweryThis must be set in the environment, make command line, or
5570a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
5580a70ef02SBryan Drewerynot
5590a70ef02SBryan Drewery.Pa /etc/src.conf .
56090be798eSDimitry Andric.It Va WITHOUT_DMAGENT
561344e2bb9SEd MasteSet to not build dma Mail Transport Agent.
56290be798eSDimitry Andric.It Va WITHOUT_DOCCOMPRESS
563344e2bb9SEd MasteSet to not install compressed system documentation.
56490be798eSDimitry AndricOnly the uncompressed version will be installed.
56516f3fdf5SMark Johnston.It Va WITH_DTRACE_TESTS
56616f3fdf5SMark JohnstonSet to build and install the DTrace test suite in
56716f3fdf5SMark Johnston.Pa /usr/tests/cddl/usr.sbin/dtrace .
56816f3fdf5SMark JohnstonThis test suite is considered experimental on architectures other than
56916f3fdf5SMark Johnstonamd64/amd64 and running it may cause system instability.
57090be798eSDimitry Andric.It Va WITHOUT_DYNAMICROOT
57190be798eSDimitry AndricSet this if you do not want to link
57290be798eSDimitry Andric.Pa /bin
57390be798eSDimitry Andricand
57490be798eSDimitry Andric.Pa /sbin
57590be798eSDimitry Andricdynamically.
57693da8366SEnji Cooper.It Va WITHOUT_EE
57793da8366SEnji CooperSet to not build and install
57893da8366SEnji Cooper.Xr edit 1 ,
57993da8366SEnji Cooper.Xr ee 1 ,
58093da8366SEnji Cooperand related programs.
5810cd582c8SEnji Cooper.It Va WITHOUT_EFI
5820cd582c8SEnji CooperSet not to build
5830cd582c8SEnji Cooper.Xr efivar 3
5840cd582c8SEnji Cooperand
5850cd582c8SEnji Cooper.Xr efivar 8 .
5860cd582c8SEnji Cooper.Pp
587344e2bb9SEd MasteThis is a default setting on
588d3112319SMitchell Hornemips/mips, mips/mips64, powerpc/powerpc and powerpc/powerpc64.
5890cd582c8SEnji Cooper.It Va WITH_EFI
5900cd582c8SEnji CooperSet to build
5910cd582c8SEnji Cooper.Xr efivar 3
5920cd582c8SEnji Cooperand
5930cd582c8SEnji Cooper.Xr efivar 8 .
5940cd582c8SEnji Cooper.Pp
595344e2bb9SEd MasteThis is a default setting on
596d3112319SMitchell Horneamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
5975977355fSBryan Drewery.It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
5985977355fSBryan DrewerySet to not build ELF Tool Chain tools
5995977355fSBryan Drewery(addr2line, nm, size, strings and strip)
6005977355fSBryan Dreweryas part of the bootstrap process.
6015977355fSBryan Drewery.Bf -symbolic
6025977355fSBryan DreweryAn alternate bootstrap tool chain must be provided.
6035977355fSBryan Drewery.Ef
60490be798eSDimitry Andric.It Va WITHOUT_EXAMPLES
60590be798eSDimitry AndricSet to avoid installing examples to
60690be798eSDimitry Andric.Pa /usr/share/examples/ .
60743f75d57SBjoern A. Zeeb.It Va WITH_EXPERIMENTAL
60843f75d57SBjoern A. ZeebSet to include experimental features in the build.
609d5a2667bSJonathan T. Looney.It Va WITH_EXTRA_TCP_STACKS
610d5a2667bSJonathan T. LooneySet to build extra TCP stack modules.
61190be798eSDimitry Andric.It Va WITHOUT_FDT
61290be798eSDimitry AndricSet to not build Flattened Device Tree support as part of the base system.
61390be798eSDimitry AndricThis includes the device tree compiler (dtc) and libfdt support library.
6140e0e9604SEnji Cooper.It Va WITHOUT_FILE
6150e0e9604SEnji CooperSet to not build
6160e0e9604SEnji Cooper.Xr file 1
6170e0e9604SEnji Cooperand related programs.
618770379b9SEd MasteWhen set, it enforces these options:
619770379b9SEd Maste.Pp
620770379b9SEd Maste.Bl -item -compact
621770379b9SEd Maste.It
622770379b9SEd Maste.Va WITHOUT_SVNLITE
623770379b9SEd Maste.El
6240e0e9604SEnji Cooper.It Va WITHOUT_FINGER
6250e0e9604SEnji CooperSet to not build or install
6260e0e9604SEnji Cooper.Xr finger 1
6270e0e9604SEnji Cooperand
6280e0e9604SEnji Cooper.Xr fingerd 8 .
62990be798eSDimitry Andric.It Va WITHOUT_FLOPPY
63090be798eSDimitry AndricSet to not build or install programs
63190be798eSDimitry Andricfor operating floppy disk driver.
63290be798eSDimitry Andric.It Va WITHOUT_FMTREE
63390be798eSDimitry AndricSet to not build and install
63490be798eSDimitry Andric.Pa /usr/sbin/fmtree .
635a0f6423bSEd Maste.It Va WITHOUT_FORMAT_EXTENSIONS
636a0f6423bSEd MasteSet to not enable
637a0f6423bSEd Maste.Fl fformat-extensions
638a0f6423bSEd Mastewhen compiling the kernel.
639a0f6423bSEd MasteAlso disables all format checking.
64090be798eSDimitry Andric.It Va WITHOUT_FORTH
64190be798eSDimitry AndricSet to build bootloaders without Forth support.
64290be798eSDimitry Andric.It Va WITHOUT_FP_LIBC
64390be798eSDimitry AndricSet to build
64490be798eSDimitry Andric.Nm libc
64590be798eSDimitry Andricwithout floating-point support.
64690be798eSDimitry Andric.It Va WITHOUT_FREEBSD_UPDATE
64790be798eSDimitry AndricSet to not build
64890be798eSDimitry Andric.Xr freebsd-update 8 .
6490e0e9604SEnji Cooper.It Va WITHOUT_FTP
6500e0e9604SEnji CooperSet to not build or install
6510e0e9604SEnji Cooper.Xr ftp 1
6520e0e9604SEnji Cooperand
6530e0e9604SEnji Cooper.Xr ftpd 8 .
65490be798eSDimitry Andric.It Va WITHOUT_GAMES
65590be798eSDimitry AndricSet to not build games.
65690be798eSDimitry Andric.It Va WITHOUT_GDB
65790be798eSDimitry AndricSet to not build
65890be798eSDimitry Andric.Xr gdb 1 .
6595be09b10SEd Maste.Pp
660344e2bb9SEd MasteThis is a default setting on
6614cee74dfSEd Mastearm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
6625977355fSBryan Drewery.It Va WITH_GDB
6635977355fSBryan DrewerySet to build
6645977355fSBryan Drewery.Xr gdb 1 .
6655977355fSBryan Drewery.Pp
666344e2bb9SEd MasteThis is a default setting on
66773699177SEd Masteamd64/amd64, arm/armv6, arm/armv7, i386/i386, mips/mips, mips/mips64, powerpc/powerpc and powerpc/powerpc64.
66836e8c7bbSEd Maste.It Va WITHOUT_GNU_DIFF
66936e8c7bbSEd MasteSet to not build GNU
67036e8c7bbSEd Maste.Xr diff3 1 .
67136e8c7bbSEd Maste.It Va WITHOUT_GNU_GREP
67236e8c7bbSEd MasteSet to not build GNU
67336e8c7bbSEd Maste.Xr grep 1 .
674e9e768f7SEd Maste.It Va WITH_GNU_GREP_COMPAT
675e9e768f7SEd MasteSet this option to include GNU extensions in
676e9e768f7SEd Maste.Xr bsdgrep 1
677e9e768f7SEd Masteby linking against libgnuregex.
6787840b63aSEnji Cooper.It Va WITHOUT_GOOGLETEST
6797840b63aSEnji CooperSet to neither build nor install
6807840b63aSEnji Cooper.Lb libgmock ,
6817840b63aSEnji Cooper.Lb libgtest ,
6827840b63aSEnji Cooperand dependent tests.
68345181e6dSEd Maste.Pp
68445181e6dSEd MasteThis is a default setting on
68573699177SEd Mastemips/mips and mips/mips64.
68645181e6dSEd Maste.It Va WITH_GOOGLETEST
68745181e6dSEd MasteSet to build and install
68845181e6dSEd Maste.Lb libgmock ,
68945181e6dSEd Maste.Lb libgtest ,
69045181e6dSEd Masteand dependent tests.
69145181e6dSEd Maste.Pp
69245181e6dSEd MasteThis is a default setting on
69345181e6dSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
69490be798eSDimitry Andric.It Va WITHOUT_GPIO
69590be798eSDimitry AndricSet to not build
69690be798eSDimitry Andric.Xr gpioctl 8
69790be798eSDimitry Andricas part of the base system.
69890be798eSDimitry Andric.It Va WITHOUT_GSSAPI
69990be798eSDimitry AndricSet to not build libgssapi.
70061940879SEnji Cooper.It Va WITHOUT_HAST
70161940879SEnji CooperSet to not build
70261940879SEnji Cooper.Xr hastd 8
70361940879SEnji Cooperand related utilities.
70490be798eSDimitry Andric.It Va WITH_HESIOD
70590be798eSDimitry AndricSet to build Hesiod support.
70690be798eSDimitry Andric.It Va WITHOUT_HTML
70790be798eSDimitry AndricSet to not build HTML docs.
7082c4b4abcSXin LI.It Va WITHOUT_HYPERV
7092c4b4abcSXin LISet to not build or install HyperV utilities.
7100543ade3SBrooks Davis.Pp
7110543ade3SBrooks DavisThis is a default setting on
71273699177SEd Mastearm/armv6, arm/armv7, arm64/aarch64, mips/mips, mips/mips64, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
7130543ade3SBrooks Davis.It Va WITH_HYPERV
7140543ade3SBrooks DavisSet to build or install HyperV utilities.
7150543ade3SBrooks Davis.Pp
7160543ade3SBrooks DavisThis is a default setting on
7170543ade3SBrooks Davisamd64/amd64 and i386/i386.
71890be798eSDimitry Andric.It Va WITHOUT_ICONV
71990be798eSDimitry AndricSet to not build iconv as part of libc.
720c5d09a87SGlen Barber.It Va WITHOUT_INCLUDES
721c5d09a87SGlen BarberSet to not install header files.
722c5d09a87SGlen BarberThis option used to be spelled
723c5d09a87SGlen Barber.Va NO_INCS .
724c5d09a87SGlen Barber.Bf -symbolic
725c5d09a87SGlen BarberThe option does not work for build targets.
726c5d09a87SGlen Barber.Ef
72790be798eSDimitry Andric.It Va WITHOUT_INET
72890be798eSDimitry AndricSet to not build programs and libraries related to IPv4 networking.
729344e2bb9SEd MasteWhen set, it enforces these options:
73090be798eSDimitry Andric.Pp
73190be798eSDimitry Andric.Bl -item -compact
73290be798eSDimitry Andric.It
73390be798eSDimitry Andric.Va WITHOUT_INET_SUPPORT
73490be798eSDimitry Andric.El
73590be798eSDimitry Andric.It Va WITHOUT_INET6
73690be798eSDimitry AndricSet to not build
73790be798eSDimitry Andricprograms and libraries related to IPv6 networking.
738344e2bb9SEd MasteWhen set, it enforces these options:
73990be798eSDimitry Andric.Pp
74090be798eSDimitry Andric.Bl -item -compact
74190be798eSDimitry Andric.It
74290be798eSDimitry Andric.Va WITHOUT_INET6_SUPPORT
74390be798eSDimitry Andric.El
74490be798eSDimitry Andric.It Va WITHOUT_INET6_SUPPORT
74590be798eSDimitry AndricSet to build libraries, programs, and kernel modules without IPv6 support.
7460e0e9604SEnji Cooper.It Va WITHOUT_INETD
7470e0e9604SEnji CooperSet to not build
7480e0e9604SEnji Cooper.Xr inetd 8 .
74990be798eSDimitry Andric.It Va WITHOUT_INET_SUPPORT
75090be798eSDimitry AndricSet to build libraries, programs, and kernel modules without IPv4 support.
75190be798eSDimitry Andric.It Va WITHOUT_INSTALLLIB
752344e2bb9SEd MasteSet this to not install optional libraries.
753344e2bb9SEd MasteFor example, when creating a
75490be798eSDimitry Andric.Xr nanobsd 8
75590be798eSDimitry Andricimage.
756f79bedf5SBryan Drewery.Bf -symbolic
757f79bedf5SBryan DreweryThe option does not work for build targets.
758f79bedf5SBryan Drewery.Ef
75990be798eSDimitry Andric.It Va WITH_INSTALL_AS_USER
76090be798eSDimitry AndricSet to make install targets succeed for non-root users by installing
76190be798eSDimitry Andricfiles with owner and group attributes set to that of the user running
76290be798eSDimitry Andricthe
76390be798eSDimitry Andric.Xr make 1
76490be798eSDimitry Andriccommand.
765344e2bb9SEd MasteThe user still must set the
76690be798eSDimitry Andric.Va DESTDIR
76790be798eSDimitry Andricvariable to point to a directory where the user has write permissions.
76890be798eSDimitry Andric.It Va WITHOUT_IPFILTER
76990be798eSDimitry AndricSet to not build IP Filter package.
77090be798eSDimitry Andric.It Va WITHOUT_IPFW
77190be798eSDimitry AndricSet to not build IPFW tools.
77288342134SEnji Cooper.It Va WITHOUT_IPSEC_SUPPORT
77388342134SEnji CooperSet to not build the kernel with
77488342134SEnji Cooper.Xr ipsec 4
77588342134SEnji Coopersupport.
77688342134SEnji CooperThis option is needed for
77788342134SEnji Cooper.Xr ipsec 4
77888342134SEnji Cooperand
77988342134SEnji Cooper.Xr tcpmd5 4 .
78093da8366SEnji Cooper.It Va WITHOUT_ISCSI
78193da8366SEnji CooperSet to not build
78226d6bbfaSSevan Janiyan.Xr iscsid 8
78393da8366SEnji Cooperand related utilities.
78490be798eSDimitry Andric.It Va WITHOUT_JAIL
78590be798eSDimitry AndricSet to not build tools for the support of jails; e.g.,
78690be798eSDimitry Andric.Xr jail 8 .
78790be798eSDimitry Andric.It Va WITHOUT_KDUMP
78890be798eSDimitry AndricSet to not build
78990be798eSDimitry Andric.Xr kdump 1
79090be798eSDimitry Andricand
79190be798eSDimitry Andric.Xr truss 1 .
79290be798eSDimitry Andric.It Va WITHOUT_KERBEROS
793344e2bb9SEd MasteSet this to not build Kerberos 5 (KTH Heimdal).
794344e2bb9SEd MasteWhen set, these options are also in effect:
79590be798eSDimitry Andric.Pp
79690be798eSDimitry Andric.Bl -inset -compact
79790be798eSDimitry Andric.It Va WITHOUT_GSSAPI
79890be798eSDimitry Andric(unless
79990be798eSDimitry Andric.Va WITH_GSSAPI
80090be798eSDimitry Andricis set explicitly)
801bf64e879SBryan Drewery.It Va WITHOUT_KERBEROS_SUPPORT
802bf64e879SBryan Drewery(unless
803bf64e879SBryan Drewery.Va WITH_KERBEROS_SUPPORT
804bf64e879SBryan Dreweryis set explicitly)
80590be798eSDimitry Andric.El
80690be798eSDimitry Andric.It Va WITHOUT_KERBEROS_SUPPORT
80790be798eSDimitry AndricSet to build some programs without Kerberos support, like
80890be798eSDimitry Andric.Xr ssh 1 ,
80990be798eSDimitry Andric.Xr telnet 1 ,
81090be798eSDimitry Andric.Xr sshd 8 ,
81190be798eSDimitry Andricand
81290be798eSDimitry Andric.Xr telnetd 8 .
8136f7527f0SEd Maste.It Va WITH_KERNEL_RETPOLINE
8146f7527f0SEd MasteSet to enable the "retpoline" mitigation for CVE-2017-5715 in the kernel
8156f7527f0SEd Mastebuild.
816a0f6423bSEd Maste.It Va WITHOUT_KERNEL_SYMBOLS
817a0f6423bSEd MasteSet to not install kernel symbol files.
818a0f6423bSEd Maste.Bf -symbolic
819a0f6423bSEd MasteThis option is recommended for those people who have small root partitions.
820a0f6423bSEd Maste.Ef
82190be798eSDimitry Andric.It Va WITHOUT_KVM
82290be798eSDimitry AndricSet to not build the
82390be798eSDimitry Andric.Nm libkvm
82490be798eSDimitry Andriclibrary as a part of the base system.
82590be798eSDimitry Andric.Bf -symbolic
82690be798eSDimitry AndricThe option has no effect yet.
82790be798eSDimitry Andric.Ef
828bf64e879SBryan DreweryWhen set, these options are also in effect:
82990be798eSDimitry Andric.Pp
830bf64e879SBryan Drewery.Bl -inset -compact
831bf64e879SBryan Drewery.It Va WITHOUT_KVM_SUPPORT
832bf64e879SBryan Drewery(unless
833bf64e879SBryan Drewery.Va WITH_KVM_SUPPORT
834bf64e879SBryan Dreweryis set explicitly)
83590be798eSDimitry Andric.El
83690be798eSDimitry Andric.It Va WITHOUT_KVM_SUPPORT
83790be798eSDimitry AndricSet to build some programs without optional
83890be798eSDimitry Andric.Nm libkvm
83990be798eSDimitry Andricsupport.
84090be798eSDimitry Andric.It Va WITHOUT_LDNS
84190be798eSDimitry AndricSetting this variable will prevent the LDNS library from being built.
842344e2bb9SEd MasteWhen set, it enforces these options:
84390be798eSDimitry Andric.Pp
84490be798eSDimitry Andric.Bl -item -compact
84590be798eSDimitry Andric.It
84690be798eSDimitry Andric.Va WITHOUT_LDNS_UTILS
84790be798eSDimitry Andric.It
84890be798eSDimitry Andric.Va WITHOUT_UNBOUND
84990be798eSDimitry Andric.El
85090be798eSDimitry Andric.It Va WITHOUT_LDNS_UTILS
85190be798eSDimitry AndricSetting this variable will prevent building the LDNS utilities
85290be798eSDimitry Andric.Xr drill 1
85390be798eSDimitry Andricand
85490be798eSDimitry Andric.Xr host 1 .
85590be798eSDimitry Andric.It Va WITHOUT_LEGACY_CONSOLE
85690be798eSDimitry AndricSet to not build programs that support a legacy PC console; e.g.,
85723a6b49aSEdward Tomasz Napierala.Xr kbdcontrol 1
85890be798eSDimitry Andricand
85923a6b49aSEdward Tomasz Napierala.Xr vidcontrol 1 .
86090be798eSDimitry Andric.It Va WITHOUT_LIB32
861c5d09a87SGlen BarberOn 64-bit platforms, set to not build 32-bit library set and a
86290be798eSDimitry Andric.Nm ld-elf32.so.1
86390be798eSDimitry Andricruntime linker.
864f3cdc622SEd Maste.Pp
865f3cdc622SEd MasteThis is a default setting on
86673699177SEd Mastearm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mips, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
86790be798eSDimitry Andric.It Va WITHOUT_LIBCPLUSPLUS
86890be798eSDimitry AndricSet to avoid building libcxxrt and libc++.
86990be798eSDimitry Andric.It Va WITHOUT_LIBPTHREAD
87090be798eSDimitry AndricSet to not build the
87190be798eSDimitry Andric.Nm libpthread
87290be798eSDimitry Andricproviding library,
87390be798eSDimitry Andric.Nm libthr .
874344e2bb9SEd MasteWhen set, it enforces these options:
87590be798eSDimitry Andric.Pp
87690be798eSDimitry Andric.Bl -item -compact
87790be798eSDimitry Andric.It
87890be798eSDimitry Andric.Va WITHOUT_LIBTHR
87990be798eSDimitry Andric.El
8808a7c8ae4SBryan Drewery.It Va WITH_LIBSOFT
8818a7c8ae4SBryan DreweryOn armv6 only, set to enable soft float ABI compatibility libraries.
8828a7c8ae4SBryan DreweryThis option is for transitioning to the new hard float ABI.
88390be798eSDimitry Andric.It Va WITHOUT_LIBTHR
88490be798eSDimitry AndricSet to not build the
88590be798eSDimitry Andric.Nm libthr
88690be798eSDimitry Andric(1:1 threading)
88790be798eSDimitry Andriclibrary.
88836e8c7bbSEd Maste.It Va WITHOUT_LLD
88936e8c7bbSEd MasteSet to not build LLVM's lld linker.
8901500eb21SEd Maste.It Va WITHOUT_LLDB
8911500eb21SEd MasteSet to not build the LLDB debugger.
8921500eb21SEd Maste.Pp
893344e2bb9SEd MasteThis is a default setting on
89473699177SEd Mastearm/armv6, arm/armv7, mips/mips, mips/mips64, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
89590be798eSDimitry Andric.It Va WITH_LLDB
89690be798eSDimitry AndricSet to build the LLDB debugger.
8971500eb21SEd Maste.Pp
898344e2bb9SEd MasteThis is a default setting on
899e5259506SEnji Cooperamd64/amd64, arm64/aarch64 and i386/i386.
9006c2b7edaSEd Maste.It Va WITHOUT_LLD_BOOTSTRAP
9016c2b7edaSEd MasteSet to not build the LLD linker during the bootstrap phase of
9026c2b7edaSEd Mastethe build.
9036c2b7edaSEd MasteTo be able to build the system, either Binutils or LLD bootstrap must be
9046c2b7edaSEd Masteenabled unless an alternate linker is provided via XLD.
905661cf9b6SYoshihiro Takahashi.It Va WITHOUT_LLD_IS_LD
90636e8c7bbSEd MasteSet to use GNU binutils ld as the system linker, instead of LLVM's LLD.
907a870eaa4SKyle Evans.It Va WITHOUT_LLVM_ASSERTIONS
908a870eaa4SKyle EvansSet to disable debugging assertions in LLVM.
9095b9c3654SEd Maste.It Va WITHOUT_LLVM_COV
9105b9c3654SEd MasteSet to not build the
9115b9c3654SEd Maste.Xr llvm-cov 1
9125b9c3654SEd Mastetool.
913cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_AARCH64
914cbafd263SDimitry AndricSet to not build LLVM target support for AArch64.
915bf64e879SBryan DreweryThe
916bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
917bf64e879SBryan Dreweryoption should be used rather than this in most cases.
918bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ALL
919bf64e879SBryan DrewerySet to only build the required LLVM target support.
920bf64e879SBryan DreweryThis option is preferred to specific target support options.
921bf64e879SBryan DreweryWhen set, these options are also in effect:
922bf64e879SBryan Drewery.Pp
923bf64e879SBryan Drewery.Bl -inset -compact
924bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_AARCH64
925bf64e879SBryan Drewery(unless
926bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_AARCH64
927bf64e879SBryan Dreweryis set explicitly)
928bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ARM
929bf64e879SBryan Drewery(unless
930bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_ARM
931bf64e879SBryan Dreweryis set explicitly)
932bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_MIPS
933bf64e879SBryan Drewery(unless
934bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_MIPS
935bf64e879SBryan Dreweryis set explicitly)
936bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_POWERPC
937bf64e879SBryan Drewery(unless
938bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_POWERPC
939bf64e879SBryan Dreweryis set explicitly)
940f3cdc622SEd Maste.It Va WITHOUT_LLVM_TARGET_RISCV
941f3cdc622SEd Maste(unless
942f3cdc622SEd Maste.Va WITH_LLVM_TARGET_RISCV
943f3cdc622SEd Masteis set explicitly)
944bf64e879SBryan Drewery.El
945cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_ARM
946cbafd263SDimitry AndricSet to not build LLVM target support for ARM.
947bf64e879SBryan DreweryThe
948bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
949bf64e879SBryan Dreweryoption should be used rather than this in most cases.
95089edb881SDimitry Andric.It Va WITH_LLVM_TARGET_BPF
95189edb881SDimitry AndricSet to build LLVM target support for BPF.
95289edb881SDimitry AndricThe
95389edb881SDimitry Andric.Va LLVM_TARGET_ALL
95489edb881SDimitry Andricoption should be used rather than this in most cases.
955cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_MIPS
956cbafd263SDimitry AndricSet to not build LLVM target support for MIPS.
957bf64e879SBryan DreweryThe
958bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
959bf64e879SBryan Dreweryoption should be used rather than this in most cases.
960cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_POWERPC
961cbafd263SDimitry AndricSet to not build LLVM target support for PowerPC.
962bf64e879SBryan DreweryThe
963bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
964bf64e879SBryan Dreweryoption should be used rather than this in most cases.
965f3cdc622SEd Maste.It Va WITHOUT_LLVM_TARGET_RISCV
966f3cdc622SEd MasteSet to not build LLVM target support for RISC-V.
967f3cdc622SEd MasteThe
968f3cdc622SEd Maste.Va LLVM_TARGET_ALL
969f3cdc622SEd Masteoption should be used rather than this in most cases.
970cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_X86
971cbafd263SDimitry AndricSet to not build LLVM target support for X86.
972bf64e879SBryan DreweryThe
973bf64e879SBryan Drewery.Va LLVM_TARGET_ALL
974bf64e879SBryan Dreweryoption should be used rather than this in most cases.
975bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT
976bfdf8aa9SJohn BaldwinEnable building
977bfdf8aa9SJohn Baldwin.Xr loader 8
978bfdf8aa9SJohn Baldwinwith support for verification based on certificates obtained from UEFI.
979bfdf8aa9SJohn Baldwin.Pp
980782df3edSEd Maste.It Va WITH_LOADER_FIREWIRE
981e8788097SKonstantin BelousovEnable firewire support in /boot/loader on x86. This option is a nop
982e8788097SKonstantin Belousovon all other platforms.
9838edab9cdSWarner Losh.It Va WITH_LOADER_FORCE_LE
9848edab9cdSWarner LoshSet to force the powerpc boot loader to launch the kernel in little
9858edab9cdSWarner Loshendian mode.
986782df3edSEd Maste.It Va WITHOUT_LOADER_GELI
987782df3edSEd MasteDisable inclusion of GELI crypto support in the boot chain binaries.
98830323356SWarner Losh.Pp
98930323356SWarner LoshThis is a default setting on
990429932baSEd Mastepowerpc/powerpc and powerpc/powerpc64.
9918edab9cdSWarner Losh.It Va WITH_LOADER_GELI
9928edab9cdSWarner LoshSet to build GELI bootloader support.
9938edab9cdSWarner Losh.Pp
9948edab9cdSWarner LoshThis is a default setting on
99573699177SEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mips, mips/mips64, riscv/riscv64 and riscv/riscv64sf.
9968edab9cdSWarner Losh.It Va WITHOUT_LOADER_LUA
9978edab9cdSWarner LoshSet to not build LUA bindings for the boot loader.
9988edab9cdSWarner Losh.Pp
9998edab9cdSWarner LoshThis is a default setting on
1000429932baSEd Mastepowerpc/powerpc and powerpc/powerpc64.
10016f7527f0SEd Maste.It Va WITH_LOADER_LUA
10026f7527f0SEd MasteSet to build LUA bindings for the boot loader.
100330323356SWarner Losh.Pp
100430323356SWarner LoshThis is a default setting on
100573699177SEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mips, mips/mips64, riscv/riscv64 and riscv/riscv64sf.
1006b8f3641fSKyle Evans.It Va WITHOUT_LOADER_OFW
1007b8f3641fSKyle EvansDisable building of openfirmware bootloader components.
1008b8f3641fSKyle Evans.Pp
1009b8f3641fSKyle EvansThis is a default setting on
101073699177SEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mips, mips/mips64, riscv/riscv64 and riscv/riscv64sf.
1011b8f3641fSKyle Evans.It Va WITH_LOADER_OFW
1012b8f3641fSKyle EvansSet to build openfirmware bootloader components.
1013b8f3641fSKyle Evans.Pp
1014b8f3641fSKyle EvansThis is a default setting on
1015429932baSEd Mastepowerpc/powerpc and powerpc/powerpc64.
1016b8f3641fSKyle Evans.It Va WITHOUT_LOADER_UBOOT
1017b8f3641fSKyle EvansDisable building of ubldr.
1018b8f3641fSKyle Evans.Pp
1019b8f3641fSKyle EvansThis is a default setting on
1020429932baSEd Masteamd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
1021b8f3641fSKyle Evans.It Va WITH_LOADER_UBOOT
1022b8f3641fSKyle EvansSet to build ubldr.
1023b8f3641fSKyle Evans.Pp
1024b8f3641fSKyle EvansThis is a default setting on
102573699177SEd Mastearm/armv6, arm/armv7, mips/mips, mips/mips64, powerpc/powerpc and powerpc/powerpc64.
10261f7d1483SEd Maste.It Va WITH_LOADER_VERBOSE
10271f7d1483SEd MasteSet to build with extra verbose debugging in the loader.
10281f7d1483SEd MasteMay explode already nearly too large loader over the limit.
10291f7d1483SEd MasteUse with care.
10301f7d1483SEd Maste
1031bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_VERIEXEC
1032bfdf8aa9SJohn BaldwinEnable building
1033bfdf8aa9SJohn Baldwin.Xr loader 8
1034de19b521SDimitry Andricwith support for verification similar to Verified Exec.
1035bfdf8aa9SJohn Baldwin.Pp
1036de19b521SDimitry AndricDepends on
1037de19b521SDimitry Andric.Va WITH_BEARSSL .
1038bfdf8aa9SJohn BaldwinWhen set, these options are also in effect:
1039bfdf8aa9SJohn Baldwin.Pp
1040bfdf8aa9SJohn Baldwin.Bl -inset -compact
1041bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT
1042bfdf8aa9SJohn Baldwin(unless
1043bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_EFI_SECUREBOOT
1044bfdf8aa9SJohn Baldwinis set explicitly)
1045f87a2082SEd Maste.It Va WITH_LOADER_VERIEXEC_VECTX
1046f87a2082SEd Maste(unless
1047f87a2082SEd Maste.Va WITHOUT_LOADER_VERIEXEC_VECTX
1048f87a2082SEd Masteis set explicitly)
1049bfdf8aa9SJohn Baldwin.El
1050de19b521SDimitry Andric.It Va WITH_LOADER_VERIEXEC_PASS_MANIFEST
1051de19b521SDimitry AndricEnable building
1052de19b521SDimitry Andric.Xr loader 8
1053de19b521SDimitry Andricwith support to pass a verified manifest to the kernel.
1054de19b521SDimitry AndricThe kernel has to be built with a module to parse the manifest.
1055de19b521SDimitry Andric.Pp
1056de19b521SDimitry AndricDepends on
1057de19b521SDimitry Andric.Va WITH_LOADER_VERIEXEC .
10581f7d1483SEd Maste.It Va WITHOUT_LOADER_ZFS
10591f7d1483SEd MasteSet to not build ZFS file system boot loader support.
106090be798eSDimitry Andric.It Va WITHOUT_LOCALES
106190be798eSDimitry AndricSet to not build localization files; see
106290be798eSDimitry Andric.Xr locale 1 .
106390be798eSDimitry Andric.It Va WITHOUT_LOCATE
106490be798eSDimitry AndricSet to not build
106590be798eSDimitry Andric.Xr locate 1
106690be798eSDimitry Andricand related programs.
106790be798eSDimitry Andric.It Va WITHOUT_LPR
106890be798eSDimitry AndricSet to not build
106990be798eSDimitry Andric.Xr lpr 1
107090be798eSDimitry Andricand related programs.
107190be798eSDimitry Andric.It Va WITHOUT_LS_COLORS
107290be798eSDimitry AndricSet to build
107390be798eSDimitry Andric.Xr ls 1
107490be798eSDimitry Andricwithout support for colors to distinguish file types.
107590be798eSDimitry Andric.It Va WITHOUT_LZMA_SUPPORT
107690be798eSDimitry AndricSet to build some programs without optional lzma compression support.
107790be798eSDimitry Andric.It Va WITHOUT_MAIL
107890be798eSDimitry AndricSet to not build any mail support (MUA or MTA).
1079344e2bb9SEd MasteWhen set, it enforces these options:
108090be798eSDimitry Andric.Pp
108190be798eSDimitry Andric.Bl -item -compact
108290be798eSDimitry Andric.It
108390be798eSDimitry Andric.Va WITHOUT_DMAGENT
108490be798eSDimitry Andric.It
108590be798eSDimitry Andric.Va WITHOUT_MAILWRAPPER
108690be798eSDimitry Andric.It
108790be798eSDimitry Andric.Va WITHOUT_SENDMAIL
108890be798eSDimitry Andric.El
108990be798eSDimitry Andric.It Va WITHOUT_MAILWRAPPER
109090be798eSDimitry AndricSet to not build the
109190be798eSDimitry Andric.Xr mailwrapper 8
109290be798eSDimitry AndricMTA selector.
109390be798eSDimitry Andric.It Va WITHOUT_MAKE
109490be798eSDimitry AndricSet to not install
109590be798eSDimitry Andric.Xr make 1
109690be798eSDimitry Andricand related support files.
109774782f0eSEnji Cooper.It Va WITHOUT_MAKE_CHECK_USE_SANDBOX
109874782f0eSEnji CooperSet to not execute
109974782f0eSEnji Cooper.Dq Li "make check"
110074782f0eSEnji Cooperin limited sandbox mode.
110174782f0eSEnji CooperThis option should be paired with
110274782f0eSEnji Cooper.Va WITH_INSTALL_AS_USER
110374782f0eSEnji Cooperif executed as an unprivileged user.
110474782f0eSEnji CooperSee
110574782f0eSEnji Cooper.Xr tests 7
110674782f0eSEnji Cooperfor more details.
1107*7d4374f6SDimitry Andric.It Va WITH_MALLOC_PRODUCTION
1108*7d4374f6SDimitry AndricSet to disable assertions and statistics gathering in
1109*7d4374f6SDimitry Andric.Xr malloc 3 .
1110*7d4374f6SDimitry AndricIt also defaults the A and J runtime options to off.
1111*7d4374f6SDimitry AndricDisabled by default on -CURRENT.
111290be798eSDimitry Andric.It Va WITHOUT_MAN
111390be798eSDimitry AndricSet to not build manual pages.
1114344e2bb9SEd MasteWhen set, these options are also in effect:
111590be798eSDimitry Andric.Pp
111690be798eSDimitry Andric.Bl -inset -compact
111790be798eSDimitry Andric.It Va WITHOUT_MAN_UTILS
111890be798eSDimitry Andric(unless
111990be798eSDimitry Andric.Va WITH_MAN_UTILS
112090be798eSDimitry Andricis set explicitly)
112190be798eSDimitry Andric.El
112290be798eSDimitry Andric.It Va WITHOUT_MANCOMPRESS
112390be798eSDimitry AndricSet to not to install compressed man pages.
112490be798eSDimitry AndricOnly the uncompressed versions will be installed.
112590be798eSDimitry Andric.It Va WITHOUT_MAN_UTILS
112690be798eSDimitry AndricSet to not build utilities for manual pages,
112790be798eSDimitry Andric.Xr apropos 1 ,
112890be798eSDimitry Andric.Xr makewhatis 1 ,
112990be798eSDimitry Andric.Xr man 1 ,
113090be798eSDimitry Andric.Xr whatis 1 ,
113190be798eSDimitry Andric.Xr manctl 8 ,
113290be798eSDimitry Andricand related support files.
1133cc2520d2SSimon J. Gerraty.It Va WITH_META_MODE
1134344e2bb9SEd MasteCreate
1135be894451SBryan Drewery.Xr make 1
1136be894451SBryan Drewerymeta files when building, which can provide a reliable incremental build when
1137be894451SBryan Dreweryusing
1138be894451SBryan Drewery.Xr filemon 4 .
1139344e2bb9SEd MasteThe meta file is created in OBJDIR as
1140be894451SBryan Drewery.Pa target.meta .
1141344e2bb9SEd MasteThese meta files track the command that was executed, its output, and the
1142344e2bb9SEd Mastecurrent directory.
11432710e62cSBryan DreweryThe
11447f76a95cSBryan Drewery.Xr filemon 4
11452710e62cSBryan Drewerymodule is required unless
11462710e62cSBryan Drewery.Va NO_FILEMON
11472710e62cSBryan Dreweryis defined.
1148344e2bb9SEd MasteWhen the module is loaded, any files used by the commands executed are
1149344e2bb9SEd Mastetracked as dependencies for the target in its meta file.
1150344e2bb9SEd MasteThe target is considered out-of-date and rebuilt if any of these
1151344e2bb9SEd Masteconditions are true compared to the last build:
1152be894451SBryan Drewery.Bl -bullet -compact
1153be894451SBryan Drewery.It
1154be894451SBryan DreweryThe command to execute changes.
1155be894451SBryan Drewery.It
1156be894451SBryan DreweryThe current working directory changes.
1157be894451SBryan Drewery.It
1158a4a2269eSBryan DreweryThe target's meta file is missing.
1159a4a2269eSBryan Drewery.It
1160a4a2269eSBryan DreweryThe target's meta file is missing filemon data when filemon is loaded
1161a4a2269eSBryan Dreweryand a previous run did not have it loaded.
1162be894451SBryan Drewery.It
1163be894451SBryan Drewery[requires
1164be894451SBryan Drewery.Xr filemon 4 ]
1165be894451SBryan DreweryFiles read, executed or linked to are newer than the target.
1166be894451SBryan Drewery.It
1167be894451SBryan Drewery[requires
1168be894451SBryan Drewery.Xr filemon 4 ]
1169be894451SBryan DreweryFiles read, written, executed or linked are missing.
1170be894451SBryan Drewery.El
11717f76a95cSBryan DreweryThe meta files can also be useful for debugging.
11727f76a95cSBryan Drewery.Pp
1173344e2bb9SEd MasteThe build hides commands that are executed unless
11747f76a95cSBryan Drewery.Va NO_SILENT
11757f76a95cSBryan Dreweryis defined.
1176344e2bb9SEd MasteErrors cause
11772710e62cSBryan Drewery.Xr make 1
11782710e62cSBryan Dreweryto show some of its environment for further debugging.
11790a70ef02SBryan Drewery.Pp
1180be894451SBryan DreweryThe build operates as it normally would otherwise.
1181be894451SBryan DreweryThis option originally invoked a different build system but that was renamed
1182be894451SBryan Dreweryto
1183be894451SBryan Drewery.Va WITH_DIRDEPS_BUILD .
1184be894451SBryan Drewery.Pp
1185ba852870SBryan DreweryThis must be set in the environment, make command line, or
11860a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
11870a70ef02SBryan Drewerynot
11880a70ef02SBryan Drewery.Pa /etc/src.conf .
1189912aad0fSKyle Evans.It Va WITHOUT_MLX5TOOL
1190912aad0fSKyle EvansSet to not build
1191912aad0fSKyle Evans.Xr mlx5tool 8
1192912aad0fSKyle Evans.Pp
1193912aad0fSKyle EvansThis is a default setting on
119473699177SEd Mastearm/armv6, arm/armv7, mips/mips, mips/mips64, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
1195912aad0fSKyle Evans.It Va WITH_MLX5TOOL
1196912aad0fSKyle EvansSet to build
1197912aad0fSKyle Evans.Xr mlx5tool 8
1198912aad0fSKyle Evans.Pp
1199912aad0fSKyle EvansThis is a default setting on
1200429932baSEd Masteamd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64.
120190be798eSDimitry Andric.It Va WITHOUT_NDIS
120290be798eSDimitry AndricSet to not build programs and libraries
120390be798eSDimitry Andricrelated to NDIS emulation support.
120490be798eSDimitry Andric.It Va WITHOUT_NETCAT
120590be798eSDimitry AndricSet to not build
120690be798eSDimitry Andric.Xr nc 1
120790be798eSDimitry Andricutility.
120890be798eSDimitry Andric.It Va WITHOUT_NETGRAPH
120990be798eSDimitry AndricSet to not build applications to support
121090be798eSDimitry Andric.Xr netgraph 4 .
1211344e2bb9SEd MasteWhen set, it enforces these options:
121290be798eSDimitry Andric.Pp
121390be798eSDimitry Andric.Bl -item -compact
121490be798eSDimitry Andric.It
121590be798eSDimitry Andric.Va WITHOUT_ATM
121690be798eSDimitry Andric.It
121790be798eSDimitry Andric.Va WITHOUT_BLUETOOTH
1218bf64e879SBryan Drewery.El
1219bf64e879SBryan Drewery.Pp
1220bf64e879SBryan DreweryWhen set, these options are also in effect:
1221bf64e879SBryan Drewery.Pp
1222bf64e879SBryan Drewery.Bl -inset -compact
1223bf64e879SBryan Drewery.It Va WITHOUT_NETGRAPH_SUPPORT
1224bf64e879SBryan Drewery(unless
1225bf64e879SBryan Drewery.Va WITH_NETGRAPH_SUPPORT
1226bf64e879SBryan Dreweryis set explicitly)
122790be798eSDimitry Andric.El
122890be798eSDimitry Andric.It Va WITHOUT_NETGRAPH_SUPPORT
122990be798eSDimitry AndricSet to build libraries, programs, and kernel modules without netgraph support.
123090be798eSDimitry Andric.It Va WITHOUT_NIS
123190be798eSDimitry AndricSet to not build
123290be798eSDimitry Andric.Xr NIS 8
123390be798eSDimitry Andricsupport and related programs.
123490be798eSDimitry AndricIf set, you might need to adopt your
123590be798eSDimitry Andric.Xr nsswitch.conf 5
123690be798eSDimitry Andricand remove
123790be798eSDimitry Andric.Sq nis
123890be798eSDimitry Andricentries.
123990be798eSDimitry Andric.It Va WITHOUT_NLS
124090be798eSDimitry AndricSet to not build NLS catalogs.
124157a87b06SEnji CooperWhen set, it enforces these options:
124257a87b06SEnji Cooper.Pp
124357a87b06SEnji Cooper.Bl -item -compact
124457a87b06SEnji Cooper.It
124557a87b06SEnji Cooper.Va WITHOUT_NLS_CATALOGS
124657a87b06SEnji Cooper.El
124790be798eSDimitry Andric.It Va WITHOUT_NLS_CATALOGS
124890be798eSDimitry AndricSet to not build NLS catalog support for
124990be798eSDimitry Andric.Xr csh 1 .
125090be798eSDimitry Andric.It Va WITHOUT_NS_CACHING
125190be798eSDimitry AndricSet to disable name caching in the
125290be798eSDimitry Andric.Pa nsswitch
125390be798eSDimitry Andricsubsystem.
125490be798eSDimitry AndricThe generic caching daemon,
125590be798eSDimitry Andric.Xr nscd 8 ,
125690be798eSDimitry Andricwill not be built either if this option is set.
125790be798eSDimitry Andric.It Va WITHOUT_NTP
125890be798eSDimitry AndricSet to not build
125990be798eSDimitry Andric.Xr ntpd 8
126090be798eSDimitry Andricand related programs.
12618edab9cdSWarner Losh.It Va WITHOUT_NVME
12628edab9cdSWarner LoshSet to not build nvme related tools and kernel modules.
12638edab9cdSWarner Losh.Pp
12648edab9cdSWarner LoshThis is a default setting on
126573699177SEd Mastearm/armv6, arm/armv7, mips/mips, mips/mips64, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
12668edab9cdSWarner Losh.It Va WITH_NVME
12678edab9cdSWarner LoshSet to build nvme related tools and kernel modules.
12688edab9cdSWarner Losh
12698edab9cdSWarner Losh.Pp
12708edab9cdSWarner LoshThis is a default setting on
1271f8783225SEd Masteamd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64.
127290be798eSDimitry Andric.It Va WITH_OFED
127390be798eSDimitry AndricSet to build the
127490be798eSDimitry Andric.Dq "OpenFabrics Enterprise Distribution"
127590be798eSDimitry AndricInfiniband software stack.
12764a3caf80SKonstantin Belousov.It Va WITH_OFED_EXTRA
12774a3caf80SKonstantin BelousovSet to build the non-essential components of the
12784a3caf80SKonstantin Belousov.Dq "OpenFabrics Enterprise Distribution"
12794a3caf80SKonstantin BelousovInfiniband software stack, mostly examples.
128090be798eSDimitry Andric.It Va WITH_OPENLDAP
128190be798eSDimitry AndricEnable building openldap support for kerberos.
1282b0840a28SDimitry Andric.It Va WITHOUT_OPENMP
1283b0840a28SDimitry AndricSet to not build LLVM's OpenMP runtime.
1284b0840a28SDimitry Andric.Pp
1285b0840a28SDimitry AndricThis is a default setting on
1286*7d4374f6SDimitry Andricarm/armv6, arm/armv7, mips/mips, mips/mips64, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
1287b0840a28SDimitry Andric.It Va WITH_OPENMP
1288b0840a28SDimitry AndricSet to build LLVM's OpenMP runtime.
1289b0840a28SDimitry Andric.Pp
1290b0840a28SDimitry AndricThis is a default setting on
1291*7d4374f6SDimitry Andricamd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64.
129290be798eSDimitry Andric.It Va WITHOUT_OPENSSH
129390be798eSDimitry AndricSet to not build OpenSSH.
129490be798eSDimitry Andric.It Va WITHOUT_OPENSSL
129590be798eSDimitry AndricSet to not build OpenSSL.
1296344e2bb9SEd MasteWhen set, it enforces these options:
129790be798eSDimitry Andric.Pp
129890be798eSDimitry Andric.Bl -item -compact
129990be798eSDimitry Andric.It
13009f4e04c1SEd Maste.Va WITHOUT_DMAGENT
13019f4e04c1SEd Maste.It
130290be798eSDimitry Andric.Va WITHOUT_KERBEROS
130390be798eSDimitry Andric.It
1304fb27d7aeSEd Maste.Va WITHOUT_KERBEROS_SUPPORT
1305fb27d7aeSEd Maste.It
1306da39b3adSEd Maste.Va WITHOUT_LDNS
1307da39b3adSEd Maste.It
1308da39b3adSEd Maste.Va WITHOUT_LDNS_UTILS
1309da39b3adSEd Maste.It
131090be798eSDimitry Andric.Va WITHOUT_OPENSSH
1311da39b3adSEd Maste.It
1312116f7fccSEd Maste.Va WITHOUT_PKGBOOTSTRAP
1313116f7fccSEd Maste.It
1314116f7fccSEd Maste.Va WITHOUT_SVN
1315116f7fccSEd Maste.It
1316116f7fccSEd Maste.Va WITHOUT_SVNLITE
1317116f7fccSEd Maste.It
1318da39b3adSEd Maste.Va WITHOUT_UNBOUND
1319116f7fccSEd Maste.It
1320116f7fccSEd Maste.Va WITHOUT_WIRELESS
132190be798eSDimitry Andric.El
132290be798eSDimitry Andric.Pp
1323344e2bb9SEd MasteWhen set, these options are also in effect:
132490be798eSDimitry Andric.Pp
132590be798eSDimitry Andric.Bl -inset -compact
132690be798eSDimitry Andric.It Va WITHOUT_GSSAPI
132790be798eSDimitry Andric(unless
132890be798eSDimitry Andric.Va WITH_GSSAPI
132990be798eSDimitry Andricis set explicitly)
133090be798eSDimitry Andric.El
133190be798eSDimitry Andric.It Va WITHOUT_PAM
133290be798eSDimitry AndricSet to not build PAM library and modules.
133390be798eSDimitry Andric.Bf -symbolic
133490be798eSDimitry AndricThis option is deprecated and does nothing.
133590be798eSDimitry Andric.Ef
1336bf64e879SBryan DreweryWhen set, these options are also in effect:
133790be798eSDimitry Andric.Pp
1338bf64e879SBryan Drewery.Bl -inset -compact
1339bf64e879SBryan Drewery.It Va WITHOUT_PAM_SUPPORT
1340bf64e879SBryan Drewery(unless
1341bf64e879SBryan Drewery.Va WITH_PAM_SUPPORT
1342bf64e879SBryan Dreweryis set explicitly)
134390be798eSDimitry Andric.El
134490be798eSDimitry Andric.It Va WITHOUT_PAM_SUPPORT
134590be798eSDimitry AndricSet to build some programs without PAM support, particularly
134690be798eSDimitry Andric.Xr ftpd 8
134790be798eSDimitry Andricand
134890be798eSDimitry Andric.Xr ppp 8 .
134990be798eSDimitry Andric.It Va WITHOUT_PF
135090be798eSDimitry AndricSet to not build PF firewall package.
1351344e2bb9SEd MasteWhen set, it enforces these options:
135290be798eSDimitry Andric.Pp
135390be798eSDimitry Andric.Bl -item -compact
135490be798eSDimitry Andric.It
135590be798eSDimitry Andric.Va WITHOUT_AUTHPF
135690be798eSDimitry Andric.El
1357b3a27c81SEd Maste.It Va WITH_PIE
1358b3a27c81SEd MasteBuild dynamically linked binaries as
1359b3a27c81SEd MastePosition-Independent Executable (PIE).
136090be798eSDimitry Andric.It Va WITHOUT_PKGBOOTSTRAP
136190be798eSDimitry AndricSet to not build
136290be798eSDimitry Andric.Xr pkg 7
136390be798eSDimitry Andricbootstrap tool.
136490be798eSDimitry Andric.It Va WITHOUT_PMC
136590be798eSDimitry AndricSet to not build
136690be798eSDimitry Andric.Xr pmccontrol 8
136790be798eSDimitry Andricand related programs.
136890be798eSDimitry Andric.It Va WITHOUT_PORTSNAP
136990be798eSDimitry AndricSet to not build or install
137090be798eSDimitry Andric.Xr portsnap 8
137190be798eSDimitry Andricand related files.
137245b8de2dSEd MasteWhen set, it enforces these options:
137345b8de2dSEd Maste.Pp
137445b8de2dSEd Maste.Bl -item -compact
137545b8de2dSEd Maste.It
137645b8de2dSEd Maste.Va WITHOUT_FREEBSD_UPDATE
137745b8de2dSEd Maste.El
137890be798eSDimitry Andric.It Va WITHOUT_PPP
137990be798eSDimitry AndricSet to not build
138090be798eSDimitry Andric.Xr ppp 8
138190be798eSDimitry Andricand related programs.
138290be798eSDimitry Andric.It Va WITHOUT_PROFILE
13834c033a73SEnji CooperSet to not build profiled libraries for use with
13844c033a73SEnji Cooper.Xr gprof 8 .
13850780f5c3SJohn Baldwin.Pp
13860780f5c3SJohn BaldwinThis is a default setting on
138773699177SEd Mastemips/mips64.
13884c033a73SEnji Cooper.It Va WITH_PROFILE
13894c033a73SEnji CooperSet to build profiled libraries for use with
13904c033a73SEnji Cooper.Xr gprof 8 .
13914c033a73SEnji Cooper.Pp
13924c033a73SEnji CooperThis is a default setting on
139373699177SEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mips, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
139490be798eSDimitry Andric.It Va WITHOUT_QUOTAS
139590be798eSDimitry AndricSet to not build
139623a6b49aSEdward Tomasz Napierala.Xr quota 1
139790be798eSDimitry Andricand related programs.
13980e0e9604SEnji Cooper.It Va WITHOUT_RADIUS_SUPPORT
13990e0e9604SEnji CooperSet to not build radius support into various applications, like
14000e0e9604SEnji Cooper.Xr pam_radius 8
14010e0e9604SEnji Cooperand
14020e0e9604SEnji Cooper.Xr ppp 8 .
140388342134SEnji Cooper.It Va WITH_RATELIMIT
140488342134SEnji CooperSet to build the system with rate limit support.
140588342134SEnji Cooper.Pp
140688342134SEnji CooperThis makes
140788342134SEnji Cooper.Dv SO_MAX_PACING_RATE
140888342134SEnji Coopereffective in
140988342134SEnji Cooper.Xr getsockopt 2 ,
141088342134SEnji Cooperand
141188342134SEnji Cooper.Ar txrlimit
141288342134SEnji Coopersupport in
141388342134SEnji Cooper.Xr ifconfig 8 ,
141488342134SEnji Cooperby proxy.
14150e0e9604SEnji Cooper.It Va WITHOUT_RBOOTD
14160e0e9604SEnji CooperSet to not build or install
14170e0e9604SEnji Cooper.Xr rbootd 8 .
141885d55309SEd Maste.It Va WITH_REPRODUCIBLE_BUILD
141985d55309SEd MasteSet to exclude build metadata (such as the build time, user, or host)
142085d55309SEd Mastefrom the kernel, boot loaders, and uname output, so that builds produce
142185d55309SEd Mastebit-for-bit identical output.
142290be798eSDimitry Andric.It Va WITHOUT_RESCUE
142390be798eSDimitry AndricSet to not build
142490be798eSDimitry Andric.Xr rescue 8 .
14258ccac680SEd Maste.It Va WITH_RETPOLINE
14268ccac680SEd MasteSet to build the base system with the retpoline speculative execution
14278ccac680SEd Mastevulnerability mitigation for CVE-2017-5715.
142890be798eSDimitry Andric.It Va WITHOUT_ROUTED
142990be798eSDimitry AndricSet to not build
143090be798eSDimitry Andric.Xr routed 8
143190be798eSDimitry Andricutility.
14324c033a73SEnji Cooper.It Va WITH_RPCBIND_WARMSTART_SUPPORT
14334c033a73SEnji CooperSet to build
14344c033a73SEnji Cooper.Xr rpcbind 8
14354c033a73SEnji Cooperwith warmstart support.
143690be798eSDimitry Andric.It Va WITHOUT_SENDMAIL
143790be798eSDimitry AndricSet to not build
143890be798eSDimitry Andric.Xr sendmail 8
143990be798eSDimitry Andricand related programs.
1440e8788097SKonstantin Belousov.It Va WITHOUT_SERVICESDB
1441e8788097SKonstantin BelousovSet to not install
1442e8788097SKonstantin Belousov.Pa /var/db/services.db .
144390be798eSDimitry Andric.It Va WITHOUT_SETUID_LOGIN
144490be798eSDimitry AndricSet this to disable the installation of
144590be798eSDimitry Andric.Xr login 1
144690be798eSDimitry Andricas a set-user-ID root program.
144790be798eSDimitry Andric.It Va WITHOUT_SHAREDOCS
144890be798eSDimitry AndricSet to not build the
144990be798eSDimitry Andric.Bx 4.4
145090be798eSDimitry Andriclegacy docs.
14516ab18ea6SDimitry Andric.It Va WITHOUT_SHARED_TOOLCHAIN
14526ab18ea6SDimitry AndricSet to build the toolchain binaries as statically linked executables.
145390be798eSDimitry AndricThe set includes
145490be798eSDimitry Andric.Xr cc 1 ,
145590be798eSDimitry Andric.Xr make 1
145690be798eSDimitry Andricand necessary utilities like assembler, linker and library archive manager.
145790be798eSDimitry Andric.It Va WITH_SORT_THREADS
145890be798eSDimitry AndricSet to enable threads in
145990be798eSDimitry Andric.Xr sort 1 .
146090be798eSDimitry Andric.It Va WITHOUT_SOURCELESS
146190be798eSDimitry AndricSet to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
1462344e2bb9SEd MasteWhen set, it enforces these options:
146390be798eSDimitry Andric.Pp
146490be798eSDimitry Andric.Bl -item -compact
146590be798eSDimitry Andric.It
146690be798eSDimitry Andric.Va WITHOUT_SOURCELESS_HOST
146790be798eSDimitry Andric.It
146890be798eSDimitry Andric.Va WITHOUT_SOURCELESS_UCODE
146990be798eSDimitry Andric.El
147090be798eSDimitry Andric.It Va WITHOUT_SOURCELESS_HOST
147190be798eSDimitry AndricSet to not build kernel modules that include sourceless native code for host CPU.
147290be798eSDimitry Andric.It Va WITHOUT_SOURCELESS_UCODE
147390be798eSDimitry AndricSet to not build kernel modules that include sourceless microcode.
147490be798eSDimitry Andric.It Va WITHOUT_SSP
147590be798eSDimitry AndricSet to not build world with propolice stack smashing protection.
1476cc68b6e5SEd Maste.Pp
1477344e2bb9SEd MasteThis is a default setting on
147873699177SEd Mastemips/mips and mips/mips64.
14790cd582c8SEnji Cooper.It Va WITH_SSP
14800cd582c8SEnji CooperSet to build world with propolice stack smashing protection.
14810cd582c8SEnji Cooper.Pp
1482344e2bb9SEd MasteThis is a default setting on
1483429932baSEd Masteamd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
1484cc2520d2SSimon J. Gerraty.It Va WITH_STAGING
1485cc2520d2SSimon J. GerratyEnable staging of files to a stage tree.
1486cc2520d2SSimon J. GerratyThis can be best thought of as auto-install to
1487cc2520d2SSimon J. Gerraty.Va DESTDIR
1488cc2520d2SSimon J. Gerratywith some extra meta data to ensure dependencies can be tracked.
1489cc2520d2SSimon J. GerratyDepends on
149032b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD .
1491344e2bb9SEd MasteWhen set, these options are also in effect:
1492cc2520d2SSimon J. Gerraty.Pp
1493cc2520d2SSimon J. Gerraty.Bl -inset -compact
1494cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_MAN
1495cc2520d2SSimon J. Gerraty(unless
1496cc2520d2SSimon J. Gerraty.Va WITHOUT_STAGING_MAN
1497cc2520d2SSimon J. Gerratyis set explicitly)
1498cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_PROG
1499cc2520d2SSimon J. Gerraty(unless
1500cc2520d2SSimon J. Gerraty.Va WITHOUT_STAGING_PROG
1501cc2520d2SSimon J. Gerratyis set explicitly)
1502cc2520d2SSimon J. Gerraty.El
15030a70ef02SBryan Drewery.Pp
1504ba852870SBryan DreweryThis must be set in the environment, make command line, or
15050a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
15060a70ef02SBryan Drewerynot
15070a70ef02SBryan Drewery.Pa /etc/src.conf .
1508cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_MAN
1509344e2bb9SEd MasteEnable staging of man pages to stage tree.
1510cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_PROG
1511cc2520d2SSimon J. GerratyEnable staging of PROGs to stage tree.
1512cc2520d2SSimon J. Gerraty.It Va WITH_STALE_STAGED
1513cc2520d2SSimon J. GerratyCheck staged files are not stale.
1514de19b521SDimitry Andric.It Va WITHOUT_STATS
1515de19b521SDimitry AndricSet to neither build nor install
1516de19b521SDimitry Andric.Lb libstats
1517de19b521SDimitry Andricand dependent binaries.
151890be798eSDimitry Andric.It Va WITH_SVN
151990be798eSDimitry AndricSet to install
152090be798eSDimitry Andric.Xr svnlite 1
152190be798eSDimitry Andricas
152290be798eSDimitry Andric.Xr svn 1 .
152390be798eSDimitry Andric.It Va WITHOUT_SVNLITE
152490be798eSDimitry AndricSet to not build
152590be798eSDimitry Andric.Xr svnlite 1
152690be798eSDimitry Andricand related programs.
152790be798eSDimitry Andric.It Va WITHOUT_SYSCONS
152890be798eSDimitry AndricSet to not build
152990be798eSDimitry Andric.Xr syscons 4
153090be798eSDimitry Andricsupport files such as keyboard maps, fonts, and screen output maps.
1531cc2520d2SSimon J. Gerraty.It Va WITH_SYSROOT
1532cc2520d2SSimon J. GerratyEnable use of sysroot during build.
1533cc2520d2SSimon J. GerratyDepends on
153432b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD .
15350a70ef02SBryan Drewery.Pp
1536ba852870SBryan DreweryThis must be set in the environment, make command line, or
15370a70ef02SBryan Drewery.Pa /etc/src-env.conf ,
15380a70ef02SBryan Drewerynot
15390a70ef02SBryan Drewery.Pa /etc/src.conf .
15408095b3c2SBryan Drewery.It Va WITHOUT_SYSTEM_COMPILER
15418095b3c2SBryan DrewerySet to not opportunistically skip building a cross-compiler during the
1542a9da9b86SBryan Drewerybootstrap phase of the build.
15438095b3c2SBryan DreweryNormally, if the currently installed compiler matches the planned bootstrap
15448095b3c2SBryan Drewerycompiler type and revision, then it will not be built.
1545a9da9b86SBryan DreweryThis does not prevent a compiler from being built for installation though,
1546a9da9b86SBryan Dreweryonly for building one for the build itself.
1547a9da9b86SBryan DreweryThe
1548a9da9b86SBryan Drewery.Va WITHOUT_CLANG
1549a5798ec8SEd Masteoption controls that.
1550be9309deSBryan Drewery.It Va WITHOUT_SYSTEM_LINKER
1551be9309deSBryan DrewerySet to not opportunistically skip building a cross-linker during the
1552be9309deSBryan Drewerybootstrap phase of the build.
1553be9309deSBryan DreweryNormally, if the currently installed linker matches the planned bootstrap
1554be9309deSBryan Drewerylinker type and revision, then it will not be built.
1555be9309deSBryan DreweryThis does not prevent a linker from being built for installation though,
1556be9309deSBryan Dreweryonly for building one for the build itself.
1557be9309deSBryan DreweryThe
1558be9309deSBryan Drewery.Va WITHOUT_LLD
15592ea16071SEd Masteoption controls that.
1560be9309deSBryan Drewery.Pp
1561be9309deSBryan DreweryThis option is only relevant when
1562be9309deSBryan Drewery.Va WITH_LLD_BOOTSTRAP
1563be9309deSBryan Dreweryis set.
156493da8366SEnji Cooper.It Va WITHOUT_TALK
156593da8366SEnji CooperSet to not build or install
156693da8366SEnji Cooper.Xr talk 1
156793da8366SEnji Cooperand
156893da8366SEnji Cooper.Xr talkd 8 .
15690e0e9604SEnji Cooper.It Va WITHOUT_TCP_WRAPPERS
15700e0e9604SEnji CooperSet to not build or install
15710e0e9604SEnji Cooper.Xr tcpd 8 ,
15720e0e9604SEnji Cooperand related utilities.
157390be798eSDimitry Andric.It Va WITHOUT_TCSH
157490be798eSDimitry AndricSet to not build and install
157590be798eSDimitry Andric.Pa /bin/csh
157690be798eSDimitry Andric(which is
157790be798eSDimitry Andric.Xr tcsh 1 ) .
157890be798eSDimitry Andric.It Va WITHOUT_TELNET
157990be798eSDimitry AndricSet to not build
158023a6b49aSEdward Tomasz Napierala.Xr telnet 1
158190be798eSDimitry Andricand related programs.
158218c6fc4cSJulio Merino.It Va WITHOUT_TESTS
158318c6fc4cSJulio MerinoSet to not build nor install the
158490be798eSDimitry Andric.Fx
158590be798eSDimitry AndricTest Suite in
158690be798eSDimitry Andric.Pa /usr/tests/ .
158790be798eSDimitry AndricSee
158890be798eSDimitry Andric.Xr tests 7
158990be798eSDimitry Andricfor more details.
159018c6fc4cSJulio MerinoThis also disables the build of all test-related dependencies, including ATF.
1591344e2bb9SEd MasteWhen set, it enforces these options:
1592c5d09a87SGlen Barber.Pp
1593c5d09a87SGlen Barber.Bl -item -compact
1594c5d09a87SGlen Barber.It
159516f3fdf5SMark Johnston.Va WITHOUT_DTRACE_TESTS
1596bf64e879SBryan Drewery.El
1597bf64e879SBryan Drewery.Pp
1598bf64e879SBryan DreweryWhen set, these options are also in effect:
1599bf64e879SBryan Drewery.Pp
1600bf64e879SBryan Drewery.Bl -inset -compact
16017840b63aSEnji Cooper.It Va WITHOUT_GOOGLETEST
16027840b63aSEnji Cooper(unless
16037840b63aSEnji Cooper.Va WITH_GOOGLETEST
16047840b63aSEnji Cooperis set explicitly)
1605bf64e879SBryan Drewery.It Va WITHOUT_TESTS_SUPPORT
1606bf64e879SBryan Drewery(unless
1607bf64e879SBryan Drewery.Va WITH_TESTS_SUPPORT
1608bf64e879SBryan Dreweryis set explicitly)
1609c5d09a87SGlen Barber.El
1610c5d09a87SGlen Barber.It Va WITHOUT_TESTS_SUPPORT
1611c5d09a87SGlen BarberSet to disables the build of all test-related dependencies, including ATF.
16127840b63aSEnji CooperWhen set, it enforces these options:
16137840b63aSEnji Cooper.Pp
16147840b63aSEnji Cooper.Bl -item -compact
16157840b63aSEnji Cooper.It
16167840b63aSEnji Cooper.Va WITHOUT_GOOGLETEST
16177840b63aSEnji Cooper.El
161890be798eSDimitry Andric.It Va WITHOUT_TEXTPROC
161990be798eSDimitry AndricSet to not build
162090be798eSDimitry Andricprograms used for text processing.
16210e0e9604SEnji Cooper.It Va WITHOUT_TFTP
16220e0e9604SEnji CooperSet to not build or install
16230e0e9604SEnji Cooper.Xr tftp 1
16240e0e9604SEnji Cooperand
16250e0e9604SEnji Cooper.Xr tftpd 8 .
162690be798eSDimitry Andric.It Va WITHOUT_TOOLCHAIN
1627148bdd15SBrooks DavisSet to not install header or
162890be798eSDimitry Andricprograms used for program development,
162990be798eSDimitry Andriccompilers, debuggers etc.
1630344e2bb9SEd MasteWhen set, it enforces these options:
163190be798eSDimitry Andric.Pp
163290be798eSDimitry Andric.Bl -item -compact
163390be798eSDimitry Andric.It
163490be798eSDimitry Andric.Va WITHOUT_CLANG
163590be798eSDimitry Andric.It
163690be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS
163790be798eSDimitry Andric.It
163819267656SConrad Meyer.Va WITHOUT_CLANG_FORMAT
163919267656SConrad Meyer.It
164090be798eSDimitry Andric.Va WITHOUT_CLANG_FULL
164190be798eSDimitry Andric.It
164290be798eSDimitry Andric.Va WITHOUT_GDB
1643c5d09a87SGlen Barber.It
1644c5d09a87SGlen Barber.Va WITHOUT_INCLUDES
16453d02549fSBryan Drewery.It
16466c2b7edaSEd Maste.Va WITHOUT_LLD
16476c2b7edaSEd Maste.It
16483d02549fSBryan Drewery.Va WITHOUT_LLDB
16495b9c3654SEd Maste.It
16505b9c3654SEd Maste.Va WITHOUT_LLVM_COV
165190be798eSDimitry Andric.El
165290be798eSDimitry Andric.It Va WITHOUT_UNBOUND
165390be798eSDimitry AndricSet to not build
165490be798eSDimitry Andric.Xr unbound 8
165590be798eSDimitry Andricand related programs.
1656efb949a6SBryan Drewery.It Va WITHOUT_UNIFIED_OBJDIR
1657efb949a6SBryan DrewerySet to use the historical object directory format for
1658efb949a6SBryan Drewery.Xr build 7
1659efb949a6SBryan Drewerytargets.
1660efb949a6SBryan DreweryFor native-builds and builds done directly in sub-directories the format of
1661efb949a6SBryan Drewery.Pa ${MAKEOBJDIRPREFIX}/${.CURDIR}
1662efb949a6SBryan Dreweryis used,
1663efb949a6SBryan Drewerywhile for cross-builds
1664efb949a6SBryan Drewery.Pa ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR}
1665efb949a6SBryan Dreweryis used.
1666efb949a6SBryan Drewery.Pp
1667efb949a6SBryan DreweryThis option is transitional and will be removed before the 12.0 release,
1668efb949a6SBryan Dreweryat which time
1669efb949a6SBryan Drewery.va WITH_UNIFIED_OBJDIR
1670efb949a6SBryan Drewerywill be enabled permanently.
1671efb949a6SBryan Drewery.Pp
1672efb949a6SBryan DreweryThis must be set in the environment, make command line, or
1673efb949a6SBryan Drewery.Pa /etc/src-env.conf ,
1674efb949a6SBryan Drewerynot
1675efb949a6SBryan Drewery.Pa /etc/src.conf .
167690be798eSDimitry Andric.It Va WITHOUT_USB
167790be798eSDimitry AndricSet to not build USB-related programs and libraries.
1678c5d09a87SGlen Barber.It Va WITHOUT_USB_GADGET_EXAMPLES
1679d1040cedSWarren BlockSet to not build USB gadget kernel modules.
168090be798eSDimitry Andric.It Va WITHOUT_UTMPX
168190be798eSDimitry AndricSet to not build user accounting tools such as
168290be798eSDimitry Andric.Xr last 1 ,
168390be798eSDimitry Andric.Xr users 1 ,
168490be798eSDimitry Andric.Xr who 1 ,
168590be798eSDimitry Andric.Xr ac 8 ,
168690be798eSDimitry Andric.Xr lastlogin 8
168790be798eSDimitry Andricand
168890be798eSDimitry Andric.Xr utx 8 .
1689bfdf8aa9SJohn Baldwin.It Va WITH_VERIEXEC
1690bfdf8aa9SJohn BaldwinEnable building
1691bfdf8aa9SJohn Baldwin.Xr veriexec 8
1692bfdf8aa9SJohn Baldwinwhich loads the contents of verified manifests into the kernel
1693bfdf8aa9SJohn Baldwinfor use by
1694bfdf8aa9SJohn Baldwin.Xr mac_veriexec 4
1695bfdf8aa9SJohn Baldwin.Pp
1696de19b521SDimitry AndricDepends on
1697de19b521SDimitry Andric.Va WITH_BEARSSL .
169890be798eSDimitry Andric.It Va WITHOUT_VI
169990be798eSDimitry AndricSet to not build and install vi, view, ex and related programs.
170090be798eSDimitry Andric.It Va WITHOUT_VT
170190be798eSDimitry AndricSet to not build
170290be798eSDimitry Andric.Xr vt 4
170390be798eSDimitry Andricsupport files (fonts and keymaps).
170490be798eSDimitry Andric.It Va WITHOUT_WARNS
170590be798eSDimitry AndricSet this to not add warning flags to the compiler invocations.
170690be798eSDimitry AndricUseful as a temporary workaround when code enters the tree
170790be798eSDimitry Andricwhich triggers warnings in environments that differ from the
1708559f9bfcSJens Schweikhardtoriginal developer.
170990be798eSDimitry Andric.It Va WITHOUT_WIRELESS
171090be798eSDimitry AndricSet to not build programs used for 802.11 wireless networks; especially
171190be798eSDimitry Andric.Xr wpa_supplicant 8
171290be798eSDimitry Andricand
171390be798eSDimitry Andric.Xr hostapd 8 .
1714bf64e879SBryan DreweryWhen set, these options are also in effect:
171590be798eSDimitry Andric.Pp
1716bf64e879SBryan Drewery.Bl -inset -compact
1717bf64e879SBryan Drewery.It Va WITHOUT_WIRELESS_SUPPORT
1718bf64e879SBryan Drewery(unless
1719bf64e879SBryan Drewery.Va WITH_WIRELESS_SUPPORT
1720bf64e879SBryan Dreweryis set explicitly)
172190be798eSDimitry Andric.El
172290be798eSDimitry Andric.It Va WITHOUT_WIRELESS_SUPPORT
172390be798eSDimitry AndricSet to build libraries, programs, and kernel modules without
172490be798eSDimitry Andric802.11 wireless support.
172590be798eSDimitry Andric.It Va WITHOUT_WPA_SUPPLICANT_EAPOL
172690be798eSDimitry AndricBuild
172790be798eSDimitry Andric.Xr wpa_supplicant 8
172890be798eSDimitry Andricwithout support for the IEEE 802.1X protocol and without
172990be798eSDimitry Andricsupport for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS
173090be798eSDimitry Andricprotocols (usable only via 802.1X).
173190be798eSDimitry Andric.It Va WITHOUT_ZFS
17321f7d1483SEd MasteSet to not build ZFS file system kernel module, libraries, and user commands.
173390be798eSDimitry Andric.It Va WITHOUT_ZONEINFO
173490be798eSDimitry AndricSet to not build the timezone database.
17355c021049SEnji CooperWhen set, it enforces these options:
17365c021049SEnji Cooper.Pp
17375c021049SEnji Cooper.Bl -item -compact
17385c021049SEnji Cooper.It
17395c021049SEnji Cooper.Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT
17405c021049SEnji Cooper.El
17415c021049SEnji Cooper.It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
17425c021049SEnji CooperSet to build leapsecond information in to the timezone database.
174390be798eSDimitry Andric.El
174490be798eSDimitry Andric.Sh FILES
174590be798eSDimitry Andric.Bl -tag -compact -width Pa
174690be798eSDimitry Andric.It Pa /etc/src.conf
17470a70ef02SBryan Drewery.It Pa /etc/src-env.conf
174890be798eSDimitry Andric.It Pa /usr/share/mk/bsd.own.mk
174990be798eSDimitry Andric.El
175090be798eSDimitry Andric.Sh SEE ALSO
175190be798eSDimitry Andric.Xr make 1 ,
175290be798eSDimitry Andric.Xr make.conf 5 ,
175390be798eSDimitry Andric.Xr build 7 ,
175490be798eSDimitry Andric.Xr ports 7
175590be798eSDimitry Andric.Sh HISTORY
175690be798eSDimitry AndricThe
175790be798eSDimitry Andric.Nm
175890be798eSDimitry Andricfile appeared in
175990be798eSDimitry Andric.Fx 7.0 .
176090be798eSDimitry Andric.Sh AUTHORS
176188342134SEnji CooperThis manual page was autogenerated by
1762a121d3a8SEnji Cooper.An tools/build/options/makeman .
1763