xref: /freebsd/share/man/man5/src.conf.5 (revision e12ff891366cf94db4bfe4c2c810b26a5531053d)
1.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman.
2.\" $FreeBSD$
3.Dd September 17, 2019
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 ,
77and
78.Va MAKEOBJDIRPREFIX
79as they are environment-only variables.
80.Pp
81The values of variables are ignored regardless of their setting;
82even if they would be set to
83.Dq Li FALSE
84or
85.Dq Li NO .
86The presence of an option causes
87it to be honored by
88.Xr make 1 .
89.Pp
90This list provides a name and short description for variables
91that can be used for source builds.
92.Bl -tag -width indent
93.It Va WITHOUT_ACCT
94Set to not build process accounting tools such as
95.Xr accton 8
96and
97.Xr sa 8 .
98.It Va WITHOUT_ACPI
99Set to not build
100.Xr acpiconf 8 ,
101.Xr acpidump 8
102and related programs.
103.It Va WITHOUT_AMD
104Set to not build
105.Xr amd 8 ,
106and related programs.
107.It Va WITHOUT_APM
108Set to not build
109.Xr apm 8 ,
110.Xr apmd 8
111and related programs.
112.It Va WITHOUT_ASSERT_DEBUG
113Set to compile programs and libraries without the
114.Xr assert 3
115checks.
116.It Va WITHOUT_AT
117Set to not build
118.Xr at 1
119and related utilities.
120.It Va WITHOUT_ATM
121Set to not build
122programs and libraries related to ATM networking.
123.It Va WITHOUT_AUDIT
124Set to not build audit support into system programs.
125.It Va WITHOUT_AUTHPF
126Set to not build
127.Xr authpf 8 .
128.It Va WITHOUT_AUTOFS
129Set to not build
130.Xr autofs 5
131related programs, libraries, and kernel modules.
132.It Va WITHOUT_AUTO_OBJ
133Disable automatic creation of objdirs.
134This is enabled by default if the wanted OBJDIR is writable by the current user.
135.Pp
136This must be set in the environment, make command line, or
137.Pa /etc/src-env.conf ,
138not
139.Pa /etc/src.conf .
140.It Va WITH_BEARSSL
141Build the BearSSL library.
142.Pp
143BearSSL is a tiny SSL library suitable for embedded environments.
144For details see
145.Lk http://www.BearSSL.org/
146.Pp
147This library is currently only used to perform
148signature verification and related operations
149for Verified Exec and
150.Xr loader 8 .
151When set, these options are also in effect:
152.Pp
153.Bl -inset -compact
154.It Va WITH_LOADER_EFI_SECUREBOOT
155(unless
156.Va WITHOUT_LOADER_EFI_SECUREBOOT
157is set explicitly)
158.It Va WITH_LOADER_VERIEXEC
159(unless
160.Va WITHOUT_LOADER_VERIEXEC
161is set explicitly)
162.It Va WITH_VERIEXEC
163(unless
164.Va WITHOUT_VERIEXEC
165is set explicitly)
166.El
167.It Va WITHOUT_BHYVE
168Set to not build or install
169.Xr bhyve 8 ,
170associated utilities, and examples.
171.Pp
172This option only affects amd64/amd64.
173.It Va WITH_BIND_NOW
174Build all binaries with the
175.Dv DF_BIND_NOW
176flag set to indicate that the run-time loader should perform all relocation
177processing at process startup rather than on demand.
178.It Va WITHOUT_BINUTILS
179Set to not build or install GNU
180.Xr as 1 ,
181.Xr objdump 1 ,
182and for some CPU architectures
183.Xr ld.bfd 1
184as part
185of the normal system build.
186The resulting system cannot build programs from source.
187.Pp
188This is a default setting on
189arm64/aarch64 and riscv/riscv64.
190.It Va WITH_BINUTILS
191Set to build and install GNU
192.Xr as 1 ,
193.Xr objdump 1 ,
194and for some CPU architectures
195.Xr ld.bfd 1
196as part
197of the normal system build.
198.Pp
199This is a default setting on
200amd64/amd64, arm/arm, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
201.It Va WITHOUT_BINUTILS_BOOTSTRAP
202Set to not build binutils (as, ld, and objdump)
203as part of the bootstrap process.
204.Bf -symbolic
205The option does not work for build targets unless some alternative
206toolchain is provided.
207.Ef
208.Pp
209This is a default setting on
210arm64/aarch64 and riscv/riscv64.
211.It Va WITH_BINUTILS_BOOTSTRAP
212Set build binutils (as, ld, and objdump)
213as part of the bootstrap process.
214.Pp
215This is a default setting on
216amd64/amd64, arm/arm, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
217.It Va WITHOUT_BLACKLIST
218Set this if you do not want to build
219.Xr blacklistd 8
220and
221.Xr blacklistctl 8 .
222When set, these options are also in effect:
223.Pp
224.Bl -inset -compact
225.It Va WITHOUT_BLACKLIST_SUPPORT
226(unless
227.Va WITH_BLACKLIST_SUPPORT
228is set explicitly)
229.El
230.It Va WITHOUT_BLACKLIST_SUPPORT
231Set to build some programs without
232.Xr libblacklist 3
233support, like
234.Xr fingerd 8 ,
235.Xr ftpd 8 ,
236and
237.Xr sshd 8 .
238.It Va WITHOUT_BLUETOOTH
239Set to not build Bluetooth related kernel modules, programs and libraries.
240.It Va WITHOUT_BOOT
241Set to not build the boot blocks and loader.
242.It Va WITHOUT_BOOTPARAMD
243Set to not build or install
244.Xr bootparamd 8 .
245.It Va WITHOUT_BOOTPD
246Set to not build or install
247.Xr bootpd 8 .
248.It Va WITHOUT_BSDINSTALL
249Set to not build
250.Xr bsdinstall 8 ,
251.Xr sade 8 ,
252and related programs.
253.It Va WITHOUT_BSD_CPIO
254Set to not build the BSD licensed version of cpio based on
255.Xr libarchive 3 .
256.It Va WITHOUT_BSD_CRTBEGIN
257Disable the BSD licensed
258.Pa crtbegin.o
259and
260.Pa crtend.o .
261.Pp
262This is a default setting on
263sparc64/sparc64.
264.It Va WITH_BSD_CRTBEGIN
265Enable the BSD licensed
266.Pa crtbegin.o
267and
268.Pa crtend.o .
269.Pp
270This is a default setting on
271amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and riscv/riscv64.
272.It Va WITH_BSD_GREP
273Install BSD-licensed grep as '[ef]grep' instead of GNU grep.
274.It Va WITHOUT_BSNMP
275Set to not build or install
276.Xr bsnmpd 1
277and related libraries and data files.
278.It Va WITHOUT_BZIP2
279Set to not build contributed bzip2 software as a part of the base system.
280.Bf -symbolic
281The option has no effect yet.
282.Ef
283When set, these options are also in effect:
284.Pp
285.Bl -inset -compact
286.It Va WITHOUT_BZIP2_SUPPORT
287(unless
288.Va WITH_BZIP2_SUPPORT
289is set explicitly)
290.El
291.It Va WITHOUT_BZIP2_SUPPORT
292Set to build some programs without optional bzip2 support.
293.It Va WITHOUT_CALENDAR
294Set to not build
295.Xr calendar 1 .
296.It Va WITHOUT_CAPSICUM
297Set to not build Capsicum support into system programs.
298When set, it enforces these options:
299.Pp
300.Bl -item -compact
301.It
302.Va WITHOUT_CASPER
303.El
304.It Va WITHOUT_CASPER
305Set to not build Casper program and related libraries.
306.It Va WITH_CCACHE_BUILD
307Set to use
308.Xr ccache 1
309for the build.
310No configuration is required except to install the
311.Sy devel/ccache
312package.
313When using with
314.Xr distcc 1 ,
315set
316.Sy CCACHE_PREFIX=/usr/local/bin/distcc .
317The default cache directory of
318.Pa $HOME/.ccache
319will be used, which can be overridden by setting
320.Sy CCACHE_DIR .
321The
322.Sy CCACHE_COMPILERCHECK
323option defaults to
324.Sy content
325when using the in-tree bootstrap compiler,
326and
327.Sy mtime
328when using an external compiler.
329The
330.Sy CCACHE_CPP2
331option is used for Clang but not GCC.
332.Pp
333Sharing a cache between multiple work directories requires using a layout
334similar to
335.Pa /some/prefix/src
336.Pa /some/prefix/obj
337and an environment such as:
338.Bd -literal -offset indent
339CCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj'
340.Ed
341.Pp
342See
343.Xr ccache 1
344for more configuration options.
345.It Va WITHOUT_CCD
346Set to not build
347.Xr geom_ccd 4
348and related utilities.
349.It Va WITHOUT_CDDL
350Set to not build code licensed under Sun's CDDL.
351When set, it enforces these options:
352.Pp
353.Bl -item -compact
354.It
355.Va WITHOUT_CTF
356.It
357.Va WITHOUT_LOADER_ZFS
358.It
359.Va WITHOUT_ZFS
360.El
361.It Va WITHOUT_CLANG
362Set to not build the Clang C/C++ compiler during the regular phase of the build.
363.Pp
364This is a default setting on
365riscv/riscv64 and sparc64/sparc64.
366When set, it enforces these options:
367.Pp
368.Bl -item -compact
369.It
370.Va WITHOUT_CLANG_EXTRAS
371.It
372.Va WITHOUT_CLANG_FULL
373.It
374.Va WITHOUT_LLVM_COV
375.El
376.Pp
377When set, these options are also in effect:
378.Pp
379.Bl -inset -compact
380.It Va WITHOUT_LLVM_TARGET_AARCH64
381(unless
382.Va WITH_LLVM_TARGET_AARCH64
383is set explicitly)
384.It Va WITHOUT_LLVM_TARGET_ALL
385(unless
386.Va WITH_LLVM_TARGET_ALL
387is set explicitly)
388.It Va WITHOUT_LLVM_TARGET_ARM
389(unless
390.Va WITH_LLVM_TARGET_ARM
391is set explicitly)
392.It Va WITHOUT_LLVM_TARGET_MIPS
393(unless
394.Va WITH_LLVM_TARGET_MIPS
395is set explicitly)
396.It Va WITHOUT_LLVM_TARGET_POWERPC
397(unless
398.Va WITH_LLVM_TARGET_POWERPC
399is set explicitly)
400.It Va WITHOUT_LLVM_TARGET_SPARC
401(unless
402.Va WITH_LLVM_TARGET_SPARC
403is set explicitly)
404.It Va WITHOUT_LLVM_TARGET_X86
405(unless
406.Va WITH_LLVM_TARGET_X86
407is set explicitly)
408.El
409.It Va WITH_CLANG
410Set to build the Clang C/C++ compiler during the normal phase of the build.
411.Pp
412This is a default setting on
413amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
414.It Va WITHOUT_CLANG_BOOTSTRAP
415Set to not build the Clang C/C++ compiler during the bootstrap phase of
416the build.
417To be able to build the system, either gcc or clang bootstrap must be
418enabled unless an alternate compiler is provided via XCC.
419.Pp
420This is a default setting on
421mips/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 sparc64/sparc64.
422.It Va WITH_CLANG_BOOTSTRAP
423Set to build the Clang C/C++ compiler during the bootstrap phase of the build.
424.Pp
425This is a default setting on
426amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
427.It Va WITH_CLANG_EXTRAS
428Set to build additional clang and llvm tools, such as bugpoint and
429clang-format.
430.It Va WITHOUT_CLANG_FULL
431Set to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
432the Clang C/C++ compiler.
433.Pp
434This is a default setting on
435riscv/riscv64 and sparc64/sparc64.
436.It Va WITH_CLANG_FULL
437Set to build the ARCMigrate, Rewriter and StaticAnalyzer components of the
438Clang C/C++ compiler.
439.Pp
440This is a default setting on
441amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
442.It Va WITHOUT_CLANG_IS_CC
443Set to install the GCC compiler as
444.Pa /usr/bin/cc ,
445.Pa /usr/bin/c++
446and
447.Pa /usr/bin/cpp .
448.Pp
449This is a default setting on
450mips/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 sparc64/sparc64.
451.It Va WITH_CLANG_IS_CC
452Set to install the Clang C/C++ compiler as
453.Pa /usr/bin/cc ,
454.Pa /usr/bin/c++
455and
456.Pa /usr/bin/cpp .
457.Pp
458This is a default setting on
459amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
460.It Va WITHOUT_CPP
461Set to not build
462.Xr cpp 1 .
463.It Va WITHOUT_CROSS_COMPILER
464Set to not build any cross compiler in the cross-tools stage of buildworld.
465When compiling a different version of
466.Fx
467than what is installed on the system, provide an alternate
468compiler with XCC to ensure success.
469When compiling with an identical version of
470.Fx
471to the host, this option may be safely used.
472This option may also be safe when the host version of
473.Fx
474is close to the sources being built, but all bets are off if there have
475been any changes to the toolchain between the versions.
476When set, it enforces these options:
477.Pp
478.Bl -item -compact
479.It
480.Va WITHOUT_BINUTILS_BOOTSTRAP
481.It
482.Va WITHOUT_CLANG_BOOTSTRAP
483.It
484.Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
485.It
486.Va WITHOUT_GCC_BOOTSTRAP
487.It
488.Va WITHOUT_LLD_BOOTSTRAP
489.El
490.It Va WITHOUT_CRYPT
491Set to not build any crypto code.
492When set, it enforces these options:
493.Pp
494.Bl -item -compact
495.It
496.Va WITHOUT_KERBEROS
497.It
498.Va WITHOUT_OPENSSH
499.It
500.Va WITHOUT_OPENSSL
501.El
502.Pp
503When set, these options are also in effect:
504.Pp
505.Bl -inset -compact
506.It Va WITHOUT_GSSAPI
507(unless
508.Va WITH_GSSAPI
509is set explicitly)
510.El
511.It Va WITH_CTF
512Set to compile with CTF (Compact C Type Format) data.
513CTF data encapsulates a reduced form of debugging information
514similar to DWARF and the venerable stabs and is required for DTrace.
515.It Va WITHOUT_CUSE
516Set to not build CUSE-related programs and libraries.
517.It Va WITHOUT_CXGBETOOL
518Set to not build
519.Xr cxgbetool 8
520.Pp
521This is a default setting on
522arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpcspe and riscv/riscv64.
523.It Va WITH_CXGBETOOL
524Set to build
525.Xr cxgbetool 8
526.Pp
527This is a default setting on
528amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and sparc64/sparc64.
529.It Va WITHOUT_CXX
530Set to not build
531.Xr c++ 1
532and related libraries.
533It will also prevent building of
534.Xr gperf 1
535and
536.Xr devd 8 .
537When set, it enforces these options:
538.Pp
539.Bl -item -compact
540.It
541.Va WITHOUT_CLANG
542.It
543.Va WITHOUT_CLANG_EXTRAS
544.It
545.Va WITHOUT_CLANG_FULL
546.It
547.Va WITHOUT_DTRACE_TESTS
548.It
549.Va WITHOUT_GNUCXX
550.It
551.Va WITHOUT_LLVM_COV
552.It
553.Va WITHOUT_TESTS
554.El
555.It Va WITHOUT_DEBUG_FILES
556Set to avoid building or installing standalone debug files for each
557executable binary and shared library.
558.It Va WITHOUT_DIALOG
559Set to not build
560.Xr dialog 1 ,
561.Xr dialog 3 ,
562.Xr dpv 1 ,
563and
564.Xr dpv 3 .
565When set, it enforces these options:
566.Pp
567.Bl -item -compact
568.It
569.Va WITHOUT_BSDINSTALL
570.El
571.It Va WITHOUT_DICT
572Set to not build the Webster dictionary files.
573.It Va WITH_DIRDEPS_BUILD
574This is an experimental build system.
575For details see
576http://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
577Build commands can be seen from the top-level with:
578.Dl make show-valid-targets
579The build is driven by dirdeps.mk using
580.Va DIRDEPS
581stored in
582Makefile.depend files found in each directory.
583.Pp
584The build can be started from anywhere, and behaves the same.
585The initial instance of
586.Xr make 1
587recursively reads
588.Va DIRDEPS
589from
590.Pa Makefile.depend ,
591computing a graph of tree dependencies from the current origin.
592Setting
593.Va NO_DIRDEPS
594skips checking dirdep dependencies and will only build in the current
595and child directories.
596.Va NO_DIRDEPS_BELOW
597skips building any dirdeps and only build the current directory.
598.Pp
599This also utilizes the
600.Va WITH_META_MODE
601logic for incremental builds.
602.Pp
603The build hides commands executed unless
604.Va NO_SILENT
605is defined.
606.Pp
607Note that there is currently no mass install feature for this.
608.Pp
609When set, it enforces these options:
610.Pp
611.Bl -item -compact
612.It
613.Va WITH_INSTALL_AS_USER
614.El
615.Pp
616When set, these options are also in effect:
617.Pp
618.Bl -inset -compact
619.It Va WITH_META_MODE
620(unless
621.Va WITHOUT_META_MODE
622is set explicitly)
623.It Va WITH_STAGING
624(unless
625.Va WITHOUT_STAGING
626is set explicitly)
627.It Va WITH_STAGING_MAN
628(unless
629.Va WITHOUT_STAGING_MAN
630is set explicitly)
631.It Va WITH_STAGING_PROG
632(unless
633.Va WITHOUT_STAGING_PROG
634is set explicitly)
635.It Va WITH_SYSROOT
636(unless
637.Va WITHOUT_SYSROOT
638is set explicitly)
639.El
640.Pp
641This must be set in the environment, make command line, or
642.Pa /etc/src-env.conf ,
643not
644.Pa /etc/src.conf .
645.It Va WITH_DIRDEPS_CACHE
646Cache result of dirdeps.mk which can save significant time
647for subsequent builds.
648Depends on
649.Va WITH_DIRDEPS_BUILD .
650.Pp
651This must be set in the environment, make command line, or
652.Pa /etc/src-env.conf ,
653not
654.Pa /etc/src.conf .
655.It Va WITHOUT_DMAGENT
656Set to not build dma Mail Transport Agent.
657.It Va WITHOUT_DOCCOMPRESS
658Set to not install compressed system documentation.
659Only the uncompressed version will be installed.
660.It Va WITH_DTRACE_TESTS
661Set to build and install the DTrace test suite in
662.Pa /usr/tests/cddl/usr.sbin/dtrace .
663This test suite is considered experimental on architectures other than
664amd64/amd64 and running it may cause system instability.
665.It Va WITHOUT_DYNAMICROOT
666Set this if you do not want to link
667.Pa /bin
668and
669.Pa /sbin
670dynamically.
671.It Va WITHOUT_EE
672Set to not build and install
673.Xr edit 1 ,
674.Xr ee 1 ,
675and related programs.
676.It Va WITHOUT_EFI
677Set not to build
678.Xr efivar 3
679and
680.Xr efivar 8 .
681.Pp
682This is a default setting on
683mips/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 sparc64/sparc64.
684.It Va WITH_EFI
685Set to build
686.Xr efivar 3
687and
688.Xr efivar 8 .
689.Pp
690This is a default setting on
691amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
692.It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
693Set to not build ELF Tool Chain tools
694(addr2line, nm, size, strings and strip)
695as part of the bootstrap process.
696.Bf -symbolic
697An alternate bootstrap tool chain must be provided.
698.Ef
699.It Va WITHOUT_EXAMPLES
700Set to avoid installing examples to
701.Pa /usr/share/examples/ .
702.It Va WITH_EXPERIMENTAL
703Set to include experimental features in the build.
704.It Va WITH_EXTRA_TCP_STACKS
705Set to build extra TCP stack modules.
706.It Va WITHOUT_FDT
707Set to not build Flattened Device Tree support as part of the base system.
708This includes the device tree compiler (dtc) and libfdt support library.
709.It Va WITHOUT_FILE
710Set to not build
711.Xr file 1
712and related programs.
713.It Va WITHOUT_FINGER
714Set to not build or install
715.Xr finger 1
716and
717.Xr fingerd 8 .
718.It Va WITHOUT_FLOPPY
719Set to not build or install programs
720for operating floppy disk driver.
721.It Va WITHOUT_FMTREE
722Set to not build and install
723.Pa /usr/sbin/fmtree .
724.It Va WITHOUT_FORMAT_EXTENSIONS
725Set to not enable
726.Fl fformat-extensions
727when compiling the kernel.
728Also disables all format checking.
729.It Va WITHOUT_FORTH
730Set to build bootloaders without Forth support.
731.It Va WITHOUT_FP_LIBC
732Set to build
733.Nm libc
734without floating-point support.
735.It Va WITHOUT_FREEBSD_UPDATE
736Set to not build
737.Xr freebsd-update 8 .
738.It Va WITHOUT_FTP
739Set to not build or install
740.Xr ftp 1
741and
742.Xr ftpd 8 .
743.It Va WITHOUT_GAMES
744Set to not build games.
745.It Va WITHOUT_GCC
746Set to not build and install gcc and g++ as part of the normal build process.
747.Pp
748This is a default setting on
749amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64.
750.It Va WITH_GCC
751Set to build and install gcc and g++.
752.Pp
753This is a default setting on
754mips/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.
755.It Va WITHOUT_GCC_BOOTSTRAP
756Set to not build gcc and g++ as part of the bootstrap process.
757You must enable either gcc or clang bootstrap to be able to build the system,
758unless an alternative compiler is provided via
759XCC.
760.Pp
761This is a default setting on
762amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64.
763.It Va WITH_GCC_BOOTSTRAP
764Set to build gcc and g++ as part of the bootstrap process.
765.Pp
766This is a default setting on
767mips/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.
768.It Va WITHOUT_GCOV
769Set to not build the
770.Xr gcov 1
771tool.
772.It Va WITHOUT_GDB
773Set to not build
774.Xr gdb 1 .
775.Pp
776This is a default setting on
777arm64/aarch64 and riscv/riscv64.
778.It Va WITH_GDB
779Set to build
780.Xr gdb 1 .
781.Pp
782This is a default setting on
783amd64/amd64, arm/arm, arm/armv6, arm/armv7, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
784.It Va WITHOUT_GDB_LIBEXEC
785Set to install
786.Xr gdb 1
787into
788.Pa /usr/bin .
789.Pp
790This is a default setting on
791sparc64/sparc64.
792.It Va WITH_GDB_LIBEXEC
793Set to install
794.Xr gdb 1
795into
796.Pa /usr/libexec .
797This permits
798.Xr gdb 1
799to be used as a fallback for
800.Xr crashinfo 8
801if a newer version is not installed.
802.Pp
803This is a default setting on
804amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and riscv/riscv64.
805.It Va WITHOUT_GNUCXX
806Do not build the GNU C++ stack (g++, libstdc++).
807This is the default on platforms where clang is the system compiler.
808.Pp
809This is a default setting on
810amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
811.It Va WITH_GNUCXX
812Build the GNU C++ stack (g++, libstdc++).
813This is the default on platforms where gcc is the system compiler.
814.Pp
815This is a default setting on
816mips/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 sparc64/sparc64.
817.It Va WITHOUT_GNU_DIFF
818Set to not build GNU
819.Xr diff 1
820and
821.Xr diff3 1 .
822.It Va WITHOUT_GNU_GREP
823Set to not build GNU
824.Xr grep 1 .
825.It Va WITH_GNU_GREP_COMPAT
826Set this option to include GNU extensions in
827.Xr bsdgrep 1
828by linking against libgnuregex.
829.It Va WITHOUT_GOOGLETEST
830Set to neither build nor install
831.Lb libgmock ,
832.Lb libgtest ,
833and dependent tests.
834.Pp
835This is a default setting on
836mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
837.It Va WITH_GOOGLETEST
838Set to build and install
839.Lb libgmock ,
840.Lb libgtest ,
841and dependent tests.
842.Pp
843This is a default setting on
844amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and sparc64/sparc64.
845.It Va WITHOUT_GPIO
846Set to not build
847.Xr gpioctl 8
848as part of the base system.
849.It Va WITHOUT_GPL_DTC
850Set to build the BSD licensed version of the device tree compiler rather
851than the GPLed one from elinux.org.
852.Pp
853This is a default setting on
854amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64 and i386/i386.
855.It Va WITH_GPL_DTC
856Set to build the GPL'd version of the device tree compiler from elinux.org,
857instead of the BSD licensed one.
858.Pp
859This is a default setting on
860mips/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 sparc64/sparc64.
861.It Va WITHOUT_GSSAPI
862Set to not build libgssapi.
863.It Va WITHOUT_HAST
864Set to not build
865.Xr hastd 8
866and related utilities.
867.It Va WITH_HESIOD
868Set to build Hesiod support.
869.It Va WITHOUT_HTML
870Set to not build HTML docs.
871.It Va WITHOUT_HYPERV
872Set to not build or install HyperV utilities.
873.Pp
874This is a default setting on
875arm/arm, arm/armv6, arm/armv7, arm64/aarch64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and sparc64/sparc64.
876.It Va WITH_HYPERV
877Set to build or install HyperV utilities.
878.Pp
879This is a default setting on
880amd64/amd64 and i386/i386.
881.It Va WITHOUT_ICONV
882Set to not build iconv as part of libc.
883.It Va WITHOUT_INCLUDES
884Set to not install header files.
885This option used to be spelled
886.Va NO_INCS .
887.Bf -symbolic
888The option does not work for build targets.
889.Ef
890.It Va WITHOUT_INET
891Set to not build programs and libraries related to IPv4 networking.
892When set, it enforces these options:
893.Pp
894.Bl -item -compact
895.It
896.Va WITHOUT_INET_SUPPORT
897.El
898.It Va WITHOUT_INET6
899Set to not build
900programs and libraries related to IPv6 networking.
901When set, it enforces these options:
902.Pp
903.Bl -item -compact
904.It
905.Va WITHOUT_INET6_SUPPORT
906.El
907.It Va WITHOUT_INET6_SUPPORT
908Set to build libraries, programs, and kernel modules without IPv6 support.
909.It Va WITHOUT_INETD
910Set to not build
911.Xr inetd 8 .
912.It Va WITHOUT_INET_SUPPORT
913Set to build libraries, programs, and kernel modules without IPv4 support.
914.It Va WITHOUT_INSTALLLIB
915Set this to not install optional libraries.
916For example, when creating a
917.Xr nanobsd 8
918image.
919.Bf -symbolic
920The option does not work for build targets.
921.Ef
922.It Va WITH_INSTALL_AS_USER
923Set to make install targets succeed for non-root users by installing
924files with owner and group attributes set to that of the user running
925the
926.Xr make 1
927command.
928The user still must set the
929.Va DESTDIR
930variable to point to a directory where the user has write permissions.
931.It Va WITHOUT_IPFILTER
932Set to not build IP Filter package.
933.It Va WITHOUT_IPFW
934Set to not build IPFW tools.
935.It Va WITHOUT_IPSEC_SUPPORT
936Set to not build the kernel with
937.Xr ipsec 4
938support.
939This option is needed for
940.Xr ipsec 4
941and
942.Xr tcpmd5 4 .
943.It Va WITHOUT_ISCSI
944Set to not build
945.Xr iscsid 8
946and related utilities.
947.It Va WITHOUT_JAIL
948Set to not build tools for the support of jails; e.g.,
949.Xr jail 8 .
950.It Va WITHOUT_KDUMP
951Set to not build
952.Xr kdump 1
953and
954.Xr truss 1 .
955.It Va WITHOUT_KERBEROS
956Set this to not build Kerberos 5 (KTH Heimdal).
957When set, these options are also in effect:
958.Pp
959.Bl -inset -compact
960.It Va WITHOUT_GSSAPI
961(unless
962.Va WITH_GSSAPI
963is set explicitly)
964.It Va WITHOUT_KERBEROS_SUPPORT
965(unless
966.Va WITH_KERBEROS_SUPPORT
967is set explicitly)
968.El
969.It Va WITHOUT_KERBEROS_SUPPORT
970Set to build some programs without Kerberos support, like
971.Xr ssh 1 ,
972.Xr telnet 1 ,
973.Xr sshd 8 ,
974and
975.Xr telnetd 8 .
976.It Va WITH_KERNEL_RETPOLINE
977Set to enable the "retpoline" mitigation for CVE-2017-5715 in the kernel
978build.
979.It Va WITHOUT_KERNEL_SYMBOLS
980Set to not install kernel symbol files.
981.Bf -symbolic
982This option is recommended for those people who have small root partitions.
983.Ef
984.It Va WITHOUT_KVM
985Set to not build the
986.Nm libkvm
987library as a part of the base system.
988.Bf -symbolic
989The option has no effect yet.
990.Ef
991When set, these options are also in effect:
992.Pp
993.Bl -inset -compact
994.It Va WITHOUT_KVM_SUPPORT
995(unless
996.Va WITH_KVM_SUPPORT
997is set explicitly)
998.El
999.It Va WITHOUT_KVM_SUPPORT
1000Set to build some programs without optional
1001.Nm libkvm
1002support.
1003.It Va WITHOUT_LDNS
1004Setting this variable will prevent the LDNS library from being built.
1005When set, it enforces these options:
1006.Pp
1007.Bl -item -compact
1008.It
1009.Va WITHOUT_LDNS_UTILS
1010.It
1011.Va WITHOUT_UNBOUND
1012.El
1013.It Va WITHOUT_LDNS_UTILS
1014Setting this variable will prevent building the LDNS utilities
1015.Xr drill 1
1016and
1017.Xr host 1 .
1018.It Va WITHOUT_LEGACY_CONSOLE
1019Set to not build programs that support a legacy PC console; e.g.,
1020.Xr kbdcontrol 1
1021and
1022.Xr vidcontrol 1 .
1023.It Va WITHOUT_LIB32
1024On 64-bit platforms, set to not build 32-bit library set and a
1025.Nm ld-elf32.so.1
1026runtime linker.
1027.It Va WITHOUT_LIBCPLUSPLUS
1028Set to avoid building libcxxrt and libc++.
1029.It Va WITHOUT_LIBPTHREAD
1030Set to not build the
1031.Nm libpthread
1032providing library,
1033.Nm libthr .
1034When set, it enforces these options:
1035.Pp
1036.Bl -item -compact
1037.It
1038.Va WITHOUT_LIBTHR
1039.El
1040.It Va WITH_LIBSOFT
1041On armv6 only, set to enable soft float ABI compatibility libraries.
1042This option is for transitioning to the new hard float ABI.
1043.It Va WITHOUT_LIBTHR
1044Set to not build the
1045.Nm libthr
1046(1:1 threading)
1047library.
1048.It Va WITHOUT_LLD
1049Set to not build LLVM's lld linker.
1050.Pp
1051This is a default setting on
1052riscv/riscv64 and sparc64/sparc64.
1053.It Va WITH_LLD
1054Set to build LLVM's lld linker.
1055.Pp
1056This is a default setting on
1057amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
1058.It Va WITHOUT_LLDB
1059Set to not build the LLDB debugger.
1060.Pp
1061This is a default setting on
1062arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and sparc64/sparc64.
1063.It Va WITH_LLDB
1064Set to build the LLDB debugger.
1065.Pp
1066This is a default setting on
1067amd64/amd64, arm64/aarch64 and i386/i386.
1068.It Va WITHOUT_LLD_BOOTSTRAP
1069Set to not build the LLD linker during the bootstrap phase of
1070the build.
1071To be able to build the system, either Binutils or LLD bootstrap must be
1072enabled unless an alternate linker is provided via XLD.
1073.Pp
1074This is a default setting on
1075arm/arm, 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, riscv/riscv64 and sparc64/sparc64.
1076.It Va WITH_LLD_BOOTSTRAP
1077Set to build the LLD linker during the bootstrap phase of the build,
1078and use it during buildworld and buildkernel.
1079.Pp
1080This is a default setting on
1081amd64/amd64, arm/armv7, arm64/aarch64 and i386/i386.
1082.It Va WITHOUT_LLD_IS_LD
1083Set to use GNU binutils ld as the system linker, instead of LLVM's LLD.
1084.Pp
1085This is a default setting on
1086arm/arm, 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, riscv/riscv64 and sparc64/sparc64.
1087.It Va WITH_LLD_IS_LD
1088Set to use LLVM's LLD as the system linker, instead of GNU binutils ld.
1089.Pp
1090This is a default setting on
1091amd64/amd64, arm/armv7, arm64/aarch64 and i386/i386.
1092.It Va WITHOUT_LLVM_COV
1093Set to not build the
1094.Xr llvm-cov 1
1095tool.
1096.Pp
1097This is a default setting on
1098riscv/riscv64 and sparc64/sparc64.
1099.It Va WITH_LLVM_COV
1100Set to build the
1101.Xr llvm-cov 1
1102tool.
1103.Pp
1104This is a default setting on
1105amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
1106.It Va WITHOUT_LLVM_LIBUNWIND
1107Set to use GCC's stack unwinder (instead of LLVM's libunwind).
1108.Pp
1109This is a default setting on
1110arm/arm, arm/armv6, arm/armv7, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1111.It Va WITH_LLVM_LIBUNWIND
1112Set to use LLVM's libunwind stack unwinder (instead of GCC's unwinder).
1113.Pp
1114This is a default setting on
1115amd64/amd64, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and riscv/riscv64.
1116.It Va WITHOUT_LLVM_TARGET_AARCH64
1117Set to not build LLVM target support for AArch64.
1118The
1119.Va LLVM_TARGET_ALL
1120option should be used rather than this in most cases.
1121.Pp
1122This is a default setting on
1123arm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64.
1124.It Va WITH_LLVM_TARGET_AARCH64
1125Set to build LLVM target support for AArch64.
1126The
1127.Va LLVM_TARGET_ALL
1128option should be used rather than this in most cases.
1129.Pp
1130This is a default setting on
1131amd64/amd64, arm/armv7, 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.
1132.It Va WITHOUT_LLVM_TARGET_ALL
1133Set to only build the required LLVM target support.
1134This option is preferred to specific target support options.
1135.Pp
1136This is a default setting on
1137riscv/riscv64 and sparc64/sparc64.
1138When set, these options are also in effect:
1139.Pp
1140.Bl -inset -compact
1141.It Va WITHOUT_LLVM_TARGET_AARCH64
1142(unless
1143.Va WITH_LLVM_TARGET_AARCH64
1144is set explicitly)
1145.It Va WITHOUT_LLVM_TARGET_ARM
1146(unless
1147.Va WITH_LLVM_TARGET_ARM
1148is set explicitly)
1149.It Va WITHOUT_LLVM_TARGET_MIPS
1150(unless
1151.Va WITH_LLVM_TARGET_MIPS
1152is set explicitly)
1153.It Va WITHOUT_LLVM_TARGET_POWERPC
1154(unless
1155.Va WITH_LLVM_TARGET_POWERPC
1156is set explicitly)
1157.It Va WITHOUT_LLVM_TARGET_SPARC
1158(unless
1159.Va WITH_LLVM_TARGET_SPARC
1160is set explicitly)
1161.El
1162.It Va WITH_LLVM_TARGET_ALL
1163Set to build support for all LLVM targets.
1164This option is always applied to the bootstrap compiler for buildworld when
1165LLVM is used.
1166.Pp
1167This is a default setting on
1168amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
1169.It Va WITHOUT_LLVM_TARGET_ARM
1170Set to not build LLVM target support for ARM.
1171The
1172.Va LLVM_TARGET_ALL
1173option should be used rather than this in most cases.
1174.Pp
1175This is a default setting on
1176riscv/riscv64 and sparc64/sparc64.
1177.It Va WITH_LLVM_TARGET_ARM
1178Set to build LLVM target support for ARM.
1179The
1180.Va LLVM_TARGET_ALL
1181option should be used rather than this in most cases.
1182.Pp
1183This is a default setting on
1184amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
1185.It Va WITH_LLVM_TARGET_BPF
1186Set to build LLVM target support for BPF.
1187The
1188.Va LLVM_TARGET_ALL
1189option should be used rather than this in most cases.
1190.It Va WITHOUT_LLVM_TARGET_MIPS
1191Set to not build LLVM target support for MIPS.
1192The
1193.Va LLVM_TARGET_ALL
1194option should be used rather than this in most cases.
1195.Pp
1196This is a default setting on
1197arm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64.
1198.It Va WITH_LLVM_TARGET_MIPS
1199Set to build LLVM target support for MIPS.
1200The
1201.Va LLVM_TARGET_ALL
1202option should be used rather than this in most cases.
1203.Pp
1204This is a default setting on
1205amd64/amd64, arm/armv7, 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.
1206.It Va WITHOUT_LLVM_TARGET_POWERPC
1207Set to not build LLVM target support for PowerPC.
1208The
1209.Va LLVM_TARGET_ALL
1210option should be used rather than this in most cases.
1211.Pp
1212This is a default setting on
1213arm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64.
1214.It Va WITH_LLVM_TARGET_POWERPC
1215Set to build LLVM target support for PowerPC.
1216The
1217.Va LLVM_TARGET_ALL
1218option should be used rather than this in most cases.
1219.Pp
1220This is a default setting on
1221amd64/amd64, arm/armv7, 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.
1222.It Va WITH_LLVM_TARGET_RISCV
1223Set to build LLVM target support for RISC-V.
1224The
1225.Va LLVM_TARGET_ALL
1226option should be used rather than this in most cases.
1227.It Va WITHOUT_LLVM_TARGET_SPARC
1228Set to not build LLVM target support for SPARC.
1229The
1230.Va LLVM_TARGET_ALL
1231option should be used rather than this in most cases.
1232.Pp
1233This is a default setting on
1234arm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64.
1235.It Va WITH_LLVM_TARGET_SPARC
1236Set to build LLVM target support for SPARC.
1237The
1238.Va LLVM_TARGET_ALL
1239option should be used rather than this in most cases.
1240.Pp
1241This is a default setting on
1242amd64/amd64, arm/armv7, 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.
1243.It Va WITHOUT_LLVM_TARGET_X86
1244Set to not build LLVM target support for X86.
1245The
1246.Va LLVM_TARGET_ALL
1247option should be used rather than this in most cases.
1248.Pp
1249This is a default setting on
1250arm/arm, arm/armv6, riscv/riscv64 and sparc64/sparc64.
1251.It Va WITH_LLVM_TARGET_X86
1252Set to build LLVM target support for X86.
1253The
1254.Va LLVM_TARGET_ALL
1255option should be used rather than this in most cases.
1256.Pp
1257This is a default setting on
1258amd64/amd64, arm/armv7, 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.
1259.It Va WITH_LOADER_EFI_SECUREBOOT
1260Enable building
1261.Xr loader 8
1262with support for verification based on certificates obtained from UEFI.
1263.Pp
1264.It Va WITH_LOADER_FIREWIRE
1265Enable firewire support in /boot/loader on x86. This option is a nop
1266on all other platforms.
1267.It Va WITH_LOADER_FORCE_LE
1268Set to force the powerpc boot loader to launch the kernel in little
1269endian mode.
1270.It Va WITHOUT_LOADER_GELI
1271Disable inclusion of GELI crypto support in the boot chain binaries.
1272.Pp
1273This is a default setting on
1274powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1275.It Va WITH_LOADER_GELI
1276Set to build GELI bootloader support.
1277.Pp
1278This is a default setting on
1279amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and riscv/riscv64.
1280.It Va WITHOUT_LOADER_LUA
1281Set to not build LUA bindings for the boot loader.
1282.Pp
1283This is a default setting on
1284powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1285.It Va WITH_LOADER_LUA
1286Set to build LUA bindings for the boot loader.
1287.Pp
1288This is a default setting on
1289amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and riscv/riscv64.
1290.It Va WITHOUT_LOADER_OFW
1291Disable building of openfirmware bootloader components.
1292.Pp
1293This is a default setting on
1294amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf and riscv/riscv64.
1295.It Va WITH_LOADER_OFW
1296Set to build openfirmware bootloader components.
1297.Pp
1298This is a default setting on
1299powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64.
1300.It Va WITHOUT_LOADER_UBOOT
1301Disable building of ubldr.
1302.Pp
1303This is a default setting on
1304amd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64 and sparc64/sparc64.
1305.It Va WITH_LOADER_UBOOT
1306Set to build ubldr.
1307.Pp
1308This is a default setting on
1309arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpcspe.
1310.It Va WITH_LOADER_VERBOSE
1311Set to build with extra verbose debugging in the loader.
1312May explode already nearly too large loader over the limit.
1313Use with care.
1314
1315.It Va WITH_LOADER_VERIEXEC
1316Enable building
1317.Xr loader 8
1318with support for verifcation similar to Verified Exec.
1319.Pp
1320It depends on
1321.Va WITH_BEARSSL
1322When set, these options are also in effect:
1323.Pp
1324.Bl -inset -compact
1325.It Va WITH_LOADER_EFI_SECUREBOOT
1326(unless
1327.Va WITHOUT_LOADER_EFI_SECUREBOOT
1328is set explicitly)
1329.El
1330.It Va WITHOUT_LOADER_ZFS
1331Set to not build ZFS file system boot loader support.
1332.It Va WITHOUT_LOCALES
1333Set to not build localization files; see
1334.Xr locale 1 .
1335.It Va WITHOUT_LOCATE
1336Set to not build
1337.Xr locate 1
1338and related programs.
1339.It Va WITHOUT_LPR
1340Set to not build
1341.Xr lpr 1
1342and related programs.
1343.It Va WITHOUT_LS_COLORS
1344Set to build
1345.Xr ls 1
1346without support for colors to distinguish file types.
1347.It Va WITHOUT_LZMA_SUPPORT
1348Set to build some programs without optional lzma compression support.
1349.It Va WITHOUT_MAIL
1350Set to not build any mail support (MUA or MTA).
1351When set, it enforces these options:
1352.Pp
1353.Bl -item -compact
1354.It
1355.Va WITHOUT_DMAGENT
1356.It
1357.Va WITHOUT_MAILWRAPPER
1358.It
1359.Va WITHOUT_SENDMAIL
1360.El
1361.It Va WITHOUT_MAILWRAPPER
1362Set to not build the
1363.Xr mailwrapper 8
1364MTA selector.
1365.It Va WITHOUT_MAKE
1366Set to not install
1367.Xr make 1
1368and related support files.
1369.It Va WITHOUT_MAKE_CHECK_USE_SANDBOX
1370Set to not execute
1371.Dq Li "make check"
1372in limited sandbox mode.
1373This option should be paired with
1374.Va WITH_INSTALL_AS_USER
1375if executed as an unprivileged user.
1376See
1377.Xr tests 7
1378for more details.
1379.It Va WITHOUT_MAN
1380Set to not build manual pages.
1381When set, these options are also in effect:
1382.Pp
1383.Bl -inset -compact
1384.It Va WITHOUT_MAN_UTILS
1385(unless
1386.Va WITH_MAN_UTILS
1387is set explicitly)
1388.El
1389.It Va WITHOUT_MANCOMPRESS
1390Set to not to install compressed man pages.
1391Only the uncompressed versions will be installed.
1392.It Va WITHOUT_MAN_UTILS
1393Set to not build utilities for manual pages,
1394.Xr apropos 1 ,
1395.Xr makewhatis 1 ,
1396.Xr man 1 ,
1397.Xr whatis 1 ,
1398.Xr manctl 8 ,
1399and related support files.
1400.It Va WITH_META_MODE
1401Create
1402.Xr make 1
1403meta files when building, which can provide a reliable incremental build when
1404using
1405.Xr filemon 4 .
1406The meta file is created in OBJDIR as
1407.Pa target.meta .
1408These meta files track the command that was executed, its output, and the
1409current directory.
1410The
1411.Xr filemon 4
1412module is required unless
1413.Va NO_FILEMON
1414is defined.
1415When the module is loaded, any files used by the commands executed are
1416tracked as dependencies for the target in its meta file.
1417The target is considered out-of-date and rebuilt if any of these
1418conditions are true compared to the last build:
1419.Bl -bullet -compact
1420.It
1421The command to execute changes.
1422.It
1423The current working directory changes.
1424.It
1425The target's meta file is missing.
1426.It
1427The target's meta file is missing filemon data when filemon is loaded
1428and a previous run did not have it loaded.
1429.It
1430[requires
1431.Xr filemon 4 ]
1432Files read, executed or linked to are newer than the target.
1433.It
1434[requires
1435.Xr filemon 4 ]
1436Files read, written, executed or linked are missing.
1437.El
1438The meta files can also be useful for debugging.
1439.Pp
1440The build hides commands that are executed unless
1441.Va NO_SILENT
1442is defined.
1443Errors cause
1444.Xr make 1
1445to show some of its environment for further debugging.
1446.Pp
1447The build operates as it normally would otherwise.
1448This option originally invoked a different build system but that was renamed
1449to
1450.Va WITH_DIRDEPS_BUILD .
1451.Pp
1452This must be set in the environment, make command line, or
1453.Pa /etc/src-env.conf ,
1454not
1455.Pa /etc/src.conf .
1456.It Va WITHOUT_MLX5TOOL
1457Set to not build
1458.Xr mlx5tool 8
1459.Pp
1460This is a default setting on
1461arm/arm, arm/armv6, arm/armv7, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpcspe and riscv/riscv64.
1462.It Va WITH_MLX5TOOL
1463Set to build
1464.Xr mlx5tool 8
1465.Pp
1466This is a default setting on
1467amd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and sparc64/sparc64.
1468.It Va WITHOUT_NDIS
1469Set to not build programs and libraries
1470related to NDIS emulation support.
1471.It Va WITHOUT_NETCAT
1472Set to not build
1473.Xr nc 1
1474utility.
1475.It Va WITHOUT_NETGRAPH
1476Set to not build applications to support
1477.Xr netgraph 4 .
1478When set, it enforces these options:
1479.Pp
1480.Bl -item -compact
1481.It
1482.Va WITHOUT_ATM
1483.It
1484.Va WITHOUT_BLUETOOTH
1485.El
1486.Pp
1487When set, these options are also in effect:
1488.Pp
1489.Bl -inset -compact
1490.It Va WITHOUT_NETGRAPH_SUPPORT
1491(unless
1492.Va WITH_NETGRAPH_SUPPORT
1493is set explicitly)
1494.El
1495.It Va WITHOUT_NETGRAPH_SUPPORT
1496Set to build libraries, programs, and kernel modules without netgraph support.
1497.It Va WITHOUT_NIS
1498Set to not build
1499.Xr NIS 8
1500support and related programs.
1501If set, you might need to adopt your
1502.Xr nsswitch.conf 5
1503and remove
1504.Sq nis
1505entries.
1506.It Va WITHOUT_NLS
1507Set to not build NLS catalogs.
1508When set, it enforces these options:
1509.Pp
1510.Bl -item -compact
1511.It
1512.Va WITHOUT_NLS_CATALOGS
1513.El
1514.It Va WITHOUT_NLS_CATALOGS
1515Set to not build NLS catalog support for
1516.Xr csh 1 .
1517.It Va WITHOUT_NS_CACHING
1518Set to disable name caching in the
1519.Pa nsswitch
1520subsystem.
1521The generic caching daemon,
1522.Xr nscd 8 ,
1523will not be built either if this option is set.
1524.It Va WITHOUT_NTP
1525Set to not build
1526.Xr ntpd 8
1527and related programs.
1528.It Va WITHOUT_NVME
1529Set to not build nvme related tools and kernel modules.
1530.Pp
1531This is a default setting on
1532arm/arm, arm/armv6, arm/armv7, 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 sparc64/sparc64.
1533.It Va WITH_NVME
1534Set to build nvme related tools and kernel modules.
1535
1536.Pp
1537This is a default setting on
1538amd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64.
1539.It Va WITH_OFED
1540Set to build the
1541.Dq "OpenFabrics Enterprise Distribution"
1542Infiniband software stack.
1543.It Va WITH_OFED_EXTRA
1544Set to build the non-essential components of the
1545.Dq "OpenFabrics Enterprise Distribution"
1546Infiniband software stack, mostly examples.
1547.It Va WITH_OPENLDAP
1548Enable building openldap support for kerberos.
1549.It Va WITHOUT_OPENMP
1550Set to not build LLVM's OpenMP runtime.
1551.Pp
1552This is a default setting on
1553arm/arm, arm/armv6, arm/armv7, arm64/aarch64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf, mips/mips64hf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and sparc64/sparc64.
1554.It Va WITH_OPENMP
1555Set to build LLVM's OpenMP runtime.
1556.Pp
1557This is a default setting on
1558amd64/amd64 and i386/i386.
1559.It Va WITHOUT_OPENSSH
1560Set to not build OpenSSH.
1561.It Va WITHOUT_OPENSSL
1562Set to not build OpenSSL.
1563When set, it enforces these options:
1564.Pp
1565.Bl -item -compact
1566.It
1567.Va WITHOUT_KERBEROS
1568.It
1569.Va WITHOUT_OPENSSH
1570.El
1571.Pp
1572When set, these options are also in effect:
1573.Pp
1574.Bl -inset -compact
1575.It Va WITHOUT_GSSAPI
1576(unless
1577.Va WITH_GSSAPI
1578is set explicitly)
1579.El
1580.It Va WITHOUT_PAM
1581Set to not build PAM library and modules.
1582.Bf -symbolic
1583This option is deprecated and does nothing.
1584.Ef
1585When set, these options are also in effect:
1586.Pp
1587.Bl -inset -compact
1588.It Va WITHOUT_PAM_SUPPORT
1589(unless
1590.Va WITH_PAM_SUPPORT
1591is set explicitly)
1592.El
1593.It Va WITHOUT_PAM_SUPPORT
1594Set to build some programs without PAM support, particularly
1595.Xr ftpd 8
1596and
1597.Xr ppp 8 .
1598.It Va WITHOUT_PF
1599Set to not build PF firewall package.
1600When set, it enforces these options:
1601.Pp
1602.Bl -item -compact
1603.It
1604.Va WITHOUT_AUTHPF
1605.El
1606.It Va WITH_PIE
1607Build dynamically linked binaries as
1608Position-Independent Executable (PIE).
1609.It Va WITHOUT_PKGBOOTSTRAP
1610Set to not build
1611.Xr pkg 7
1612bootstrap tool.
1613.It Va WITHOUT_PMC
1614Set to not build
1615.Xr pmccontrol 8
1616and related programs.
1617.It Va WITHOUT_PORTSNAP
1618Set to not build or install
1619.Xr portsnap 8
1620and related files.
1621When set, it enforces these options:
1622.Pp
1623.Bl -item -compact
1624.It
1625.Va WITHOUT_FREEBSD_UPDATE
1626.El
1627.It Va WITHOUT_PPP
1628Set to not build
1629.Xr ppp 8
1630and related programs.
1631.It Va WITHOUT_PROFILE
1632Set to not build profiled libraries for use with
1633.Xr gprof 8 .
1634.Pp
1635This is a default setting on
1636mips/mips64el, mips/mips64, mips/mips64elhf and mips/mips64hf.
1637.It Va WITH_PROFILE
1638Set to build profiled libraries for use with
1639.Xr gprof 8 .
1640.Pp
1641This is a default setting on
1642amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mipsn32, mips/mipselhf, mips/mipshf, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and sparc64/sparc64.
1643.It Va WITHOUT_QUOTAS
1644Set to not build
1645.Xr quota 1
1646and related programs.
1647.It Va WITHOUT_RADIUS_SUPPORT
1648Set to not build radius support into various applications, like
1649.Xr pam_radius 8
1650and
1651.Xr ppp 8 .
1652.It Va WITH_RATELIMIT
1653Set to build the system with rate limit support.
1654.Pp
1655This makes
1656.Dv SO_MAX_PACING_RATE
1657effective in
1658.Xr getsockopt 2 ,
1659and
1660.Ar txrlimit
1661support in
1662.Xr ifconfig 8 ,
1663by proxy.
1664.It Va WITHOUT_RBOOTD
1665Set to not build or install
1666.Xr rbootd 8 .
1667.It Va WITH_REPRODUCIBLE_BUILD
1668Set to exclude build metadata (such as the build time, user, or host)
1669from the kernel, boot loaders, and uname output, so that builds produce
1670bit-for-bit identical output.
1671.It Va WITHOUT_RESCUE
1672Set to not build
1673.Xr rescue 8 .
1674.It Va WITH_RETPOLINE
1675Set to build the base system with the retpoline speculative execution
1676vulnerability mitigation for CVE-2017-5715.
1677.It Va WITHOUT_ROUTED
1678Set to not build
1679.Xr routed 8
1680utility.
1681.It Va WITH_RPCBIND_WARMSTART_SUPPORT
1682Set to build
1683.Xr rpcbind 8
1684with warmstart support.
1685.It Va WITHOUT_SENDMAIL
1686Set to not build
1687.Xr sendmail 8
1688and related programs.
1689.It Va WITHOUT_SERVICESDB
1690Set to not install
1691.Pa /var/db/services.db .
1692.It Va WITHOUT_SETUID_LOGIN
1693Set this to disable the installation of
1694.Xr login 1
1695as a set-user-ID root program.
1696.It Va WITHOUT_SHAREDOCS
1697Set to not build the
1698.Bx 4.4
1699legacy docs.
1700.It Va WITH_SHARED_TOOLCHAIN
1701Set to build the toolchain binaries shared.
1702The set includes
1703.Xr cc 1 ,
1704.Xr make 1
1705and necessary utilities like assembler, linker and library archive manager.
1706.It Va WITH_SORT_THREADS
1707Set to enable threads in
1708.Xr sort 1 .
1709.It Va WITHOUT_SOURCELESS
1710Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
1711When set, it enforces these options:
1712.Pp
1713.Bl -item -compact
1714.It
1715.Va WITHOUT_SOURCELESS_HOST
1716.It
1717.Va WITHOUT_SOURCELESS_UCODE
1718.El
1719.It Va WITHOUT_SOURCELESS_HOST
1720Set to not build kernel modules that include sourceless native code for host CPU.
1721.It Va WITHOUT_SOURCELESS_UCODE
1722Set to not build kernel modules that include sourceless microcode.
1723.It Va WITHOUT_SSP
1724Set to not build world with propolice stack smashing protection.
1725.Pp
1726This is a default setting on
1727mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf.
1728.It Va WITH_SSP
1729Set to build world with propolice stack smashing protection.
1730.Pp
1731This is a default setting on
1732amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64 and sparc64/sparc64.
1733.It Va WITH_STAGING
1734Enable staging of files to a stage tree.
1735This can be best thought of as auto-install to
1736.Va DESTDIR
1737with some extra meta data to ensure dependencies can be tracked.
1738Depends on
1739.Va WITH_DIRDEPS_BUILD .
1740When set, these options are also in effect:
1741.Pp
1742.Bl -inset -compact
1743.It Va WITH_STAGING_MAN
1744(unless
1745.Va WITHOUT_STAGING_MAN
1746is set explicitly)
1747.It Va WITH_STAGING_PROG
1748(unless
1749.Va WITHOUT_STAGING_PROG
1750is set explicitly)
1751.El
1752.Pp
1753This must be set in the environment, make command line, or
1754.Pa /etc/src-env.conf ,
1755not
1756.Pa /etc/src.conf .
1757.It Va WITH_STAGING_MAN
1758Enable staging of man pages to stage tree.
1759.It Va WITH_STAGING_PROG
1760Enable staging of PROGs to stage tree.
1761.It Va WITH_STALE_STAGED
1762Check staged files are not stale.
1763.It Va WITH_SVN
1764Set to install
1765.Xr svnlite 1
1766as
1767.Xr svn 1 .
1768.It Va WITHOUT_SVNLITE
1769Set to not build
1770.Xr svnlite 1
1771and related programs.
1772.It Va WITHOUT_SYMVER
1773Set to disable symbol versioning when building shared libraries.
1774.It Va WITHOUT_SYSCONS
1775Set to not build
1776.Xr syscons 4
1777support files such as keyboard maps, fonts, and screen output maps.
1778.It Va WITH_SYSROOT
1779Enable use of sysroot during build.
1780Depends on
1781.Va WITH_DIRDEPS_BUILD .
1782.Pp
1783This must be set in the environment, make command line, or
1784.Pa /etc/src-env.conf ,
1785not
1786.Pa /etc/src.conf .
1787.It Va WITHOUT_SYSTEM_COMPILER
1788Set to not opportunistically skip building a cross-compiler during the
1789bootstrap phase of the build.
1790Normally, if the currently installed compiler matches the planned bootstrap
1791compiler type and revision, then it will not be built.
1792This does not prevent a compiler from being built for installation though,
1793only for building one for the build itself.
1794The
1795.Va WITHOUT_CLANG
1796and
1797.Va WITHOUT_GCC
1798options control those.
1799.It Va WITHOUT_SYSTEM_LINKER
1800Set to not opportunistically skip building a cross-linker during the
1801bootstrap phase of the build.
1802Normally, if the currently installed linker matches the planned bootstrap
1803linker type and revision, then it will not be built.
1804This does not prevent a linker from being built for installation though,
1805only for building one for the build itself.
1806The
1807.Va WITHOUT_LLD
1808and
1809.Va WITHOUT_BINUTILS
1810options control those.
1811.Pp
1812This option is only relevant when
1813.Va WITH_LLD_BOOTSTRAP
1814is set.
1815.It Va WITHOUT_TALK
1816Set to not build or install
1817.Xr talk 1
1818and
1819.Xr talkd 8 .
1820.It Va WITHOUT_TCP_WRAPPERS
1821Set to not build or install
1822.Xr tcpd 8 ,
1823and related utilities.
1824.It Va WITHOUT_TCSH
1825Set to not build and install
1826.Pa /bin/csh
1827(which is
1828.Xr tcsh 1 ) .
1829.It Va WITHOUT_TELNET
1830Set to not build
1831.Xr telnet 1
1832and related programs.
1833.It Va WITHOUT_TESTS
1834Set to not build nor install the
1835.Fx
1836Test Suite in
1837.Pa /usr/tests/ .
1838See
1839.Xr tests 7
1840for more details.
1841This also disables the build of all test-related dependencies, including ATF.
1842When set, it enforces these options:
1843.Pp
1844.Bl -item -compact
1845.It
1846.Va WITHOUT_DTRACE_TESTS
1847.El
1848.Pp
1849When set, these options are also in effect:
1850.Pp
1851.Bl -inset -compact
1852.It Va WITHOUT_GOOGLETEST
1853(unless
1854.Va WITH_GOOGLETEST
1855is set explicitly)
1856.It Va WITHOUT_TESTS_SUPPORT
1857(unless
1858.Va WITH_TESTS_SUPPORT
1859is set explicitly)
1860.El
1861.It Va WITHOUT_TESTS_SUPPORT
1862Set to disables the build of all test-related dependencies, including ATF.
1863When set, it enforces these options:
1864.Pp
1865.Bl -item -compact
1866.It
1867.Va WITHOUT_GOOGLETEST
1868.El
1869.It Va WITHOUT_TEXTPROC
1870Set to not build
1871programs used for text processing.
1872.It Va WITHOUT_TFTP
1873Set to not build or install
1874.Xr tftp 1
1875and
1876.Xr tftpd 8 .
1877.It Va WITHOUT_TOOLCHAIN
1878Set to not install header or
1879programs used for program development,
1880compilers, debuggers etc.
1881When set, it enforces these options:
1882.Pp
1883.Bl -item -compact
1884.It
1885.Va WITHOUT_BINUTILS
1886.It
1887.Va WITHOUT_CLANG
1888.It
1889.Va WITHOUT_CLANG_EXTRAS
1890.It
1891.Va WITHOUT_CLANG_FULL
1892.It
1893.Va WITHOUT_GCC
1894.It
1895.Va WITHOUT_GDB
1896.It
1897.Va WITHOUT_INCLUDES
1898.It
1899.Va WITHOUT_LLD
1900.It
1901.Va WITHOUT_LLDB
1902.It
1903.Va WITHOUT_LLVM_COV
1904.El
1905.It Va WITHOUT_UNBOUND
1906Set to not build
1907.Xr unbound 8
1908and related programs.
1909.It Va WITHOUT_UNIFIED_OBJDIR
1910Set to use the historical object directory format for
1911.Xr build 7
1912targets.
1913For native-builds and builds done directly in sub-directories the format of
1914.Pa ${MAKEOBJDIRPREFIX}/${.CURDIR}
1915is used,
1916while for cross-builds
1917.Pa ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR}
1918is used.
1919.Pp
1920This option is transitional and will be removed before the 12.0 release,
1921at which time
1922.va WITH_UNIFIED_OBJDIR
1923will be enabled permanently.
1924.Pp
1925This must be set in the environment, make command line, or
1926.Pa /etc/src-env.conf ,
1927not
1928.Pa /etc/src.conf .
1929.It Va WITHOUT_USB
1930Set to not build USB-related programs and libraries.
1931.It Va WITHOUT_USB_GADGET_EXAMPLES
1932Set to not build USB gadget kernel modules.
1933.It Va WITHOUT_UTMPX
1934Set to not build user accounting tools such as
1935.Xr last 1 ,
1936.Xr users 1 ,
1937.Xr who 1 ,
1938.Xr ac 8 ,
1939.Xr lastlogin 8
1940and
1941.Xr utx 8 .
1942.It Va WITH_VERIEXEC
1943Enable building
1944.Xr veriexec 8
1945which loads the contents of verified manifests into the kernel
1946for use by
1947.Xr mac_veriexec 4
1948.Pp
1949It depends on
1950.Va WITH_BEARSSL
1951.It Va WITHOUT_VI
1952Set to not build and install vi, view, ex and related programs.
1953.It Va WITHOUT_VT
1954Set to not build
1955.Xr vt 4
1956support files (fonts and keymaps).
1957.It Va WITHOUT_WARNS
1958Set this to not add warning flags to the compiler invocations.
1959Useful as a temporary workaround when code enters the tree
1960which triggers warnings in environments that differ from the
1961original developer.
1962.It Va WITHOUT_WIRELESS
1963Set to not build programs used for 802.11 wireless networks; especially
1964.Xr wpa_supplicant 8
1965and
1966.Xr hostapd 8 .
1967When set, these options are also in effect:
1968.Pp
1969.Bl -inset -compact
1970.It Va WITHOUT_WIRELESS_SUPPORT
1971(unless
1972.Va WITH_WIRELESS_SUPPORT
1973is set explicitly)
1974.El
1975.It Va WITHOUT_WIRELESS_SUPPORT
1976Set to build libraries, programs, and kernel modules without
1977802.11 wireless support.
1978.It Va WITHOUT_WPA_SUPPLICANT_EAPOL
1979Build
1980.Xr wpa_supplicant 8
1981without support for the IEEE 802.1X protocol and without
1982support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS
1983protocols (usable only via 802.1X).
1984.It Va WITHOUT_ZFS
1985Set to not build ZFS file system kernel module, libraries, and user commands.
1986.It Va WITHOUT_ZONEINFO
1987Set to not build the timezone database.
1988When set, it enforces these options:
1989.Pp
1990.Bl -item -compact
1991.It
1992.Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT
1993.It
1994.Va WITHOUT_ZONEINFO_OLD_TIMEZONES_SUPPORT
1995.El
1996.It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
1997Set to build leapsecond information in to the timezone database.
1998.It Va WITH_ZONEINFO_OLD_TIMEZONES_SUPPORT
1999Set to build backward compatibility timezone aliases in to the timezone
2000database.
2001.El
2002.Sh FILES
2003.Bl -tag -compact -width Pa
2004.It Pa /etc/src.conf
2005.It Pa /etc/src-env.conf
2006.It Pa /usr/share/mk/bsd.own.mk
2007.El
2008.Sh SEE ALSO
2009.Xr make 1 ,
2010.Xr make.conf 5 ,
2011.Xr build 7 ,
2012.Xr ports 7
2013.Sh HISTORY
2014The
2015.Nm
2016file appeared in
2017.Fx 7.0 .
2018.Sh AUTHORS
2019This manual page was autogenerated by
2020.An tools/build/options/makeman .
2021