xref: /freebsd/share/man/man5/src.conf.5 (revision f56f82e0)
1.\" DO NOT EDIT-- this file is generated by tools/build/options/makeman.
2.\" $FreeBSD$
3.Dd June 8, 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.It Va WITHOUT_GSSAPI
771Set to not build libgssapi.
772.It Va WITHOUT_HAST
773Set to not build
774.Xr hastd 8
775and related utilities.
776.It Va WITH_HESIOD
777Set to build Hesiod support.
778.It Va WITHOUT_HTML
779Set to not build HTML docs.
780.It Va WITHOUT_HYPERV
781Set to not build or install HyperV utilities.
782.It Va WITHOUT_ICONV
783Set to not build iconv as part of libc.
784.It Va WITHOUT_INCLUDES
785Set to not install header files.
786This option used to be spelled
787.Va NO_INCS .
788.Bf -symbolic
789The option does not work for build targets.
790.Ef
791.It Va WITHOUT_INET
792Set to not build programs and libraries related to IPv4 networking.
793When set, it enforces these options:
794.Pp
795.Bl -item -compact
796.It
797.Va WITHOUT_INET_SUPPORT
798.El
799.It Va WITHOUT_INET6
800Set to not build
801programs and libraries related to IPv6 networking.
802When set, it enforces these options:
803.Pp
804.Bl -item -compact
805.It
806.Va WITHOUT_INET6_SUPPORT
807.El
808.It Va WITHOUT_INET6_SUPPORT
809Set to build libraries, programs, and kernel modules without IPv6 support.
810.It Va WITHOUT_INETD
811Set to not build
812.Xr inetd 8 .
813.It Va WITHOUT_INET_SUPPORT
814Set to build libraries, programs, and kernel modules without IPv4 support.
815.It Va WITHOUT_INSTALLLIB
816Set this to not install optional libraries.
817For example, when creating a
818.Xr nanobsd 8
819image.
820.Bf -symbolic
821The option does not work for build targets.
822.Ef
823.It Va WITH_INSTALL_AS_USER
824Set to make install targets succeed for non-root users by installing
825files with owner and group attributes set to that of the user running
826the
827.Xr make 1
828command.
829The user still must set the
830.Va DESTDIR
831variable to point to a directory where the user has write permissions.
832.It Va WITHOUT_IPFILTER
833Set to not build IP Filter package.
834.It Va WITHOUT_IPFW
835Set to not build IPFW tools.
836.It Va WITHOUT_IPSEC_SUPPORT
837Set to not build the kernel with
838.Xr ipsec 4
839support.
840This option is needed for
841.Xr ipsec 4
842and
843.Xr tcpmd5 4 .
844.It Va WITHOUT_ISCSI
845Set to not build
846.Xr iscid 8
847and related utilities.
848.It Va WITHOUT_JAIL
849Set to not build tools for the support of jails; e.g.,
850.Xr jail 8 .
851.It Va WITHOUT_KDUMP
852Set to not build
853.Xr kdump 1
854and
855.Xr truss 1 .
856.It Va WITHOUT_KERBEROS
857Set this to not build Kerberos 5 (KTH Heimdal).
858When set, it enforces these options:
859.Pp
860.Bl -item -compact
861.It
862.Va WITHOUT_KERBEROS_SUPPORT
863.El
864.Pp
865When set, these options are also in effect:
866.Pp
867.Bl -inset -compact
868.It Va WITHOUT_GSSAPI
869(unless
870.Va WITH_GSSAPI
871is set explicitly)
872.El
873.It Va WITHOUT_KERBEROS_SUPPORT
874Set to build some programs without Kerberos support, like
875.Xr ssh 1 ,
876.Xr telnet 1 ,
877.Xr sshd 8 ,
878and
879.Xr telnetd 8 .
880.It Va WITHOUT_KERNEL_SYMBOLS
881Set to not install kernel symbol files.
882.Bf -symbolic
883This option is recommended for those people who have small root partitions.
884.Ef
885.It Va WITHOUT_KVM
886Set to not build the
887.Nm libkvm
888library as a part of the base system.
889.Bf -symbolic
890The option has no effect yet.
891.Ef
892When set, it enforces these options:
893.Pp
894.Bl -item -compact
895.It
896.Va WITHOUT_KVM_SUPPORT
897.El
898.It Va WITHOUT_KVM_SUPPORT
899Set to build some programs without optional
900.Nm libkvm
901support.
902.It Va WITHOUT_LDNS
903Setting this variable will prevent the LDNS library from being built.
904When set, it enforces these options:
905.Pp
906.Bl -item -compact
907.It
908.Va WITHOUT_LDNS_UTILS
909.It
910.Va WITHOUT_UNBOUND
911.El
912.It Va WITHOUT_LDNS_UTILS
913Setting this variable will prevent building the LDNS utilities
914.Xr drill 1
915and
916.Xr host 1 .
917.It Va WITHOUT_LEGACY_CONSOLE
918Set to not build programs that support a legacy PC console; e.g.,
919.Xr kbdcontrol 1
920and
921.Xr vidcontrol 1 .
922.It Va WITHOUT_LIB32
923On 64-bit platforms, set to not build 32-bit library set and a
924.Nm ld-elf32.so.1
925runtime linker.
926.It Va WITHOUT_LIBCPLUSPLUS
927Set to avoid building libcxxrt and libc++.
928.It Va WITHOUT_LIBPTHREAD
929Set to not build the
930.Nm libpthread
931providing library,
932.Nm libthr .
933When set, it enforces these options:
934.Pp
935.Bl -item -compact
936.It
937.Va WITHOUT_LIBTHR
938.El
939.It Va WITH_LIBSOFT
940On armv6 only, set to enable soft float ABI compatibility libraries.
941This option is for transitioning to the new hard float ABI.
942.It Va WITHOUT_LIBTHR
943Set to not build the
944.Nm libthr
945(1:1 threading)
946library.
947.It Va WITHOUT_LLD
948Set to not build LLVM's lld linker.
949.Pp
950This is a default setting on
951mips/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.
952.It Va WITH_LLD
953Set to build LLVM's lld linker.
954.Pp
955This is a default setting on
956amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64 and i386/i386.
957.It Va WITHOUT_LLDB
958Set to not build the LLDB debugger.
959.Pp
960This is a default setting on
961arm/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.
962.It Va WITH_LLDB
963Set to build the LLDB debugger.
964.Pp
965This is a default setting on
966amd64/amd64 and arm64/aarch64.
967.It Va WITHOUT_LLD_BOOTSTRAP
968Set to not build the LLD linker during the bootstrap phase of
969the build.
970To be able to build the system, either Binutils or LLD bootstrap must be
971enabled unless an alternate linker is provided via XLD.
972.Pp
973This is a default setting on
974amd64/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.
975.It Va WITH_LLD_BOOTSTRAP
976Set to build the LLD linker during the bootstrap phase of the build.
977.Pp
978This is a default setting on
979arm64/aarch64.
980.It Va WITHOUT_LLD_IS_LD
981Set to use GNU binutils ld as the system linker, instead of LLVM's LLD.
982.Pp
983This is a default setting on
984amd64/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.
985.It Va WITH_LLD_IS_LD
986Set to use LLVM's LLD as the system linker, instead of GNU binutils ld.
987.Pp
988This is a default setting on
989arm64/aarch64.
990.It Va WITHOUT_LLVM_LIBUNWIND
991Set to use GCC's stack unwinder (instead of LLVM's libunwind).
992.Pp
993This is a default setting on
994arm/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.
995.It Va WITH_LLVM_LIBUNWIND
996Set to use LLVM's libunwind stack unwinder (instead of GCC's unwinder).
997.Pp
998This is a default setting on
999amd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
1000.It Va WITHOUT_LOCALES
1001Set to not build localization files; see
1002.Xr locale 1 .
1003.It Va WITHOUT_LOCATE
1004Set to not build
1005.Xr locate 1
1006and related programs.
1007.It Va WITHOUT_LPR
1008Set to not build
1009.Xr lpr 1
1010and related programs.
1011.It Va WITHOUT_LS_COLORS
1012Set to build
1013.Xr ls 1
1014without support for colors to distinguish file types.
1015.It Va WITHOUT_LZMA_SUPPORT
1016Set to build some programs without optional lzma compression support.
1017.It Va WITHOUT_MAIL
1018Set to not build any mail support (MUA or MTA).
1019When set, it enforces these options:
1020.Pp
1021.Bl -item -compact
1022.It
1023.Va WITHOUT_DMAGENT
1024.It
1025.Va WITHOUT_MAILWRAPPER
1026.It
1027.Va WITHOUT_SENDMAIL
1028.El
1029.It Va WITHOUT_MAILWRAPPER
1030Set to not build the
1031.Xr mailwrapper 8
1032MTA selector.
1033.It Va WITHOUT_MAKE
1034Set to not install
1035.Xr make 1
1036and related support files.
1037.It Va WITHOUT_MAN
1038Set to not build manual pages.
1039When set, these options are also in effect:
1040.Pp
1041.Bl -inset -compact
1042.It Va WITHOUT_MAN_UTILS
1043(unless
1044.Va WITH_MAN_UTILS
1045is set explicitly)
1046.El
1047.It Va WITHOUT_MANCOMPRESS
1048Set to not to install compressed man pages.
1049Only the uncompressed versions will be installed.
1050.It Va WITHOUT_MAN_UTILS
1051Set to not build utilities for manual pages,
1052.Xr apropos 1 ,
1053.Xr catman 1 ,
1054.Xr makewhatis 1 ,
1055.Xr man 1 ,
1056.Xr whatis 1 ,
1057.Xr manctl 8 ,
1058and related support files.
1059.It Va WITH_META_MODE
1060Create
1061.Xr make 1
1062meta files when building, which can provide a reliable incremental build when
1063using
1064.Xr filemon 4 .
1065The meta file is created in OBJDIR as
1066.Pa target.meta .
1067These meta files track the command that was executed, its output, and the
1068current directory.
1069The
1070.Xr filemon 4
1071module is required unless
1072.Va NO_FILEMON
1073is defined.
1074When the module is loaded, any files used by the commands executed are
1075tracked as dependencies for the target in its meta file.
1076The target is considered out-of-date and rebuilt if any of these
1077conditions are true compared to the last build:
1078.Bl -bullet -compact
1079.It
1080The command to execute changes.
1081.It
1082The current working directory changes.
1083.It
1084The target's meta file is missing.
1085.It
1086The target's meta file is missing filemon data when filemon is loaded
1087and a previous run did not have it loaded.
1088.It
1089[requires
1090.Xr filemon 4 ]
1091Files read, executed or linked to are newer than the target.
1092.It
1093[requires
1094.Xr filemon 4 ]
1095Files read, written, executed or linked are missing.
1096.El
1097The meta files can also be useful for debugging.
1098.Pp
1099The build hides commands that are executed unless
1100.Va NO_SILENT
1101is defined.
1102Errors cause
1103.Xr make 1
1104to show some of its environment for further debugging.
1105.Pp
1106The build operates as it normally would otherwise.
1107This option originally invoked a different build system but that was renamed
1108to
1109.Va WITH_DIRDEPS_BUILD .
1110.Pp
1111This must be set in the environment, make command line, or
1112.Pa /etc/src-env.conf ,
1113not
1114.Pa /etc/src.conf .
1115.It Va WITH_NAND
1116Set to build the NAND Flash components.
1117.It Va WITHOUT_NDIS
1118Set to not build programs and libraries
1119related to NDIS emulation support.
1120.It Va WITHOUT_NETCAT
1121Set to not build
1122.Xr nc 1
1123utility.
1124.It Va WITHOUT_NETGRAPH
1125Set to not build applications to support
1126.Xr netgraph 4 .
1127When set, it enforces these options:
1128.Pp
1129.Bl -item -compact
1130.It
1131.Va WITHOUT_ATM
1132.It
1133.Va WITHOUT_BLUETOOTH
1134.It
1135.Va WITHOUT_NETGRAPH_SUPPORT
1136.El
1137.It Va WITHOUT_NETGRAPH_SUPPORT
1138Set to build libraries, programs, and kernel modules without netgraph support.
1139.It Va WITHOUT_NIS
1140Set to not build
1141.Xr NIS 8
1142support and related programs.
1143If set, you might need to adopt your
1144.Xr nsswitch.conf 5
1145and remove
1146.Sq nis
1147entries.
1148.It Va WITHOUT_NLS
1149Set to not build NLS catalogs.
1150.It Va WITHOUT_NLS_CATALOGS
1151Set to not build NLS catalog support for
1152.Xr csh 1 .
1153.It Va WITHOUT_NS_CACHING
1154Set to disable name caching in the
1155.Pa nsswitch
1156subsystem.
1157The generic caching daemon,
1158.Xr nscd 8 ,
1159will not be built either if this option is set.
1160.It Va WITHOUT_NTP
1161Set to not build
1162.Xr ntpd 8
1163and related programs.
1164.It Va WITH_OFED
1165Set to build the
1166.Dq "OpenFabrics Enterprise Distribution"
1167Infiniband software stack.
1168.It Va WITH_OPENLDAP
1169Enable building openldap support for kerberos.
1170.It Va WITHOUT_OPENSSH
1171Set to not build OpenSSH.
1172.It Va WITHOUT_OPENSSL
1173Set to not build OpenSSL.
1174When set, it enforces these options:
1175.Pp
1176.Bl -item -compact
1177.It
1178.Va WITHOUT_KERBEROS
1179.It
1180.Va WITHOUT_KERBEROS_SUPPORT
1181.It
1182.Va WITHOUT_OPENSSH
1183.El
1184.Pp
1185When set, these options are also in effect:
1186.Pp
1187.Bl -inset -compact
1188.It Va WITHOUT_GSSAPI
1189(unless
1190.Va WITH_GSSAPI
1191is set explicitly)
1192.El
1193.It Va WITHOUT_PAM
1194Set to not build PAM library and modules.
1195.Bf -symbolic
1196This option is deprecated and does nothing.
1197.Ef
1198When set, it enforces these options:
1199.Pp
1200.Bl -item -compact
1201.It
1202.Va WITHOUT_PAM_SUPPORT
1203.El
1204.It Va WITHOUT_PAM_SUPPORT
1205Set to build some programs without PAM support, particularly
1206.Xr ftpd 8
1207and
1208.Xr ppp 8 .
1209.It Va WITHOUT_PC_SYSINSTALL
1210Set to not build
1211.Xr pc-sysinstall 8
1212and related programs.
1213.It Va WITHOUT_PF
1214Set to not build PF firewall package.
1215When set, it enforces these options:
1216.Pp
1217.Bl -item -compact
1218.It
1219.Va WITHOUT_AUTHPF
1220.El
1221.It Va WITHOUT_PKGBOOTSTRAP
1222Set to not build
1223.Xr pkg 7
1224bootstrap tool.
1225.It Va WITHOUT_PMC
1226Set to not build
1227.Xr pmccontrol 8
1228and related programs.
1229.It Va WITHOUT_PORTSNAP
1230Set to not build or install
1231.Xr portsnap 8
1232and related files.
1233.It Va WITHOUT_PPP
1234Set to not build
1235.Xr ppp 8
1236and related programs.
1237.It Va WITHOUT_PROFILE
1238Set to not build profiled libraries for use with
1239.Xr gprof 8 .
1240.Pp
1241This is a default setting on
1242riscv/riscv64 and riscv/riscv64sf.
1243.It Va WITH_PROFILE
1244Set to build profiled libraries for use with
1245.Xr gprof 8 .
1246.Pp
1247This is a default setting on
1248amd64/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.
1249.It Va WITHOUT_QUOTAS
1250Set to not build
1251.Xr quota 1
1252and related programs.
1253.It Va WITHOUT_RADIUS_SUPPORT
1254Set to not build radius support into various applications, like
1255.Xr pam_radius 8
1256and
1257.Xr ppp 8 .
1258.It Va WITH_RATELIMIT
1259Set to build the system with rate limit support.
1260.Pp
1261This makes
1262.Dv SO_MAX_PACING_RATE
1263effective in
1264.Xr getsockopt 2 ,
1265and
1266.Ar txrlimit
1267support in
1268.Xr ifconfig 8 ,
1269by proxy.
1270.It Va WITHOUT_RBOOTD
1271Set to not build or install
1272.Xr rbootd 8 .
1273.It Va WITHOUT_RCMDS
1274Disable building of the
1275.Bx
1276r-commands.
1277This includes
1278.Xr rlogin 1 ,
1279.Xr rsh 1 ,
1280etc.
1281.It Va WITH_REPRODUCIBLE_BUILD
1282Set to exclude build metadata (such as the build time, user, or host)
1283from the kernel, boot loaders, and uname output, so that builds produce
1284bit-for-bit identical output.
1285.It Va WITHOUT_RESCUE
1286Set to not build
1287.Xr rescue 8 .
1288.It Va WITHOUT_ROUTED
1289Set to not build
1290.Xr routed 8
1291utility.
1292.It Va WITH_RPCBIND_WARMSTART_SUPPORT
1293Set to build
1294.Xr rpcbind 8
1295with warmstart support.
1296.It Va WITHOUT_SENDMAIL
1297Set to not build
1298.Xr sendmail 8
1299and related programs.
1300.It Va WITHOUT_SETUID_LOGIN
1301Set this to disable the installation of
1302.Xr login 1
1303as a set-user-ID root program.
1304.It Va WITHOUT_SHAREDOCS
1305Set to not build the
1306.Bx 4.4
1307legacy docs.
1308.It Va WITH_SHARED_TOOLCHAIN
1309Set to build the toolchain binaries shared.
1310The set includes
1311.Xr cc 1 ,
1312.Xr make 1
1313and necessary utilities like assembler, linker and library archive manager.
1314.It Va WITH_SORT_THREADS
1315Set to enable threads in
1316.Xr sort 1 .
1317.It Va WITHOUT_SOURCELESS
1318Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
1319When set, it enforces these options:
1320.Pp
1321.Bl -item -compact
1322.It
1323.Va WITHOUT_SOURCELESS_HOST
1324.It
1325.Va WITHOUT_SOURCELESS_UCODE
1326.El
1327.It Va WITHOUT_SOURCELESS_HOST
1328Set to not build kernel modules that include sourceless native code for host CPU.
1329.It Va WITHOUT_SOURCELESS_UCODE
1330Set to not build kernel modules that include sourceless microcode.
1331.It Va WITHOUT_SSP
1332Set to not build world with propolice stack smashing protection.
1333.Pp
1334This is a default setting on
1335mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1336.It Va WITH_SSP
1337Set to build world with propolice stack smashing protection.
1338.Pp
1339This is a default setting on
1340amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64.
1341.It Va WITH_STAGING
1342Enable staging of files to a stage tree.
1343This can be best thought of as auto-install to
1344.Va DESTDIR
1345with some extra meta data to ensure dependencies can be tracked.
1346Depends on
1347.Va WITH_DIRDEPS_BUILD .
1348When set, these options are also in effect:
1349.Pp
1350.Bl -inset -compact
1351.It Va WITH_STAGING_MAN
1352(unless
1353.Va WITHOUT_STAGING_MAN
1354is set explicitly)
1355.It Va WITH_STAGING_PROG
1356(unless
1357.Va WITHOUT_STAGING_PROG
1358is set explicitly)
1359.El
1360.Pp
1361This must be set in the environment, make command line, or
1362.Pa /etc/src-env.conf ,
1363not
1364.Pa /etc/src.conf .
1365.It Va WITH_STAGING_MAN
1366Enable staging of man pages to stage tree.
1367.It Va WITH_STAGING_PROG
1368Enable staging of PROGs to stage tree.
1369.It Va WITH_STALE_STAGED
1370Check staged files are not stale.
1371.It Va WITH_SVN
1372Set to install
1373.Xr svnlite 1
1374as
1375.Xr svn 1 .
1376.It Va WITHOUT_SVNLITE
1377Set to not build
1378.Xr svnlite 1
1379and related programs.
1380.It Va WITHOUT_SYMVER
1381Set to disable symbol versioning when building shared libraries.
1382.It Va WITHOUT_SYSCONS
1383Set to not build
1384.Xr syscons 4
1385support files such as keyboard maps, fonts, and screen output maps.
1386.It Va WITH_SYSROOT
1387Enable use of sysroot during build.
1388Depends on
1389.Va WITH_DIRDEPS_BUILD .
1390.Pp
1391This must be set in the environment, make command line, or
1392.Pa /etc/src-env.conf ,
1393not
1394.Pa /etc/src.conf .
1395.It Va WITHOUT_SYSTEM_COMPILER
1396Set to not opportunistically skip building a cross-compiler during the
1397bootstrap phase of the build.
1398Normally, if the currently installed compiler matches the planned bootstrap
1399compiler type and revision, then it will not be built.
1400This does not prevent a compiler from being built for installation though,
1401only for building one for the build itself.
1402The
1403.Va WITHOUT_CLANG
1404and
1405.Va WITHOUT_GCC
1406options control those.
1407.It Va WITHOUT_TALK
1408Set to not build or install
1409.Xr talk 1
1410and
1411.Xr talkd 8 .
1412.It Va WITHOUT_TCP_WRAPPERS
1413Set to not build or install
1414.Xr tcpd 8 ,
1415and related utilities.
1416.It Va WITHOUT_TCSH
1417Set to not build and install
1418.Pa /bin/csh
1419(which is
1420.Xr tcsh 1 ) .
1421.It Va WITHOUT_TELNET
1422Set to not build
1423.Xr telnet 1
1424and related programs.
1425.It Va WITHOUT_TESTS
1426Set to not build nor install the
1427.Fx
1428Test Suite in
1429.Pa /usr/tests/ .
1430See
1431.Xr tests 7
1432for more details.
1433This also disables the build of all test-related dependencies, including ATF.
1434.Pp
1435This is a default setting on
1436riscv/riscv64 and riscv/riscv64sf.
1437When set, it enforces these options:
1438.Pp
1439.Bl -item -compact
1440.It
1441.Va WITHOUT_DTRACE_TESTS
1442.It
1443.Va WITHOUT_TESTS_SUPPORT
1444.El
1445.It Va WITHOUT_TESTS_SUPPORT
1446Set to disables the build of all test-related dependencies, including ATF.
1447.Pp
1448This is a default setting on
1449riscv/riscv64 and riscv/riscv64sf.
1450.It Va WITHOUT_TEXTPROC
1451Set to not build
1452programs used for text processing.
1453.It Va WITHOUT_TFTP
1454Set to not build or install
1455.Xr tftp 1
1456and
1457.Xr tftpd 8 .
1458.It Va WITHOUT_TIMED
1459Set to not build or install
1460.Xr timed 8 .
1461.It Va WITHOUT_TOOLCHAIN
1462Set to not install header or
1463programs used for program development,
1464compilers, debuggers etc.
1465When set, it enforces these options:
1466.Pp
1467.Bl -item -compact
1468.It
1469.Va WITHOUT_BINUTILS
1470.It
1471.Va WITHOUT_CLANG
1472.It
1473.Va WITHOUT_CLANG_EXTRAS
1474.It
1475.Va WITHOUT_CLANG_FULL
1476.It
1477.Va WITHOUT_GCC
1478.It
1479.Va WITHOUT_GDB
1480.It
1481.Va WITHOUT_INCLUDES
1482.It
1483.Va WITHOUT_LLD
1484.It
1485.Va WITHOUT_LLDB
1486.El
1487.It Va WITHOUT_UNBOUND
1488Set to not build
1489.Xr unbound 8
1490and related programs.
1491.It Va WITHOUT_USB
1492Set to not build USB-related programs and libraries.
1493.It Va WITHOUT_USB_GADGET_EXAMPLES
1494Set to not build USB gadget kernel modules.
1495.It Va WITHOUT_UTMPX
1496Set to not build user accounting tools such as
1497.Xr last 1 ,
1498.Xr users 1 ,
1499.Xr who 1 ,
1500.Xr ac 8 ,
1501.Xr lastlogin 8
1502and
1503.Xr utx 8 .
1504.It Va WITHOUT_VI
1505Set to not build and install vi, view, ex and related programs.
1506.It Va WITHOUT_VT
1507Set to not build
1508.Xr vt 4
1509support files (fonts and keymaps).
1510.It Va WITHOUT_WARNS
1511Set this to not add warning flags to the compiler invocations.
1512Useful as a temporary workaround when code enters the tree
1513which triggers warnings in environments that differ from the
1514original developer.
1515.It Va WITHOUT_WIRELESS
1516Set to not build programs used for 802.11 wireless networks; especially
1517.Xr wpa_supplicant 8
1518and
1519.Xr hostapd 8 .
1520When set, it enforces these options:
1521.Pp
1522.Bl -item -compact
1523.It
1524.Va WITHOUT_WIRELESS_SUPPORT
1525.El
1526.It Va WITHOUT_WIRELESS_SUPPORT
1527Set to build libraries, programs, and kernel modules without
1528802.11 wireless support.
1529.It Va WITHOUT_WPA_SUPPLICANT_EAPOL
1530Build
1531.Xr wpa_supplicant 8
1532without support for the IEEE 802.1X protocol and without
1533support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS
1534protocols (usable only via 802.1X).
1535.It Va WITHOUT_ZFS
1536Set to not build ZFS file system.
1537.It Va WITHOUT_ZONEINFO
1538Set to not build the timezone database.
1539.El
1540.Sh FILES
1541.Bl -tag -compact -width Pa
1542.It Pa /etc/src.conf
1543.It Pa /etc/src-env.conf
1544.It Pa /usr/share/mk/bsd.own.mk
1545.El
1546.Sh SEE ALSO
1547.Xr make 1 ,
1548.Xr make.conf 5 ,
1549.Xr build 7 ,
1550.Xr ports 7
1551.Sh HISTORY
1552The
1553.Nm
1554file appeared in
1555.Fx 7.0 .
1556.Sh AUTHORS
1557This manual page was autogenerated by
1558.An tools/build/options/makeman .
1559