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