xref: /freebsd/share/man/man5/src.conf.5 (revision 38dd1759271cdea9ce00d740a54467fbb50dfae2)
1.\" DO NOT EDIT-- this file is generated by tools/build/options/makeman.
2.\" $FreeBSD$
3.Dd August 2, 2017
4.Dt SRC.CONF 5
5.Os
6.Sh NAME
7.Nm src.conf
8.Nd "source build options"
9.Sh DESCRIPTION
10The
11.Nm
12file contains settings that will apply to every build involving the
13.Fx
14source tree; see
15.Xr build 7 .
16.Pp
17The
18.Nm
19file uses the standard makefile syntax.
20However,
21.Nm
22should not specify any dependencies to
23.Xr make 1 .
24Instead,
25.Nm
26is to set
27.Xr make 1
28variables that control the aspects of how the system builds.
29.Pp
30The default location of
31.Nm
32is
33.Pa /etc/src.conf ,
34though an alternative location can be specified in the
35.Xr make 1
36variable
37.Va SRCCONF .
38Overriding the location of
39.Nm
40may be necessary if the system-wide settings are not suitable
41for a particular build.
42For instance, setting
43.Va SRCCONF
44to
45.Pa /dev/null
46effectively resets all build controls to their defaults.
47.Pp
48The only purpose of
49.Nm
50is to control the compilation of the
51.Fx
52source code, which is usually located in
53.Pa /usr/src .
54As a rule, the system administrator creates
55.Nm
56when the values of certain control variables need to be changed
57from their defaults.
58.Pp
59In addition, control variables can be specified
60for a particular build via the
61.Fl D
62option of
63.Xr make 1
64or in its environment; see
65.Xr environ 7 .
66.Pp
67The environment of
68.Xr make 1
69for the build can be controlled via the
70.Va SRC_ENV_CONF
71variable, which defaults to
72.Pa /etc/src-env.conf .
73Some examples that may only be set in this file are
74.Va WITH_DIRDEPS_BUILD ,
75and
76.Va WITH_META_MODE
77as they are environment-only variables.
78Note that
79.Va MAKEOBJDIRPREFIX
80may be set here only when using
81.Va WITH_DIRDEPS_BUILD .
82.Pp
83The values of variables are ignored regardless of their setting;
84even if they would be set to
85.Dq Li FALSE
86or
87.Dq Li NO .
88The presence of an option causes
89it to be honored by
90.Xr make 1 .
91.Pp
92This list provides a name and short description for variables
93that can be used for source builds.
94.Bl -tag -width indent
95.It Va WITHOUT_ACCT
96Set to not build process accounting tools such as
97.Xr accton 8
98and
99.Xr sa 8 .
100.It Va WITHOUT_ACPI
101Set to not build
102.Xr acpiconf 8 ,
103.Xr acpidump 8
104and related programs.
105.It Va WITHOUT_AMD
106Set to not build
107.Xr amd 8 ,
108and related programs.
109.It Va WITHOUT_APM
110Set to not build
111.Xr apm 8 ,
112.Xr apmd 8
113and related programs.
114.It Va WITHOUT_ASSERT_DEBUG
115Set to compile programs and libraries without the
116.Xr assert 3
117checks.
118.It Va WITHOUT_AT
119Set to not build
120.Xr at 1
121and related utilities.
122.It Va WITHOUT_ATM
123Set to not build
124programs and libraries related to ATM networking.
125.It Va WITHOUT_AUDIT
126Set to not build audit support into system programs.
127.It Va WITHOUT_AUTHPF
128Set to not build
129.Xr authpf 8 .
130.It Va WITHOUT_AUTOFS
131Set to not build
132.Xr autofs 5
133related programs, libraries, and kernel modules.
134.It Va WITH_AUTO_OBJ
135Enable automatic creation of objdirs.
136.Pp
137This must be set in the environment, make command line, or
138.Pa /etc/src-env.conf ,
139not
140.Pa /etc/src.conf .
141.It Va WITHOUT_BHYVE
142Set to not build or install
143.Xr bhyve 8 ,
144associated utilities, and examples.
145.Pp
146This option only affects amd64/amd64.
147.It Va WITHOUT_BINUTILS
148Set to not build or install binutils (as, ld, objcopy, and objdump ) as part
149of the normal system build.
150The resulting system cannot build programs from source.
151.Pp
152This is a default setting on
153arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
154When set, it enforces these options:
155.Pp
156.Bl -item -compact
157.It
158.Va WITHOUT_GDB
159.El
160.It Va WITH_BINUTILS
161Set to build and install binutils (as, ld, objcopy, and objdump) as part
162of the normal system build.
163.Pp
164This is a default setting on
165amd64/amd64, arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
166.It Va WITHOUT_BINUTILS_BOOTSTRAP
167Set to not build binutils (as, ld, objcopy and objdump)
168as part of the bootstrap process.
169.Bf -symbolic
170The option does not work for build targets unless some alternative
171toolchain is provided.
172.Ef
173.Pp
174This is a default setting on
175arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
176.It Va WITH_BINUTILS_BOOTSTRAP
177Set build binutils (as, ld, objcopy and objdump)
178as part of the bootstrap process.
179.Pp
180This is a default setting on
181amd64/amd64, arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
182.It Va WITHOUT_BLACKLIST
183Set this if you do not want to build
184.Xr blacklistd 8
185and
186.Xr blacklistctl 8 .
187When set, it enforces these options:
188.Pp
189.Bl -item -compact
190.It
191.Va WITHOUT_BLACKLIST_SUPPORT
192.El
193.It Va WITHOUT_BLACKLIST_SUPPORT
194Set to build some programs without
195.Xr libblacklist 3
196support, like
197.Xr fingerd 8 ,
198.Xr ftpd 8 ,
199.Xr rlogind 8 ,
200.Xr rshd 8 ,
201and
202.Xr sshd 8 .
203.It Va WITHOUT_BLUETOOTH
204Set to not build Bluetooth related kernel modules, programs and libraries.
205.It Va WITHOUT_BOOT
206Set to not build the boot blocks and loader.
207.It Va WITHOUT_BOOTPARAMD
208Set to not build or install
209.Xr bootparamd 8 .
210.It Va WITHOUT_BOOTPD
211Set to not build or install
212.Xr bootpd 8 .
213.It Va WITHOUT_BSDINSTALL
214Set to not build
215.Xr bsdinstall 8 ,
216.Xr sade 8 ,
217and related programs.
218.It Va WITHOUT_BSD_CPIO
219Set to not build the BSD licensed version of cpio based on
220.Xr libarchive 3 .
221.It Va WITH_BSD_GREP
222Install BSD-licensed grep as '[ef]grep' instead of GNU grep.
223.It Va WITHOUT_BSD_GREP_FASTMATCH
224Set this option to exclude the fastmatch implementation from
225.Xr bsdgrep 1 ,
226instead using only
227.Xr regex 3 .
228.It Va WITHOUT_BSNMP
229Set to not build or install
230.Xr bsnmpd 1
231and related libraries and data files.
232.It Va WITHOUT_BZIP2
233Set to not build contributed bzip2 software as a part of the base system.
234.Bf -symbolic
235The option has no effect yet.
236.Ef
237When set, it enforces these options:
238.Pp
239.Bl -item -compact
240.It
241.Va WITHOUT_BZIP2_SUPPORT
242.El
243.It Va WITHOUT_BZIP2_SUPPORT
244Set to build some programs without optional bzip2 support.
245.It Va WITHOUT_CALENDAR
246Set to not build
247.Xr calendar 1 .
248.It Va WITHOUT_CAPSICUM
249Set to not build Capsicum support into system programs.
250When set, it enforces these options:
251.Pp
252.Bl -item -compact
253.It
254.Va WITHOUT_CASPER
255.El
256.It Va WITHOUT_CASPER
257Set to not build Casper program and related libraries.
258.It Va WITH_CCACHE_BUILD
259Set to use
260.Xr ccache 1
261for the build.
262No configuration is required except to install the
263.Sy devel/ccache
264package.
265When using with
266.Xr distcc 1 ,
267set
268.Sy CCACHE_PREFIX=/usr/local/bin/distcc .
269The default cache directory of
270.Pa $HOME/.ccache
271will be used, which can be overridden by setting
272.Sy CCACHE_DIR .
273The
274.Sy CCACHE_COMPILERCHECK
275option defaults to
276.Sy content
277when using the in-tree bootstrap compiler,
278and
279.Sy mtime
280when using an external compiler.
281The
282.Sy CCACHE_CPP2
283option is used for Clang but not GCC.
284.Pp
285Sharing a cache between multiple work directories requires using a layout
286similar to
287.Pa /some/prefix/src
288.Pa /some/prefix/obj
289and an environment such as:
290.Bd -literal -offset indent
291CCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj'
292.Ed
293.Pp
294See
295.Xr ccache 1
296for more configuration options.
297.It Va WITHOUT_CCD
298Set to not build
299.Xr geom_ccd 4
300and related utilities.
301.It Va WITHOUT_CDDL
302Set to not build code licensed under Sun's CDDL.
303When set, it enforces these options:
304.Pp
305.Bl -item -compact
306.It
307.Va WITHOUT_CTF
308.It
309.Va WITHOUT_ZFS
310.El
311.It Va WITHOUT_CLANG
312Set to not build the Clang C/C++ compiler during the regular phase of the build.
313.Pp
314This is a default setting on
315riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
316When set, it enforces these options:
317.Pp
318.Bl -item -compact
319.It
320.Va WITHOUT_CLANG_EXTRAS
321.It
322.Va WITHOUT_CLANG_FULL
323.El
324.It Va WITH_CLANG
325Set to build the Clang C/C++ compiler during the normal phase of the build.
326.Pp
327This is a default setting on
328amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
329.It Va WITHOUT_CLANG_BOOTSTRAP
330Set to not build the Clang C/C++ compiler during the bootstrap phase of
331the build.
332To be able to build the system, either gcc or clang bootstrap must be
333enabled unless an alternate compiler is provided via XCC.
334.Pp
335This is a default setting on
336mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
337.It Va WITH_CLANG_BOOTSTRAP
338Set to build the Clang C/C++ compiler during the bootstrap phase of the build.
339.Pp
340This is a default setting on
341amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64 and i386/i386.
342.It Va WITH_CLANG_EXTRAS
343Set to build additional clang and llvm tools, such as bugpoint.
344.It Va WITHOUT_CLANG_FULL
345Set to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
346the Clang C/C++ compiler.
347.Pp
348This is a default setting on
349riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
350.It Va WITH_CLANG_FULL
351Set to build the ARCMigrate, Rewriter and StaticAnalyzer components of the
352Clang C/C++ compiler.
353.Pp
354This is a default setting on
355amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
356.It Va WITHOUT_CLANG_IS_CC
357Set to install the GCC compiler as
358.Pa /usr/bin/cc ,
359.Pa /usr/bin/c++
360and
361.Pa /usr/bin/cpp .
362.Pp
363This is a default setting on
364mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
365.It Va WITH_CLANG_IS_CC
366Set to install the Clang C/C++ compiler as
367.Pa /usr/bin/cc ,
368.Pa /usr/bin/c++
369and
370.Pa /usr/bin/cpp .
371.Pp
372This is a default setting on
373amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64 and i386/i386.
374.It Va WITHOUT_CPP
375Set to not build
376.Xr cpp 1 .
377.It Va WITHOUT_CROSS_COMPILER
378Set to not build any cross compiler in the cross-tools stage of buildworld.
379When compiling a different version of
380.Fx
381than what is installed on the system, provide an alternate
382compiler with XCC to ensure success.
383When compiling with an identical version of
384.Fx
385to the host, this option may be safely used.
386This option may also be safe when the host version of
387.Fx
388is close to the sources being built, but all bets are off if there have
389been any changes to the toolchain between the versions.
390When set, it enforces these options:
391.Pp
392.Bl -item -compact
393.It
394.Va WITHOUT_BINUTILS_BOOTSTRAP
395.It
396.Va WITHOUT_CLANG_BOOTSTRAP
397.It
398.Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
399.It
400.Va WITHOUT_GCC_BOOTSTRAP
401.El
402.It Va WITHOUT_CRYPT
403Set to not build any crypto code.
404When set, it enforces these options:
405.Pp
406.Bl -item -compact
407.It
408.Va WITHOUT_KERBEROS
409.It
410.Va WITHOUT_KERBEROS_SUPPORT
411.It
412.Va WITHOUT_OPENSSH
413.It
414.Va WITHOUT_OPENSSL
415.El
416.Pp
417When set, these options are also in effect:
418.Pp
419.Bl -inset -compact
420.It Va WITHOUT_GSSAPI
421(unless
422.Va WITH_GSSAPI
423is set explicitly)
424.El
425.It Va WITH_CTF
426Set to compile with CTF (Compact C Type Format) data.
427CTF data encapsulates a reduced form of debugging information
428similar to DWARF and the venerable stabs and is required for DTrace.
429.It Va WITHOUT_CTM
430Set to not build
431.Xr ctm 1
432and related utilities.
433.It Va WITHOUT_CUSE
434Set to not build CUSE-related programs and libraries.
435.It Va WITHOUT_CXGBETOOL
436Set to not build
437.Xr cxgbetool 8
438.Pp
439This is a default setting on
440arm/arm, arm/armeb, arm/armv6, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf.
441.It Va WITH_CXGBETOOL
442Set to build
443.Xr cxgbetool 8
444.Pp
445This is a default setting on
446amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and sparc64/sparc64.
447.It Va WITHOUT_CXX
448Set to not build
449.Xr c++ 1
450and related libraries.
451It will also prevent building of
452.Xr gperf 1
453and
454.Xr devd 8 .
455.Pp
456This is a default setting on
457riscv/riscv64 and riscv/riscv64sf.
458When set, it enforces these options:
459.Pp
460.Bl -item -compact
461.It
462.Va WITHOUT_CLANG
463.It
464.Va WITHOUT_CLANG_EXTRAS
465.It
466.Va WITHOUT_CLANG_FULL
467.It
468.Va WITHOUT_DTRACE_TESTS
469.It
470.Va WITHOUT_GNUCXX
471.It
472.Va WITHOUT_TESTS
473.It
474.Va WITHOUT_TESTS_SUPPORT
475.El
476.It Va WITH_CXX
477Set to build
478.Xr c++ 1
479and related libraries.
480.Pp
481This is a default setting on
482amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
483.It Va WITHOUT_DEBUG_FILES
484Set to avoid building or installing standalone debug files for each
485executable binary and shared library.
486.It Va WITHOUT_DIALOG
487Set to not build
488.Xr dialog 1 ,
489.Xr dialog 3 ,
490.Xr dpv 1 ,
491and
492.Xr dpv 3 .
493When set, it enforces these options:
494.Pp
495.Bl -item -compact
496.It
497.Va WITHOUT_BSDINSTALL
498.El
499.It Va WITHOUT_DICT
500Set to not build the Webster dictionary files.
501.It Va WITH_DIRDEPS_BUILD
502This is an experimental build system.
503For details see
504http://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
505Build commands can be seen from the top-level with:
506.Dl make show-valid-targets
507The build is driven by dirdeps.mk using
508.Va DIRDEPS
509stored in
510Makefile.depend files found in each directory.
511.Pp
512The build can be started from anywhere, and behaves the same.
513The initial instance of
514.Xr make 1
515recursively reads
516.Va DIRDEPS
517from
518.Pa Makefile.depend ,
519computing a graph of tree dependencies from the current origin.
520Setting
521.Va NO_DIRDEPS
522skips checking dirdep dependencies and will only build in the current
523and child directories.
524.Va NO_DIRDEPS_BELOW
525skips building any dirdeps and only build the current directory.
526.Pp
527This also utilizes the
528.Va WITH_META_MODE
529logic for incremental builds.
530.Pp
531The build hides commands executed unless
532.Va NO_SILENT
533is defined.
534.Pp
535Note that there is currently no mass install feature for this.
536.Pp
537When set, it enforces these options:
538.Pp
539.Bl -item -compact
540.It
541.Va WITH_INSTALL_AS_USER
542.El
543.Pp
544When set, these options are also in effect:
545.Pp
546.Bl -inset -compact
547.It Va WITH_AUTO_OBJ
548(unless
549.Va WITHOUT_AUTO_OBJ
550is set explicitly)
551.It Va WITH_META_MODE
552(unless
553.Va WITHOUT_META_MODE
554is set explicitly)
555.It Va WITH_STAGING
556(unless
557.Va WITHOUT_STAGING
558is set explicitly)
559.It Va WITH_STAGING_MAN
560(unless
561.Va WITHOUT_STAGING_MAN
562is set explicitly)
563.It Va WITH_STAGING_PROG
564(unless
565.Va WITHOUT_STAGING_PROG
566is set explicitly)
567.It Va WITH_SYSROOT
568(unless
569.Va WITHOUT_SYSROOT
570is set explicitly)
571.El
572.Pp
573This must be set in the environment, make command line, or
574.Pa /etc/src-env.conf ,
575not
576.Pa /etc/src.conf .
577.It Va WITH_DIRDEPS_CACHE
578Cache result of dirdeps.mk which can save significant time
579for subsequent builds.
580Depends on
581.Va WITH_DIRDEPS_BUILD .
582.Pp
583This must be set in the environment, make command line, or
584.Pa /etc/src-env.conf ,
585not
586.Pa /etc/src.conf .
587.It Va WITHOUT_DMAGENT
588Set to not build dma Mail Transport Agent.
589.It Va WITHOUT_DOCCOMPRESS
590Set to not install compressed system documentation.
591Only the uncompressed version will be installed.
592.It Va WITH_DTRACE_TESTS
593Set to build and install the DTrace test suite in
594.Pa /usr/tests/cddl/usr.sbin/dtrace .
595This test suite is considered experimental on architectures other than
596amd64/amd64 and running it may cause system instability.
597.It Va WITHOUT_DYNAMICROOT
598Set this if you do not want to link
599.Pa /bin
600and
601.Pa /sbin
602dynamically.
603.It Va WITHOUT_ED_CRYPTO
604Set to build
605.Xr ed 1
606without support for encryption/decryption.
607.It Va WITHOUT_EE
608Set to not build and install
609.Xr edit 1 ,
610.Xr ee 1 ,
611and related programs.
612.It Va WITHOUT_EFI
613Set not to build
614.Xr efivar 3
615and
616.Xr efivar 8 .
617.Pp
618This is a default setting on
619mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
620.It Va WITH_EFI
621Set to build
622.Xr efivar 3
623and
624.Xr efivar 8 .
625.Pp
626This is a default setting on
627amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64 and i386/i386.
628.It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
629Set to not build ELF Tool Chain tools
630(addr2line, nm, size, strings and strip)
631as part of the bootstrap process.
632.Bf -symbolic
633An alternate bootstrap tool chain must be provided.
634.Ef
635.It Va WITHOUT_EXAMPLES
636Set to avoid installing examples to
637.Pa /usr/share/examples/ .
638.It Va WITH_EXTRA_TCP_STACKS
639Set to build extra TCP stack modules.
640.It Va WITHOUT_FDT
641Set to not build Flattened Device Tree support as part of the base system.
642This includes the device tree compiler (dtc) and libfdt support library.
643.It Va WITHOUT_FILE
644Set to not build
645.Xr file 1
646and related programs.
647.It Va WITHOUT_FINGER
648Set to not build or install
649.Xr finger 1
650and
651.Xr fingerd 8 .
652.It Va WITHOUT_FLOPPY
653Set to not build or install programs
654for operating floppy disk driver.
655.It Va WITHOUT_FMTREE
656Set to not build and install
657.Pa /usr/sbin/fmtree .
658.It Va WITHOUT_FORMAT_EXTENSIONS
659Set to not enable
660.Fl fformat-extensions
661when compiling the kernel.
662Also disables all format checking.
663.It Va WITHOUT_FORTH
664Set to build bootloaders without Forth support.
665.It Va WITHOUT_FP_LIBC
666Set to build
667.Nm libc
668without floating-point support.
669.It Va WITHOUT_FREEBSD_UPDATE
670Set to not build
671.Xr freebsd-update 8 .
672.It Va WITHOUT_FTP
673Set to not build or install
674.Xr ftp 1
675and
676.Xr ftpd 8 .
677.It Va WITHOUT_GAMES
678Set to not build games.
679.It Va WITHOUT_GCC
680Set to not build and install gcc and g++ as part of the normal build process.
681.Pp
682This is a default setting on
683amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
684.It Va WITH_GCC
685Set to build and install gcc and g++.
686.Pp
687This is a default setting on
688mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
689.It Va WITHOUT_GCC_BOOTSTRAP
690Set to not build gcc and g++ as part of the bootstrap process.
691You must enable either gcc or clang bootstrap to be able to build the system,
692unless an alternative compiler is provided via
693XCC.
694.Pp
695This is a default setting on
696amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
697.It Va WITH_GCC_BOOTSTRAP
698Set to build gcc and g++ as part of the bootstrap process.
699.Pp
700This is a default setting on
701mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
702.It Va WITHOUT_GCOV
703Set to not build the
704.Xr gcov 1
705tool.
706.It Va WITHOUT_GDB
707Set to not build
708.Xr gdb 1 .
709.Pp
710This is a default setting on
711arm64/aarch64, riscv/riscv64 and riscv/riscv64sf.
712.It Va WITH_GDB
713Set to build
714.Xr gdb 1 .
715.Pp
716This is a default setting on
717amd64/amd64, arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
718.It Va WITHOUT_GDB_LIBEXEC
719Set to install
720.Xr gdb 1
721into
722.Pa /usr/bin .
723.Pp
724This is a default setting on
725arm/arm, arm/armeb, arm/armv6 and sparc64/sparc64.
726.It Va WITH_GDB_LIBEXEC
727Set to install
728.Xr gdb 1
729into
730.Pa /usr/libexec .
731This permits
732.Xr gdb 1
733to be used as a fallback for
734.Xr crashinfo 8
735if a newer version is not installed.
736.Pp
737This is a default setting on
738amd64/amd64, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and riscv/riscv64sf.
739.It Va WITHOUT_GNUCXX
740Do not build the GNU C++ stack (g++, libstdc++).
741This is the default on platforms where clang is the system compiler.
742.Pp
743This is a default setting on
744amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
745.It Va WITH_GNUCXX
746Build the GNU C++ stack (g++, libstdc++).
747This is the default on platforms where gcc is the system compiler.
748.Pp
749This is a default setting on
750mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
751.It Va WITHOUT_GNU_DIFF
752Set to not build GNU
753.Xr diff 1
754and
755.Xr diff3 1 .
756.It Va WITHOUT_GNU_GREP
757Set to not build GNU
758.Xr grep 1 .
759.It Va WITH_GNU_GREP_COMPAT
760Set this option to include GNU extensions in
761.Xr bsdgrep 1
762by linking against libgnuregex.
763.It Va WITHOUT_GPIO
764Set to not build
765.Xr gpioctl 8
766as part of the base system.
767.It Va WITHOUT_GPL_DTC
768Set to build the BSD licensed version of the device tree compiler rather
769than the GPLed one from elinux.org.
770.Pp
771This is a default setting on
772amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
773.It Va WITH_GPL_DTC
774Set to build the GPL'd version of the device tree compiler from elinux.org,
775instead of the BSD licensed one.
776.Pp
777This is a default setting on
778riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
779.It Va WITHOUT_GSSAPI
780Set to not build libgssapi.
781.It Va WITHOUT_HAST
782Set to not build
783.Xr hastd 8
784and related utilities.
785.It Va WITH_HESIOD
786Set to build Hesiod support.
787.It Va WITHOUT_HTML
788Set to not build HTML docs.
789.It Va WITHOUT_HYPERV
790Set to not build or install HyperV utilities.
791.It Va WITHOUT_ICONV
792Set to not build iconv as part of libc.
793.It Va WITHOUT_INCLUDES
794Set to not install header files.
795This option used to be spelled
796.Va NO_INCS .
797.Bf -symbolic
798The option does not work for build targets.
799.Ef
800.It Va WITHOUT_INET
801Set to not build programs and libraries related to IPv4 networking.
802When set, it enforces these options:
803.Pp
804.Bl -item -compact
805.It
806.Va WITHOUT_INET_SUPPORT
807.El
808.It Va WITHOUT_INET6
809Set to not build
810programs and libraries related to IPv6 networking.
811When set, it enforces these options:
812.Pp
813.Bl -item -compact
814.It
815.Va WITHOUT_INET6_SUPPORT
816.El
817.It Va WITHOUT_INET6_SUPPORT
818Set to build libraries, programs, and kernel modules without IPv6 support.
819.It Va WITHOUT_INETD
820Set to not build
821.Xr inetd 8 .
822.It Va WITHOUT_INET_SUPPORT
823Set to build libraries, programs, and kernel modules without IPv4 support.
824.It Va WITHOUT_INSTALLLIB
825Set this to not install optional libraries.
826For example, when creating a
827.Xr nanobsd 8
828image.
829.Bf -symbolic
830The option does not work for build targets.
831.Ef
832.It Va WITH_INSTALL_AS_USER
833Set to make install targets succeed for non-root users by installing
834files with owner and group attributes set to that of the user running
835the
836.Xr make 1
837command.
838The user still must set the
839.Va DESTDIR
840variable to point to a directory where the user has write permissions.
841.It Va WITHOUT_IPFILTER
842Set to not build IP Filter package.
843.It Va WITHOUT_IPFW
844Set to not build IPFW tools.
845.It Va WITHOUT_IPSEC_SUPPORT
846Set to not build the kernel with
847.Xr ipsec 4
848support.
849This option is needed for
850.Xr ipsec 4
851and
852.Xr tcpmd5 4 .
853.It Va WITHOUT_ISCSI
854Set to not build
855.Xr iscid 8
856and related utilities.
857.It Va WITHOUT_JAIL
858Set to not build tools for the support of jails; e.g.,
859.Xr jail 8 .
860.It Va WITHOUT_KDUMP
861Set to not build
862.Xr kdump 1
863and
864.Xr truss 1 .
865.It Va WITHOUT_KERBEROS
866Set this to not build Kerberos 5 (KTH Heimdal).
867When set, it enforces these options:
868.Pp
869.Bl -item -compact
870.It
871.Va WITHOUT_KERBEROS_SUPPORT
872.El
873.Pp
874When set, these options are also in effect:
875.Pp
876.Bl -inset -compact
877.It Va WITHOUT_GSSAPI
878(unless
879.Va WITH_GSSAPI
880is set explicitly)
881.El
882.It Va WITHOUT_KERBEROS_SUPPORT
883Set to build some programs without Kerberos support, like
884.Xr ssh 1 ,
885.Xr telnet 1 ,
886.Xr sshd 8 ,
887and
888.Xr telnetd 8 .
889.It Va WITHOUT_KERNEL_SYMBOLS
890Set to not install kernel symbol files.
891.Bf -symbolic
892This option is recommended for those people who have small root partitions.
893.Ef
894.It Va WITHOUT_KVM
895Set to not build the
896.Nm libkvm
897library as a part of the base system.
898.Bf -symbolic
899The option has no effect yet.
900.Ef
901When set, it enforces these options:
902.Pp
903.Bl -item -compact
904.It
905.Va WITHOUT_KVM_SUPPORT
906.El
907.It Va WITHOUT_KVM_SUPPORT
908Set to build some programs without optional
909.Nm libkvm
910support.
911.It Va WITHOUT_LDNS
912Setting this variable will prevent the LDNS library from being built.
913When set, it enforces these options:
914.Pp
915.Bl -item -compact
916.It
917.Va WITHOUT_LDNS_UTILS
918.It
919.Va WITHOUT_UNBOUND
920.El
921.It Va WITHOUT_LDNS_UTILS
922Setting this variable will prevent building the LDNS utilities
923.Xr drill 1
924and
925.Xr host 1 .
926.It Va WITHOUT_LEGACY_CONSOLE
927Set to not build programs that support a legacy PC console; e.g.,
928.Xr kbdcontrol 1
929and
930.Xr vidcontrol 1 .
931.It Va WITHOUT_LIB32
932On 64-bit platforms, set to not build 32-bit library set and a
933.Nm ld-elf32.so.1
934runtime linker.
935.It Va WITHOUT_LIBCPLUSPLUS
936Set to avoid building libcxxrt and libc++.
937.It Va WITHOUT_LIBPTHREAD
938Set to not build the
939.Nm libpthread
940providing library,
941.Nm libthr .
942When set, it enforces these options:
943.Pp
944.Bl -item -compact
945.It
946.Va WITHOUT_LIBTHR
947.El
948.It Va WITH_LIBSOFT
949On armv6 only, set to enable soft float ABI compatibility libraries.
950This option is for transitioning to the new hard float ABI.
951.It Va WITHOUT_LIBTHR
952Set to not build the
953.Nm libthr
954(1:1 threading)
955library.
956.It Va WITHOUT_LLD
957Set to not build LLVM's lld linker.
958.Pp
959This is a default setting on
960mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
961.It Va WITH_LLD
962Set to build LLVM's lld linker.
963.Pp
964This is a default setting on
965amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64 and i386/i386.
966.It Va WITHOUT_LLDB
967Set to not build the LLDB debugger.
968.Pp
969This is a default setting on
970arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
971.It Va WITH_LLDB
972Set to build the LLDB debugger.
973.Pp
974This is a default setting on
975amd64/amd64 and arm64/aarch64.
976.It Va WITHOUT_LLD_BOOTSTRAP
977Set to not build the LLD linker during the bootstrap phase of
978the build.
979To be able to build the system, either Binutils or LLD bootstrap must be
980enabled unless an alternate linker is provided via XLD.
981.Pp
982This is a default setting on
983amd64/amd64, arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
984.It Va WITH_LLD_BOOTSTRAP
985Set to build the LLD linker during the bootstrap phase of the build.
986.Pp
987This is a default setting on
988arm64/aarch64.
989.It Va WITHOUT_LLD_IS_LD
990Set to use GNU binutils ld as the system linker, instead of LLVM's LLD.
991.Pp
992This is a default setting on
993amd64/amd64, arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
994.It Va WITH_LLD_IS_LD
995Set to use LLVM's LLD as the system linker, instead of GNU binutils ld.
996.Pp
997This is a default setting on
998arm64/aarch64.
999.It Va WITHOUT_LLVM_LIBUNWIND
1000Set to use GCC's stack unwinder (instead of LLVM's libunwind).
1001.Pp
1002This is a default setting on
1003arm/arm, arm/armeb, arm/armv6, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1004.It Va WITH_LLVM_LIBUNWIND
1005Set to use LLVM's libunwind stack unwinder (instead of GCC's unwinder).
1006.Pp
1007This is a default setting on
1008amd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
1009.It Va WITHOUT_LOCALES
1010Set to not build localization files; see
1011.Xr locale 1 .
1012.It Va WITHOUT_LOCATE
1013Set to not build
1014.Xr locate 1
1015and related programs.
1016.It Va WITHOUT_LPR
1017Set to not build
1018.Xr lpr 1
1019and related programs.
1020.It Va WITHOUT_LS_COLORS
1021Set to build
1022.Xr ls 1
1023without support for colors to distinguish file types.
1024.It Va WITHOUT_LZMA_SUPPORT
1025Set to build some programs without optional lzma compression support.
1026.It Va WITHOUT_MAIL
1027Set to not build any mail support (MUA or MTA).
1028When set, it enforces these options:
1029.Pp
1030.Bl -item -compact
1031.It
1032.Va WITHOUT_DMAGENT
1033.It
1034.Va WITHOUT_MAILWRAPPER
1035.It
1036.Va WITHOUT_SENDMAIL
1037.El
1038.It Va WITHOUT_MAILWRAPPER
1039Set to not build the
1040.Xr mailwrapper 8
1041MTA selector.
1042.It Va WITHOUT_MAKE
1043Set to not install
1044.Xr make 1
1045and related support files.
1046.It Va WITHOUT_MAN
1047Set to not build manual pages.
1048When set, these options are also in effect:
1049.Pp
1050.Bl -inset -compact
1051.It Va WITHOUT_MAN_UTILS
1052(unless
1053.Va WITH_MAN_UTILS
1054is set explicitly)
1055.El
1056.It Va WITHOUT_MANCOMPRESS
1057Set to not to install compressed man pages.
1058Only the uncompressed versions will be installed.
1059.It Va WITHOUT_MAN_UTILS
1060Set to not build utilities for manual pages,
1061.Xr apropos 1 ,
1062.Xr catman 1 ,
1063.Xr makewhatis 1 ,
1064.Xr man 1 ,
1065.Xr whatis 1 ,
1066.Xr manctl 8 ,
1067and related support files.
1068.It Va WITH_META_MODE
1069Create
1070.Xr make 1
1071meta files when building, which can provide a reliable incremental build when
1072using
1073.Xr filemon 4 .
1074The meta file is created in OBJDIR as
1075.Pa target.meta .
1076These meta files track the command that was executed, its output, and the
1077current directory.
1078The
1079.Xr filemon 4
1080module is required unless
1081.Va NO_FILEMON
1082is defined.
1083When the module is loaded, any files used by the commands executed are
1084tracked as dependencies for the target in its meta file.
1085The target is considered out-of-date and rebuilt if any of these
1086conditions are true compared to the last build:
1087.Bl -bullet -compact
1088.It
1089The command to execute changes.
1090.It
1091The current working directory changes.
1092.It
1093The target's meta file is missing.
1094.It
1095The target's meta file is missing filemon data when filemon is loaded
1096and a previous run did not have it loaded.
1097.It
1098[requires
1099.Xr filemon 4 ]
1100Files read, executed or linked to are newer than the target.
1101.It
1102[requires
1103.Xr filemon 4 ]
1104Files read, written, executed or linked are missing.
1105.El
1106The meta files can also be useful for debugging.
1107.Pp
1108The build hides commands that are executed unless
1109.Va NO_SILENT
1110is defined.
1111Errors cause
1112.Xr make 1
1113to show some of its environment for further debugging.
1114.Pp
1115The build operates as it normally would otherwise.
1116This option originally invoked a different build system but that was renamed
1117to
1118.Va WITH_DIRDEPS_BUILD .
1119.Pp
1120This must be set in the environment, make command line, or
1121.Pa /etc/src-env.conf ,
1122not
1123.Pa /etc/src.conf .
1124.It Va WITH_NAND
1125Set to build the NAND Flash components.
1126.It Va WITHOUT_NDIS
1127Set to not build programs and libraries
1128related to NDIS emulation support.
1129.It Va WITHOUT_NETCAT
1130Set to not build
1131.Xr nc 1
1132utility.
1133.It Va WITHOUT_NETGRAPH
1134Set to not build applications to support
1135.Xr netgraph 4 .
1136When set, it enforces these options:
1137.Pp
1138.Bl -item -compact
1139.It
1140.Va WITHOUT_ATM
1141.It
1142.Va WITHOUT_BLUETOOTH
1143.It
1144.Va WITHOUT_NETGRAPH_SUPPORT
1145.El
1146.It Va WITHOUT_NETGRAPH_SUPPORT
1147Set to build libraries, programs, and kernel modules without netgraph support.
1148.It Va WITHOUT_NIS
1149Set to not build
1150.Xr NIS 8
1151support and related programs.
1152If set, you might need to adopt your
1153.Xr nsswitch.conf 5
1154and remove
1155.Sq nis
1156entries.
1157.It Va WITHOUT_NLS
1158Set to not build NLS catalogs.
1159When set, it enforces these options:
1160.Pp
1161.Bl -item -compact
1162.It
1163.Va WITHOUT_NLS_CATALOGS
1164.El
1165.It Va WITHOUT_NLS_CATALOGS
1166Set to not build NLS catalog support for
1167.Xr csh 1 .
1168.It Va WITHOUT_NS_CACHING
1169Set to disable name caching in the
1170.Pa nsswitch
1171subsystem.
1172The generic caching daemon,
1173.Xr nscd 8 ,
1174will not be built either if this option is set.
1175.It Va WITHOUT_NTP
1176Set to not build
1177.Xr ntpd 8
1178and related programs.
1179.It Va WITH_OFED
1180Set to build the
1181.Dq "OpenFabrics Enterprise Distribution"
1182Infiniband software stack.
1183.It Va WITH_OPENLDAP
1184Enable building openldap support for kerberos.
1185.It Va WITHOUT_OPENSSH
1186Set to not build OpenSSH.
1187.It Va WITHOUT_OPENSSL
1188Set to not build OpenSSL.
1189When set, it enforces these options:
1190.Pp
1191.Bl -item -compact
1192.It
1193.Va WITHOUT_KERBEROS
1194.It
1195.Va WITHOUT_KERBEROS_SUPPORT
1196.It
1197.Va WITHOUT_OPENSSH
1198.El
1199.Pp
1200When set, these options are also in effect:
1201.Pp
1202.Bl -inset -compact
1203.It Va WITHOUT_GSSAPI
1204(unless
1205.Va WITH_GSSAPI
1206is set explicitly)
1207.El
1208.It Va WITHOUT_PAM
1209Set to not build PAM library and modules.
1210.Bf -symbolic
1211This option is deprecated and does nothing.
1212.Ef
1213When set, it enforces these options:
1214.Pp
1215.Bl -item -compact
1216.It
1217.Va WITHOUT_PAM_SUPPORT
1218.El
1219.It Va WITHOUT_PAM_SUPPORT
1220Set to build some programs without PAM support, particularly
1221.Xr ftpd 8
1222and
1223.Xr ppp 8 .
1224.It Va WITHOUT_PC_SYSINSTALL
1225Set to not build
1226.Xr pc-sysinstall 8
1227and related programs.
1228.It Va WITHOUT_PF
1229Set to not build PF firewall package.
1230When set, it enforces these options:
1231.Pp
1232.Bl -item -compact
1233.It
1234.Va WITHOUT_AUTHPF
1235.El
1236.It Va WITHOUT_PKGBOOTSTRAP
1237Set to not build
1238.Xr pkg 7
1239bootstrap tool.
1240.It Va WITHOUT_PMC
1241Set to not build
1242.Xr pmccontrol 8
1243and related programs.
1244.It Va WITHOUT_PORTSNAP
1245Set to not build or install
1246.Xr portsnap 8
1247and related files.
1248.It Va WITHOUT_PPP
1249Set to not build
1250.Xr ppp 8
1251and related programs.
1252.It Va WITHOUT_PROFILE
1253Set to not build profiled libraries for use with
1254.Xr gprof 8 .
1255.Pp
1256This is a default setting on
1257riscv/riscv64 and riscv/riscv64sf.
1258.It Va WITH_PROFILE
1259Set to build profiled libraries for use with
1260.Xr gprof 8 .
1261.Pp
1262This is a default setting on
1263amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1264.It Va WITHOUT_QUOTAS
1265Set to not build
1266.Xr quota 1
1267and related programs.
1268.It Va WITHOUT_RADIUS_SUPPORT
1269Set to not build radius support into various applications, like
1270.Xr pam_radius 8
1271and
1272.Xr ppp 8 .
1273.It Va WITH_RATELIMIT
1274Set to build the system with rate limit support.
1275.Pp
1276This makes
1277.Dv SO_MAX_PACING_RATE
1278effective in
1279.Xr getsockopt 2 ,
1280and
1281.Ar txrlimit
1282support in
1283.Xr ifconfig 8 ,
1284by proxy.
1285.It Va WITHOUT_RBOOTD
1286Set to not build or install
1287.Xr rbootd 8 .
1288.It Va WITH_RCMDS
1289Enable building of the
1290.Bx
1291r-commands.
1292This includes
1293.Xr rlogin 1 ,
1294.Xr rsh 1 ,
1295etc.
1296.It Va WITH_REPRODUCIBLE_BUILD
1297Set to exclude build metadata (such as the build time, user, or host)
1298from the kernel, boot loaders, and uname output, so that builds produce
1299bit-for-bit identical output.
1300.It Va WITHOUT_RESCUE
1301Set to not build
1302.Xr rescue 8 .
1303.It Va WITHOUT_ROUTED
1304Set to not build
1305.Xr routed 8
1306utility.
1307.It Va WITH_RPCBIND_WARMSTART_SUPPORT
1308Set to build
1309.Xr rpcbind 8
1310with warmstart support.
1311.It Va WITHOUT_SENDMAIL
1312Set to not build
1313.Xr sendmail 8
1314and related programs.
1315.It Va WITHOUT_SETUID_LOGIN
1316Set this to disable the installation of
1317.Xr login 1
1318as a set-user-ID root program.
1319.It Va WITHOUT_SHAREDOCS
1320Set to not build the
1321.Bx 4.4
1322legacy docs.
1323.It Va WITH_SHARED_TOOLCHAIN
1324Set to build the toolchain binaries shared.
1325The set includes
1326.Xr cc 1 ,
1327.Xr make 1
1328and necessary utilities like assembler, linker and library archive manager.
1329.It Va WITH_SORT_THREADS
1330Set to enable threads in
1331.Xr sort 1 .
1332.It Va WITHOUT_SOURCELESS
1333Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
1334When set, it enforces these options:
1335.Pp
1336.Bl -item -compact
1337.It
1338.Va WITHOUT_SOURCELESS_HOST
1339.It
1340.Va WITHOUT_SOURCELESS_UCODE
1341.El
1342.It Va WITHOUT_SOURCELESS_HOST
1343Set to not build kernel modules that include sourceless native code for host CPU.
1344.It Va WITHOUT_SOURCELESS_UCODE
1345Set to not build kernel modules that include sourceless microcode.
1346.It Va WITHOUT_SSP
1347Set to not build world with propolice stack smashing protection.
1348.Pp
1349This is a default setting on
1350mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1351.It Va WITH_SSP
1352Set to build world with propolice stack smashing protection.
1353.Pp
1354This is a default setting on
1355amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1356.It Va WITH_STAGING
1357Enable staging of files to a stage tree.
1358This can be best thought of as auto-install to
1359.Va DESTDIR
1360with some extra meta data to ensure dependencies can be tracked.
1361Depends on
1362.Va WITH_DIRDEPS_BUILD .
1363When set, these options are also in effect:
1364.Pp
1365.Bl -inset -compact
1366.It Va WITH_STAGING_MAN
1367(unless
1368.Va WITHOUT_STAGING_MAN
1369is set explicitly)
1370.It Va WITH_STAGING_PROG
1371(unless
1372.Va WITHOUT_STAGING_PROG
1373is set explicitly)
1374.El
1375.Pp
1376This must be set in the environment, make command line, or
1377.Pa /etc/src-env.conf ,
1378not
1379.Pa /etc/src.conf .
1380.It Va WITH_STAGING_MAN
1381Enable staging of man pages to stage tree.
1382.It Va WITH_STAGING_PROG
1383Enable staging of PROGs to stage tree.
1384.It Va WITH_STALE_STAGED
1385Check staged files are not stale.
1386.It Va WITH_SVN
1387Set to install
1388.Xr svnlite 1
1389as
1390.Xr svn 1 .
1391.It Va WITHOUT_SVNLITE
1392Set to not build
1393.Xr svnlite 1
1394and related programs.
1395.It Va WITHOUT_SYMVER
1396Set to disable symbol versioning when building shared libraries.
1397.It Va WITHOUT_SYSCONS
1398Set to not build
1399.Xr syscons 4
1400support files such as keyboard maps, fonts, and screen output maps.
1401.It Va WITH_SYSROOT
1402Enable use of sysroot during build.
1403Depends on
1404.Va WITH_DIRDEPS_BUILD .
1405.Pp
1406This must be set in the environment, make command line, or
1407.Pa /etc/src-env.conf ,
1408not
1409.Pa /etc/src.conf .
1410.It Va WITHOUT_SYSTEM_COMPILER
1411Set to not opportunistically skip building a cross-compiler during the
1412bootstrap phase of the build.
1413Normally, if the currently installed compiler matches the planned bootstrap
1414compiler type and revision, then it will not be built.
1415This does not prevent a compiler from being built for installation though,
1416only for building one for the build itself.
1417The
1418.Va WITHOUT_CLANG
1419and
1420.Va WITHOUT_GCC
1421options control those.
1422.It Va WITHOUT_TALK
1423Set to not build or install
1424.Xr talk 1
1425and
1426.Xr talkd 8 .
1427.It Va WITHOUT_TCP_WRAPPERS
1428Set to not build or install
1429.Xr tcpd 8 ,
1430and related utilities.
1431.It Va WITHOUT_TCSH
1432Set to not build and install
1433.Pa /bin/csh
1434(which is
1435.Xr tcsh 1 ) .
1436.It Va WITHOUT_TELNET
1437Set to not build
1438.Xr telnet 1
1439and related programs.
1440.It Va WITHOUT_TESTS
1441Set to not build nor install the
1442.Fx
1443Test Suite in
1444.Pa /usr/tests/ .
1445See
1446.Xr tests 7
1447for more details.
1448This also disables the build of all test-related dependencies, including ATF.
1449.Pp
1450This is a default setting on
1451riscv/riscv64 and riscv/riscv64sf.
1452When set, it enforces these options:
1453.Pp
1454.Bl -item -compact
1455.It
1456.Va WITHOUT_DTRACE_TESTS
1457.It
1458.Va WITHOUT_TESTS_SUPPORT
1459.El
1460.It Va WITHOUT_TESTS_SUPPORT
1461Set to disables the build of all test-related dependencies, including ATF.
1462.Pp
1463This is a default setting on
1464riscv/riscv64 and riscv/riscv64sf.
1465.It Va WITHOUT_TEXTPROC
1466Set to not build
1467programs used for text processing.
1468.It Va WITHOUT_TFTP
1469Set to not build or install
1470.Xr tftp 1
1471and
1472.Xr tftpd 8 .
1473.It Va WITHOUT_TIMED
1474Set to not build or install
1475.Xr timed 8 .
1476.It Va WITHOUT_TOOLCHAIN
1477Set to not install header or
1478programs used for program development,
1479compilers, debuggers etc.
1480When set, it enforces these options:
1481.Pp
1482.Bl -item -compact
1483.It
1484.Va WITHOUT_BINUTILS
1485.It
1486.Va WITHOUT_CLANG
1487.It
1488.Va WITHOUT_CLANG_EXTRAS
1489.It
1490.Va WITHOUT_CLANG_FULL
1491.It
1492.Va WITHOUT_GCC
1493.It
1494.Va WITHOUT_GDB
1495.It
1496.Va WITHOUT_INCLUDES
1497.It
1498.Va WITHOUT_LLD
1499.It
1500.Va WITHOUT_LLDB
1501.El
1502.It Va WITHOUT_UNBOUND
1503Set to not build
1504.Xr unbound 8
1505and related programs.
1506.It Va WITHOUT_USB
1507Set to not build USB-related programs and libraries.
1508.It Va WITHOUT_USB_GADGET_EXAMPLES
1509Set to not build USB gadget kernel modules.
1510.It Va WITHOUT_UTMPX
1511Set to not build user accounting tools such as
1512.Xr last 1 ,
1513.Xr users 1 ,
1514.Xr who 1 ,
1515.Xr ac 8 ,
1516.Xr lastlogin 8
1517and
1518.Xr utx 8 .
1519.It Va WITHOUT_VI
1520Set to not build and install vi, view, ex and related programs.
1521.It Va WITHOUT_VT
1522Set to not build
1523.Xr vt 4
1524support files (fonts and keymaps).
1525.It Va WITHOUT_WARNS
1526Set this to not add warning flags to the compiler invocations.
1527Useful as a temporary workaround when code enters the tree
1528which triggers warnings in environments that differ from the
1529original developer.
1530.It Va WITHOUT_WIRELESS
1531Set to not build programs used for 802.11 wireless networks; especially
1532.Xr wpa_supplicant 8
1533and
1534.Xr hostapd 8 .
1535When set, it enforces these options:
1536.Pp
1537.Bl -item -compact
1538.It
1539.Va WITHOUT_WIRELESS_SUPPORT
1540.El
1541.It Va WITHOUT_WIRELESS_SUPPORT
1542Set to build libraries, programs, and kernel modules without
1543802.11 wireless support.
1544.It Va WITHOUT_WPA_SUPPLICANT_EAPOL
1545Build
1546.Xr wpa_supplicant 8
1547without support for the IEEE 802.1X protocol and without
1548support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS
1549protocols (usable only via 802.1X).
1550.It Va WITHOUT_ZFS
1551Set to not build ZFS file system.
1552.It Va WITHOUT_ZONEINFO
1553Set to not build the timezone database.
1554When set, it enforces these options:
1555.Pp
1556.Bl -item -compact
1557.It
1558.Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT
1559.It
1560.Va WITHOUT_ZONEINFO_OLD_TIMEZONES_SUPPORT
1561.El
1562.It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
1563Set to build leapsecond information in to the timezone database.
1564.It Va WITH_ZONEINFO_OLD_TIMEZONES_SUPPORT
1565Set to build backward compatibility timezone aliases in to the timezone
1566database.
1567.El
1568.Sh FILES
1569.Bl -tag -compact -width Pa
1570.It Pa /etc/src.conf
1571.It Pa /etc/src-env.conf
1572.It Pa /usr/share/mk/bsd.own.mk
1573.El
1574.Sh SEE ALSO
1575.Xr make 1 ,
1576.Xr make.conf 5 ,
1577.Xr build 7 ,
1578.Xr ports 7
1579.Sh HISTORY
1580The
1581.Nm
1582file appeared in
1583.Fx 7.0 .
1584.Sh AUTHORS
1585This manual page was autogenerated by
1586.An tools/build/options/makeman .
1587