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