]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - share/man/man5/src.conf.5
Merge llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp
[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 October 10, 2018
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 as they are environment-only variables.
78 Note that
79 .Va MAKEOBJDIRPREFIX
80 may be set here only when using
81 .Va WITH_DIRDEPS_BUILD .
82 .Pp
83 The values of variables are ignored regardless of their setting;
84 even if they would be set to
85 .Dq Li FALSE
86 or
87 .Dq Li NO .
88 The presence of an option causes
89 it to be honored by
90 .Xr make 1 .
91 .Pp
92 This list provides a name and short description for variables
93 that can be used for source builds.
94 .Bl -tag -width indent
95 .It Va WITHOUT_ACCT
96 Set to not build process accounting tools such as
97 .Xr accton 8
98 and
99 .Xr sa 8 .
100 .It Va WITHOUT_ACPI
101 Set to not build
102 .Xr acpiconf 8 ,
103 .Xr acpidump 8
104 and related programs.
105 .It Va WITHOUT_AMD
106 Set to not build
107 .Xr amd 8 ,
108 and related programs.
109 .It Va WITHOUT_APM
110 Set to not build
111 .Xr apm 8 ,
112 .Xr apmd 8
113 and related programs.
114 .It Va WITHOUT_ASSERT_DEBUG
115 Set to compile programs and libraries without the
116 .Xr assert 3
117 checks.
118 .It Va WITHOUT_AT
119 Set to not build
120 .Xr at 1
121 and related utilities.
122 .It Va WITHOUT_ATM
123 Set to not build
124 programs and libraries related to ATM networking.
125 .It Va WITHOUT_AUDIT
126 Set to not build audit support into system programs.
127 .It Va WITHOUT_AUTHPF
128 Set to not build
129 .Xr authpf 8 .
130 .It Va WITHOUT_AUTOFS
131 Set to not build
132 .Xr autofs 5
133 related programs, libraries, and kernel modules.
134 .It Va WITH_AUTO_OBJ
135 Enable automatic creation of objdirs.
136 .Pp
137 This must be set in the environment, make command line, or
138 .Pa /etc/src-env.conf ,
139 not
140 .Pa /etc/src.conf .
141 .It Va WITHOUT_BHYVE
142 Set to not build or install
143 .Xr bhyve 8 ,
144 associated utilities, and examples.
145 .Pp
146 This option only affects amd64/amd64.
147 .It Va WITHOUT_BINUTILS
148 Set to not build or install binutils (as, ld, objcopy, and objdump ) as part
149 of the normal system build.
150 The resulting system cannot build programs from source.
151 .Pp
152 This is a default setting on
153 arm64/aarch64.
154 .It Va WITH_BINUTILS
155 Set to build and install binutils (as, ld, objcopy, and objdump) as part
156 of the normal system build.
157 .Pp
158 This is a default setting on
159 amd64/amd64, arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
160 .It Va WITHOUT_BINUTILS_BOOTSTRAP
161 Set to not build binutils (as, ld, objcopy and objdump)
162 as part of the bootstrap process.
163 .Bf -symbolic
164 The option does not work for build targets unless some alternative
165 toolchain is provided.
166 .Ef
167 .Pp
168 This is a default setting on
169 arm64/aarch64.
170 .It Va WITH_BINUTILS_BOOTSTRAP
171 Set build binutils (as, ld, objcopy and objdump)
172 as part of the bootstrap process.
173 .Pp
174 This is a default setting on
175 amd64/amd64, arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
176 .It Va WITHOUT_BLACKLIST
177 Set this if you do not want to build
178 .Xr blacklistd 8
179 and
180 .Xr blacklistctl 8 .
181 When set, it enforces these options:
182 .Pp
183 .Bl -item -compact
184 .It
185 .Va WITHOUT_BLACKLIST_SUPPORT
186 .El
187 .It Va WITHOUT_BLACKLIST_SUPPORT
188 Set to build some programs without
189 .Xr libblacklist 3
190 support, like
191 .Xr fingerd 8 ,
192 .Xr ftpd 8 ,
193 .Xr rlogind 8 ,
194 .Xr rshd 8 ,
195 and
196 .Xr sshd 8 .
197 .It Va WITHOUT_BLUETOOTH
198 Set to not build Bluetooth related kernel modules, programs and libraries.
199 .It Va WITHOUT_BOOT
200 Set to not build the boot blocks and loader.
201 .It Va WITHOUT_BOOTPARAMD
202 Set to not build or install
203 .Xr bootparamd 8 .
204 .It Va WITHOUT_BOOTPD
205 Set to not build or install
206 .Xr bootpd 8 .
207 .It Va WITHOUT_BSDINSTALL
208 Set to not build
209 .Xr bsdinstall 8 ,
210 .Xr sade 8 ,
211 and related programs.
212 .It Va WITHOUT_BSD_CPIO
213 Set to not build the BSD licensed version of cpio based on
214 .Xr libarchive 3 .
215 .It Va WITH_BSD_GREP
216 Install BSD-licensed grep as '[ef]grep' instead of GNU grep.
217 .It Va WITHOUT_BSD_GREP_FASTMATCH
218 Set this option to exclude the fastmatch implementation from
219 .Xr bsdgrep 1 ,
220 instead using only
221 .Xr regex 3 .
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 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, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc and powerpc/powerpc64.
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, powerpc/powerpc, powerpc/powerpc64 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, arm64/aarch64, i386/i386 and pc98/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 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, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc and powerpc/powerpc64.
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, powerpc/powerpc, powerpc/powerpc64 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, arm64/aarch64, i386/i386 and pc98/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 .It
396 .Va WITHOUT_LLD_BOOTSTRAP
397 .El
398 .It Va WITHOUT_CRYPT
399 Set to not build any crypto code.
400 When set, it enforces these options:
401 .Pp
402 .Bl -item -compact
403 .It
404 .Va WITHOUT_KERBEROS
405 .It
406 .Va WITHOUT_KERBEROS_SUPPORT
407 .It
408 .Va WITHOUT_OPENSSH
409 .It
410 .Va WITHOUT_OPENSSL
411 .El
412 .Pp
413 When set, these options are also in effect:
414 .Pp
415 .Bl -inset -compact
416 .It Va WITHOUT_GSSAPI
417 (unless
418 .Va WITH_GSSAPI
419 is set explicitly)
420 .El
421 .It Va WITH_CTF
422 Set to compile with CTF (Compact C Type Format) data.
423 CTF data encapsulates a reduced form of debugging information
424 similar to DWARF and the venerable stabs and is required for DTrace.
425 .It Va WITHOUT_CTM
426 Set to not build
427 .Xr ctm 1
428 and related utilities.
429 .It Va WITHOUT_CUSE
430 Set to not build CUSE-related programs and libraries.
431 .It Va WITHOUT_CXGBETOOL
432 Set to not build
433 .Xr cxgbetool 8
434 .Pp
435 This is a default setting on
436 arm/arm, arm/armeb, arm/armv6, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32 and powerpc/powerpc.
437 .It Va WITH_CXGBETOOL
438 Set to build
439 .Xr cxgbetool 8
440 .Pp
441 This is a default setting on
442 amd64/amd64, arm64/aarch64, i386/i386, pc98/i386, powerpc/powerpc64 and sparc64/sparc64.
443 .It Va WITHOUT_CXX
444 Set to not build
445 .Xr c++ 1
446 and related libraries.
447 It will also prevent building of
448 .Xr gperf 1
449 and
450 .Xr devd 8 .
451 When set, it enforces these options:
452 .Pp
453 .Bl -item -compact
454 .It
455 .Va WITHOUT_CLANG
456 .It
457 .Va WITHOUT_CLANG_EXTRAS
458 .It
459 .Va WITHOUT_CLANG_FULL
460 .It
461 .Va WITHOUT_GNUCXX
462 .It
463 .Va WITHOUT_GROFF
464 .El
465 .It Va WITHOUT_DEBUG_FILES
466 Set to avoid building or installing standalone debug files for each
467 executable binary and shared library.
468 .It Va WITHOUT_DIALOG
469 Set to not build
470 .Xr dialog 1 ,
471 .Xr dialog 3 ,
472 .Xr dpv 1 ,
473 and
474 .Xr dpv 3 .
475 When set, it enforces these options:
476 .Pp
477 .Bl -item -compact
478 .It
479 .Va WITHOUT_BSDINSTALL
480 .El
481 .It Va WITHOUT_DICT
482 Set to not build the Webster dictionary files.
483 .It Va WITH_DIRDEPS_BUILD
484 This is an experimental build system.
485 For details see
486 http://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
487 Build commands can be seen from the top-level with:
488 .Dl make show-valid-targets
489 The build is driven by dirdeps.mk using
490 .Va DIRDEPS
491 stored in
492 Makefile.depend files found in each directory.
493 .Pp
494 The build can be started from anywhere, and behaves the same.
495 The initial instance of
496 .Xr make 1
497 recursively reads
498 .Va DIRDEPS
499 from
500 .Pa Makefile.depend ,
501 computing a graph of tree dependencies from the current origin.
502 Setting
503 .Va NO_DIRDEPS
504 skips checking dirdep dependencies and will only build in the current
505 and child directories.
506 .Va NO_DIRDEPS_BELOW
507 skips building any dirdeps and only build the current directory.
508 .Pp
509 This also utilizes the
510 .Va WITH_META_MODE
511 logic for incremental builds.
512 .Pp
513 The build hides commands executed unless
514 .Va NO_SILENT
515 is defined.
516 .Pp
517 Note that there is currently no mass install feature for this.
518 .Pp
519 When set, it enforces these options:
520 .Pp
521 .Bl -item -compact
522 .It
523 .Va WITH_INSTALL_AS_USER
524 .El
525 .Pp
526 When set, these options are also in effect:
527 .Pp
528 .Bl -inset -compact
529 .It Va WITHOUT_SYSTEM_COMPILER
530 (unless
531 .Va WITH_SYSTEM_COMPILER
532 is set explicitly)
533 .It Va WITH_AUTO_OBJ
534 (unless
535 .Va WITHOUT_AUTO_OBJ
536 is set explicitly)
537 .It Va WITH_META_MODE
538 (unless
539 .Va WITHOUT_META_MODE
540 is set explicitly)
541 .It Va WITH_STAGING
542 (unless
543 .Va WITHOUT_STAGING
544 is set explicitly)
545 .It Va WITH_STAGING_MAN
546 (unless
547 .Va WITHOUT_STAGING_MAN
548 is set explicitly)
549 .It Va WITH_STAGING_PROG
550 (unless
551 .Va WITHOUT_STAGING_PROG
552 is set explicitly)
553 .It Va WITH_SYSROOT
554 (unless
555 .Va WITHOUT_SYSROOT
556 is set explicitly)
557 .El
558 .Pp
559 This must be set in the environment, make command line, or
560 .Pa /etc/src-env.conf ,
561 not
562 .Pa /etc/src.conf .
563 .It Va WITH_DIRDEPS_CACHE
564 Cache result of dirdeps.mk which can save significant time
565 for subsequent builds.
566 Depends on
567 .Va WITH_DIRDEPS_BUILD .
568 .Pp
569 This must be set in the environment, make command line, or
570 .Pa /etc/src-env.conf ,
571 not
572 .Pa /etc/src.conf .
573 .It Va WITHOUT_DMAGENT
574 Set to not build dma Mail Transport Agent.
575 .It Va WITHOUT_DOCCOMPRESS
576 Set to not install compressed system documentation.
577 Only the uncompressed version will be installed.
578 .It Va WITH_DTRACE_TESTS
579 Set to build and install the DTrace test suite in
580 .Pa /usr/tests/cddl/usr.sbin/dtrace .
581 This test suite is considered experimental on architectures other than
582 amd64/amd64 and running it may cause system instability.
583 .It Va WITHOUT_DYNAMICROOT
584 Set this if you do not want to link
585 .Pa /bin
586 and
587 .Pa /sbin
588 dynamically.
589 .It Va WITHOUT_ED_CRYPTO
590 Set to build
591 .Xr ed 1
592 without support for encryption/decryption.
593 .It Va WITHOUT_EE
594 Set to not build and install
595 .Xr edit 1 ,
596 .Xr ee 1 ,
597 and related programs.
598 .It Va WITHOUT_EFI
599 Set not to build
600 .Xr efivar 3
601 and
602 .Xr efivar 8 .
603 .Pp
604 This is a default setting on
605 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
606 .It Va WITH_EFI
607 Set to build
608 .Xr efivar 3
609 and
610 .Xr efivar 8 .
611 .Pp
612 This is a default setting on
613 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64 and i386/i386.
614 .It Va WITH_EISA
615 Set to build EISA kernel modules.
616 .It Va WITHOUT_ELFCOPY_AS_OBJCOPY
617 Set to build and install
618 .Xr objcopy 1
619 from GNU Binutils, instead of the one from ELF Tool Chain.
620 This option is provided as a transition aid and will be removed in due time.
621 .It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
622 Set to not build ELF Tool Chain tools
623 (addr2line, nm, size, strings and strip)
624 as part of the bootstrap process.
625 .Bf -symbolic
626 An alternate bootstrap tool chain must be provided.
627 .Ef
628 .It Va WITHOUT_EXAMPLES
629 Set to avoid installing examples to
630 .Pa /usr/share/examples/ .
631 .It Va WITH_EXTRA_TCP_STACKS
632 Set to build extra TCP stack modules.
633 .It Va WITHOUT_FDT
634 Set to not build Flattened Device Tree support as part of the base system.
635 This includes the device tree compiler (dtc) and libfdt support library.
636 .It Va WITHOUT_FILE
637 Set to not build
638 .Xr file 1
639 and related programs.
640 .It Va WITHOUT_FINGER
641 Set to not build or install
642 .Xr finger 1
643 and
644 .Xr fingerd 8 .
645 .It Va WITHOUT_FLOPPY
646 Set to not build or install programs
647 for operating floppy disk driver.
648 .It Va WITHOUT_FMTREE
649 Set to not build and install
650 .Pa /usr/sbin/fmtree .
651 .It Va WITHOUT_FORMAT_EXTENSIONS
652 Set to not enable
653 .Fl fformat-extensions
654 when compiling the kernel.
655 Also disables all format checking.
656 .It Va WITHOUT_FORTH
657 Set to build bootloaders without Forth support.
658 .It Va WITHOUT_FP_LIBC
659 Set to build
660 .Nm libc
661 without floating-point support.
662 .It Va WITHOUT_FREEBSD_UPDATE
663 Set to not build
664 .Xr freebsd-update 8 .
665 .It Va WITHOUT_FTP
666 Set to not build or install
667 .Xr ftp 1
668 and
669 .Xr ftpd 8 .
670 .It Va WITHOUT_GAMES
671 Set to not build games.
672 .It Va WITHOUT_GCC
673 Set to not build and install gcc and g++ as part of the normal build process.
674 .Pp
675 This is a default setting on
676 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386 and pc98/i386.
677 .It Va WITH_GCC
678 Set to build and install gcc and g++.
679 .Pp
680 This is a default setting on
681 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
682 .It Va WITHOUT_GCC_BOOTSTRAP
683 Set to not build gcc and g++ as part of the bootstrap process.
684 You must enable either gcc or clang bootstrap to be able to build the system,
685 unless an alternative compiler is provided via
686 XCC.
687 .Pp
688 This is a default setting on
689 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386 and pc98/i386.
690 .It Va WITH_GCC_BOOTSTRAP
691 Set to build gcc and g++ as part of the bootstrap process.
692 .Pp
693 This is a default setting on
694 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
695 .It Va WITHOUT_GCOV
696 Set to not build the
697 .Xr gcov 1
698 tool.
699 .It Va WITHOUT_GDB
700 Set to not build
701 .Xr gdb 1 .
702 .Pp
703 This is a default setting on
704 arm64/aarch64.
705 .It Va WITH_GDB
706 Set to build
707 .Xr gdb 1 .
708 .Pp
709 This is a default setting on
710 amd64/amd64, arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
711 .It Va WITHOUT_GNU
712 Set to not build contributed GNU software as a part of the base system.
713 This option can be useful if the system built must not contain any code
714 covered by the GNU Public License due to legal reasons.
715 .Bf -symbolic
716 The option has no effect yet.
717 .Ef
718 When set, it enforces these options:
719 .Pp
720 .Bl -item -compact
721 .It
722 .Va WITHOUT_GNU_SUPPORT
723 .El
724 .It Va WITHOUT_GNUCXX
725 Do not build the GNU C++ stack (g++, libstdc++).
726 This is the default on platforms where clang is the system compiler.
727 .Pp
728 This is a default setting on
729 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386 and pc98/i386.
730 .It Va WITH_GNUCXX
731 Build the GNU C++ stack (g++, libstdc++).
732 This is the default on platforms where gcc is the system compiler.
733 .Pp
734 This is a default setting on
735 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
736 .It Va WITHOUT_GNU_DIFF
737 Set to not build GNU
738 .Xr diff 1
739 and
740 .Xr diff3 1 .
741 .It Va WITHOUT_GNU_GREP
742 Set to not build GNU
743 .Xr grep 1 .
744 .It Va WITHOUT_GNU_GREP_COMPAT
745 Set this option to omit the gnu extensions to grep from being included in
746 BSD grep.
747 .It Va WITHOUT_GNU_SUPPORT
748 Set to build some programs without optional GNU support.
749 .It Va WITHOUT_GPIO
750 Set to not build
751 .Xr gpioctl 8
752 as part of the base system.
753 .It Va WITHOUT_GPL_DTC
754 Set to build the BSD licensed version of the device tree compiler rather
755 than the GPLed one from elinux.org.
756 .It Va WITHOUT_GROFF
757 Set to not build
758 .Xr groff 1
759 and
760 .Xr vgrind 1 .
761 You should consider installing the textproc/groff port to not break
762 .Xr man 1 .
763 .It Va WITHOUT_GSSAPI
764 Set to not build libgssapi.
765 .It Va WITHOUT_HAST
766 Set to not build
767 .Xr hastd 8
768 and related utilities.
769 .It Va WITH_HESIOD
770 Set to build Hesiod support.
771 .It Va WITHOUT_HTML
772 Set to not build HTML docs.
773 .It Va WITHOUT_HYPERV
774 Set to not build or install HyperV utilities.
775 .It Va WITHOUT_ICONV
776 Set to not build iconv as part of libc.
777 .It Va WITHOUT_INCLUDES
778 Set to not install header files.
779 This option used to be spelled
780 .Va NO_INCS .
781 .Bf -symbolic
782 The option does not work for build targets.
783 .Ef
784 .It Va WITHOUT_INET
785 Set to not build programs and libraries related to IPv4 networking.
786 When set, it enforces these options:
787 .Pp
788 .Bl -item -compact
789 .It
790 .Va WITHOUT_INET_SUPPORT
791 .El
792 .It Va WITHOUT_INET6
793 Set to not build
794 programs and libraries related to IPv6 networking.
795 When set, it enforces these options:
796 .Pp
797 .Bl -item -compact
798 .It
799 .Va WITHOUT_INET6_SUPPORT
800 .El
801 .It Va WITHOUT_INET6_SUPPORT
802 Set to build libraries, programs, and kernel modules without IPv6 support.
803 .It Va WITHOUT_INETD
804 Set to not build
805 .Xr inetd 8 .
806 .It Va WITHOUT_INET_SUPPORT
807 Set to build libraries, programs, and kernel modules without IPv4 support.
808 .It Va WITHOUT_INSTALLLIB
809 Set this if to not install optional libraries.
810 For example, when creating a
811 .Xr nanobsd 8
812 image.
813 .Bf -symbolic
814 The option does not work for build targets.
815 .Ef
816 .It Va WITH_INSTALL_AS_USER
817 Set to make install targets succeed for non-root users by installing
818 files with owner and group attributes set to that of the user running
819 the
820 .Xr make 1
821 command.
822 The user still must set the
823 .Va DESTDIR
824 variable to point to a directory where the user has write permissions.
825 .It Va WITHOUT_IPFILTER
826 Set to not build IP Filter package.
827 .It Va WITHOUT_IPFW
828 Set to not build IPFW tools.
829 .It Va WITHOUT_IPSEC_SUPPORT
830 Set to not build the kernel with
831 .Xr ipsec 4
832 support.
833 This option is needed for
834 .Xr ipsec 4
835 and
836 .Xr tcpmd5 4 .
837 .It Va WITHOUT_ISCSI
838 Set to not build
839 .Xr iscid 8
840 and related utilities.
841 .It Va WITHOUT_JAIL
842 Set to not build tools for the support of jails; e.g.,
843 .Xr jail 8 .
844 .It Va WITHOUT_KDUMP
845 Set to not build
846 .Xr kdump 1
847 and
848 .Xr truss 1 .
849 .It Va WITHOUT_KERBEROS
850 Set this to not build Kerberos 5 (KTH Heimdal).
851 When set, it enforces these options:
852 .Pp
853 .Bl -item -compact
854 .It
855 .Va WITHOUT_KERBEROS_SUPPORT
856 .El
857 .Pp
858 When set, these options are also in effect:
859 .Pp
860 .Bl -inset -compact
861 .It Va WITHOUT_GSSAPI
862 (unless
863 .Va WITH_GSSAPI
864 is set explicitly)
865 .El
866 .It Va WITHOUT_KERBEROS_SUPPORT
867 Set to build some programs without Kerberos support, like
868 .Xr ssh 1 ,
869 .Xr telnet 1 ,
870 .Xr sshd 8 ,
871 and
872 .Xr telnetd 8 .
873 .It Va WITH_KERNEL_RETPOLINE
874 Set to enable the "retpoline" mitigation for CVE-2017-5715 in the kernel
875 build.
876 .It Va WITHOUT_KERNEL_SYMBOLS
877 Set to not install kernel symbol files.
878 .Bf -symbolic
879 This option is recommended for those people who have small root partitions.
880 .Ef
881 .It Va WITHOUT_KVM
882 Set to not build the
883 .Nm libkvm
884 library as a part of the base system.
885 .Bf -symbolic
886 The option has no effect yet.
887 .Ef
888 When set, it enforces these options:
889 .Pp
890 .Bl -item -compact
891 .It
892 .Va WITHOUT_KVM_SUPPORT
893 .El
894 .It Va WITHOUT_KVM_SUPPORT
895 Set to build some programs without optional
896 .Nm libkvm
897 support.
898 .It Va WITHOUT_LDNS
899 Setting this variable will prevent the LDNS library from being built.
900 When set, it enforces these options:
901 .Pp
902 .Bl -item -compact
903 .It
904 .Va WITHOUT_LDNS_UTILS
905 .It
906 .Va WITHOUT_UNBOUND
907 .El
908 .It Va WITHOUT_LDNS_UTILS
909 Setting this variable will prevent building the LDNS utilities
910 .Xr drill 1
911 and
912 .Xr host 1 .
913 .It Va WITHOUT_LEGACY_CONSOLE
914 Set to not build programs that support a legacy PC console; e.g.,
915 .Xr kbdcontrol 1
916 and
917 .Xr vidcontrol 1 .
918 .It Va WITHOUT_LIB32
919 On 64-bit platforms, set to not build 32-bit library set and a
920 .Nm ld-elf32.so.1
921 runtime linker.
922 .It Va WITHOUT_LIBCPLUSPLUS
923 Set to avoid building libcxxrt and libc++.
924 .It Va WITHOUT_LIBPTHREAD
925 Set to not build the
926 .Nm libpthread
927 providing library,
928 .Nm libthr .
929 When set, it enforces these options:
930 .Pp
931 .Bl -item -compact
932 .It
933 .Va WITHOUT_LIBTHR
934 .El
935 .It Va WITH_LIBSOFT
936 On armv6 only, set to enable soft float ABI compatibility libraries.
937 This option is for transitioning to the new hard float ABI.
938 .It Va WITHOUT_LIBTHR
939 Set to not build the
940 .Nm libthr
941 (1:1 threading)
942 library.
943 .It Va WITH_LINT
944 Set to build the lint binaries and library.
945 .It Va WITHOUT_LLD
946 Set to not build LLVM's lld linker.
947 .Pp
948 This is a default setting on
949 mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
950 .It Va WITH_LLD
951 Set to build LLVM's lld linker.
952 .Pp
953 This is a default setting on
954 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386 and pc98/i386.
955 .It Va WITHOUT_LLDB
956 Set to not build the LLDB debugger.
957 .Pp
958 This is a default setting on
959 arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
960 .It Va WITH_LLDB
961 Set to build the LLDB debugger.
962 .Pp
963 This is a default setting on
964 amd64/amd64 and arm64/aarch64.
965 .It Va WITHOUT_LLD_BOOTSTRAP
966 Set to not build the LLD linker during the bootstrap phase of
967 the build.
968 To be able to build the system, either Binutils or LLD bootstrap must be
969 enabled unless an alternate linker is provided via XLD.
970 .Pp
971 This is a default setting on
972 amd64/amd64, arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
973 .It Va WITH_LLD_BOOTSTRAP
974 Set to build the LLD linker during the bootstrap phase of the build.
975 .Pp
976 This is a default setting on
977 arm64/aarch64.
978 .It Va WITHOUT_LLD_IS_LD
979 Set to use GNU binutils ld as the system linker, instead of LLVM's LLD.
980 .Pp
981 This is a default setting on
982 amd64/amd64, arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
983 .It Va WITH_LLD_IS_LD
984 Set to use LLVM's LLD as the system linker, instead of GNU binutils ld.
985 .Pp
986 This is a default setting on
987 arm64/aarch64.
988 .It Va WITHOUT_LLVM_LIBUNWIND
989 Set to use GCC's stack unwinder (instead of LLVM's libunwind).
990 .Pp
991 This is a default setting on
992 amd64/amd64, arm/arm, arm/armeb, arm/armv6, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
993 .It Va WITH_LLVM_LIBUNWIND
994 Set to use LLVM's libunwind stack unwinder (instead of GCC's unwinder).
995 .Pp
996 This is a default setting on
997 arm64/aarch64.
998 .It Va WITHOUT_LLVM_TARGET_AARCH64
999 Set to not build LLVM target support for AArch64.
1000 .Pp
1001 This is a default setting on
1002 sparc64/sparc64.
1003 .It Va WITH_LLVM_TARGET_AARCH64
1004 Set to build LLVM target support for AArch64.
1005 .Pp
1006 This is a default setting on
1007 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc and powerpc/powerpc64.
1008 .It Va WITHOUT_LLVM_TARGET_ARM
1009 Set to not build LLVM target support for ARM.
1010 .Pp
1011 This is a default setting on
1012 sparc64/sparc64.
1013 .It Va WITH_LLVM_TARGET_ARM
1014 Set to build LLVM target support for ARM.
1015 .Pp
1016 This is a default setting on
1017 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc and powerpc/powerpc64.
1018 .It Va WITH_LLVM_TARGET_BPF
1019 Set to build LLVM target support for BPF.
1020 The
1021 .Va LLVM_TARGET_ALL
1022 option should be used rather than this in most cases.
1023 .It Va WITHOUT_LLVM_TARGET_MIPS
1024 Set to not build LLVM target support for MIPS.
1025 .Pp
1026 This is a default setting on
1027 sparc64/sparc64.
1028 .It Va WITH_LLVM_TARGET_MIPS
1029 Set to build LLVM target support for MIPS.
1030 .Pp
1031 This is a default setting on
1032 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc and powerpc/powerpc64.
1033 .It Va WITHOUT_LLVM_TARGET_POWERPC
1034 Set to not build LLVM target support for PowerPC.
1035 .Pp
1036 This is a default setting on
1037 sparc64/sparc64.
1038 .It Va WITH_LLVM_TARGET_POWERPC
1039 Set to build LLVM target support for PowerPC.
1040 .Pp
1041 This is a default setting on
1042 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc and powerpc/powerpc64.
1043 .It Va WITHOUT_LLVM_TARGET_SPARC
1044 Set to not build LLVM target support for SPARC.
1045 .Pp
1046 This is a default setting on
1047 sparc64/sparc64.
1048 .It Va WITH_LLVM_TARGET_SPARC
1049 Set to build LLVM target support for SPARC.
1050 .Pp
1051 This is a default setting on
1052 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc and powerpc/powerpc64.
1053 .It Va WITHOUT_LLVM_TARGET_X86
1054 Set to not build LLVM target support for X86.
1055 .Pp
1056 This is a default setting on
1057 sparc64/sparc64.
1058 .It Va WITH_LLVM_TARGET_X86
1059 Set to build LLVM target support for X86.
1060 .Pp
1061 This is a default setting on
1062 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, pc98/i386, powerpc/powerpc and powerpc/powerpc64.
1063 .It Va WITH_LOADER_FIREWIRE
1064 Enable firewire support in /boot/loader and /boot/zfsloader on x86.
1065 This option is a nop on all other platforms.
1066 .It Va WITHOUT_LOADER_GELI
1067 Disable inclusion of GELI crypto support in the boot chain binaries.
1068 .Pp
1069 This is a default setting on
1070 arm/arm, arm/armeb, arm/armv6, arm64/aarch64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
1071 .It Va WITHOUT_LOADER_OFW
1072 Disable building of openfirmware bootloader components.
1073 .Pp
1074 This is a default setting on
1075 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32 and pc98/i386.
1076 .It Va WITH_LOADER_OFW
1077 Set to build openfirmware bootloader components.
1078 .Pp
1079 This is a default setting on
1080 powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
1081 .It Va WITHOUT_LOADER_UBOOT
1082 Disable building of ubldr.
1083 .Pp
1084 This is a default setting on
1085 amd64/amd64, arm64/aarch64, i386/i386, pc98/i386 and sparc64/sparc64.
1086 .It Va WITH_LOADER_UBOOT
1087 Set to build ubldr.
1088 .Pp
1089 This is a default setting on
1090 arm/arm, arm/armeb, arm/armv6, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, powerpc/powerpc and powerpc/powerpc64.
1091 .It Va WITHOUT_LOCALES
1092 Set to not build localization files; see
1093 .Xr locale 1 .
1094 .It Va WITHOUT_LOCATE
1095 Set to not build
1096 .Xr locate 1
1097 and related programs.
1098 .It Va WITHOUT_LPR
1099 Set to not build
1100 .Xr lpr 1
1101 and related programs.
1102 .It Va WITHOUT_LS_COLORS
1103 Set to build
1104 .Xr ls 1
1105 without support for colors to distinguish file types.
1106 .It Va WITHOUT_LZMA_SUPPORT
1107 Set to build some programs without optional lzma compression support.
1108 .It Va WITHOUT_MAIL
1109 Set to not build any mail support (MUA or MTA).
1110 When set, it enforces these options:
1111 .Pp
1112 .Bl -item -compact
1113 .It
1114 .Va WITHOUT_DMAGENT
1115 .It
1116 .Va WITHOUT_MAILWRAPPER
1117 .It
1118 .Va WITHOUT_SENDMAIL
1119 .El
1120 .It Va WITHOUT_MAILWRAPPER
1121 Set to not build the
1122 .Xr mailwrapper 8
1123 MTA selector.
1124 .It Va WITHOUT_MAKE
1125 Set to not install
1126 .Xr make 1
1127 and related support files.
1128 .It Va WITHOUT_MAN
1129 Set to not build manual pages.
1130 When set, these options are also in effect:
1131 .Pp
1132 .Bl -inset -compact
1133 .It Va WITHOUT_MAN_UTILS
1134 (unless
1135 .Va WITH_MAN_UTILS
1136 is set explicitly)
1137 .El
1138 .It Va WITHOUT_MANCOMPRESS
1139 Set to not to install compressed man pages.
1140 Only the uncompressed versions will be installed.
1141 .It Va WITHOUT_MANDOCDB
1142 Use the version of
1143 .Xr makewhatis 1
1144 introduced in
1145 .Fx 2.1 ,
1146 instead of the
1147 .Xr makewhatis 8
1148 database and utilities from
1149 .Xr mandoc 1 .
1150 .It Va WITHOUT_MAN_UTILS
1151 Set to not build utilities for manual pages,
1152 .Xr apropos 1 ,
1153 .Xr catman 1 ,
1154 .Xr makewhatis 1 ,
1155 .Xr man 1 ,
1156 .Xr whatis 1 ,
1157 .Xr manctl 8 ,
1158 and related support files.
1159 .It Va WITH_META_MODE
1160 Create
1161 .Xr make 1
1162 meta files when building, which can provide a reliable incremental build when
1163 using
1164 .Xr filemon 4 .
1165 The meta file is created in OBJDIR as
1166 .Pa target.meta .
1167 These meta files track the command that was executed, its output, and the
1168 current directory.
1169 The
1170 .Xr filemon 4
1171 module is required unless
1172 .Va NO_FILEMON
1173 is defined.
1174 When the module is loaded, any files used by the commands executed are
1175 tracked as dependencies for the target in its meta file.
1176 The target is considered out-of-date and rebuilt if any of these
1177 conditions are true compared to the last build:
1178 .Bl -bullet -compact
1179 .It
1180 The command to execute changes.
1181 .It
1182 The current working directory changes.
1183 .It
1184 The target's meta file is missing.
1185 .It
1186 The target's meta file is missing filemon data when filemon is loaded
1187 and a previous run did not have it loaded.
1188 .It
1189 [requires
1190 .Xr filemon 4 ]
1191 Files read, executed or linked to are newer than the target.
1192 .It
1193 [requires
1194 .Xr filemon 4 ]
1195 Files read, written, executed or linked are missing.
1196 .El
1197 The meta files can also be useful for debugging.
1198 .Pp
1199 The build hides commands that are executed unless
1200 .Va NO_SILENT
1201 is defined.
1202 Errors cause
1203 .Xr make 1
1204 to show some of its environment for further debugging.
1205 .Pp
1206 The build operates as it normally would otherwise.
1207 This option originally invoked a different build system but that was renamed
1208 to
1209 .Va WITH_DIRDEPS_BUILD .
1210 .Pp
1211 Currently this also enforces
1212 .Va WITHOUT_SYSTEM_COMPILER .
1213 When set, these options are also in effect:
1214 .Pp
1215 .Bl -inset -compact
1216 .It Va WITHOUT_SYSTEM_COMPILER
1217 (unless
1218 .Va WITH_SYSTEM_COMPILER
1219 is set explicitly)
1220 .El
1221 .Pp
1222 This must be set in the environment, make command line, or
1223 .Pa /etc/src-env.conf ,
1224 not
1225 .Pa /etc/src.conf .
1226 .It Va WITHOUT_MLX5TOOL
1227 Set to not build
1228 .Xr mlx5tool 8
1229 .Pp
1230 This is a default setting on
1231 arm/arm, arm/armeb, arm/armv6, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32 and powerpc/powerpc.
1232 .It Va WITH_MLX5TOOL
1233 Set to build
1234 .Xr mlx5tool 8
1235 .Pp
1236 This is a default setting on
1237 amd64/amd64, arm64/aarch64, i386/i386, pc98/i386, powerpc/powerpc64 and sparc64/sparc64.
1238 .It Va WITH_NAND
1239 Set to build the NAND Flash components.
1240 .It Va WITHOUT_NDIS
1241 Set to not build programs and libraries
1242 related to NDIS emulation support.
1243 .It Va WITHOUT_NETCAT
1244 Set to not build
1245 .Xr nc 1
1246 utility.
1247 .It Va WITHOUT_NETGRAPH
1248 Set to not build applications to support
1249 .Xr netgraph 4 .
1250 When set, it enforces these options:
1251 .Pp
1252 .Bl -item -compact
1253 .It
1254 .Va WITHOUT_ATM
1255 .It
1256 .Va WITHOUT_BLUETOOTH
1257 .It
1258 .Va WITHOUT_NETGRAPH_SUPPORT
1259 .El
1260 .It Va WITHOUT_NETGRAPH_SUPPORT
1261 Set to build libraries, programs, and kernel modules without netgraph support.
1262 .It Va WITHOUT_NIS
1263 Set to not build
1264 .Xr NIS 8
1265 support and related programs.
1266 If set, you might need to adopt your
1267 .Xr nsswitch.conf 5
1268 and remove
1269 .Sq nis
1270 entries.
1271 .It Va WITHOUT_NLS
1272 Set to not build NLS catalogs.
1273 When set, it enforces these options:
1274 .Pp
1275 .Bl -item -compact
1276 .It
1277 .Va WITHOUT_NLS_CATALOGS
1278 .El
1279 .It Va WITHOUT_NLS_CATALOGS
1280 Set to not build NLS catalog support for
1281 .Xr csh 1 .
1282 .It Va WITHOUT_NS_CACHING
1283 Set to disable name caching in the
1284 .Pa nsswitch
1285 subsystem.
1286 The generic caching daemon,
1287 .Xr nscd 8 ,
1288 will not be built either if this option is set.
1289 .It Va WITHOUT_NTP
1290 Set to not build
1291 .Xr ntpd 8
1292 and related programs.
1293 .It Va WITH_OFED
1294 Set to build the
1295 .Dq "OpenFabrics Enterprise Distribution"
1296 Infiniband software stack.
1297 .It Va WITH_OFED_EXTRA
1298 Set to build the non-essential components of the
1299 .Dq "OpenFabrics Enterprise Distribution"
1300 Infiniband software stack, mostly examples.
1301 .It Va WITH_OPENLDAP
1302 Enable building openldap support for kerberos.
1303 .It Va WITHOUT_OPENSSH
1304 Set to not build OpenSSH.
1305 .It Va WITHOUT_OPENSSL
1306 Set to not build OpenSSL.
1307 When set, it enforces these options:
1308 .Pp
1309 .Bl -item -compact
1310 .It
1311 .Va WITHOUT_KERBEROS
1312 .It
1313 .Va WITHOUT_KERBEROS_SUPPORT
1314 .It
1315 .Va WITHOUT_OPENSSH
1316 .El
1317 .Pp
1318 When set, these options are also in effect:
1319 .Pp
1320 .Bl -inset -compact
1321 .It Va WITHOUT_GSSAPI
1322 (unless
1323 .Va WITH_GSSAPI
1324 is set explicitly)
1325 .El
1326 .It Va WITHOUT_PAM
1327 Set to not build PAM library and modules.
1328 .Bf -symbolic
1329 This option is deprecated and does nothing.
1330 .Ef
1331 When set, it enforces these options:
1332 .Pp
1333 .Bl -item -compact
1334 .It
1335 .Va WITHOUT_PAM_SUPPORT
1336 .El
1337 .It Va WITHOUT_PAM_SUPPORT
1338 Set to build some programs without PAM support, particularly
1339 .Xr ftpd 8
1340 and
1341 .Xr ppp 8 .
1342 .It Va WITHOUT_PC_SYSINSTALL
1343 Set to not build
1344 .Xr pc-sysinstall 8
1345 and related programs.
1346 .It Va WITHOUT_PF
1347 Set to not build PF firewall package.
1348 When set, it enforces these options:
1349 .Pp
1350 .Bl -item -compact
1351 .It
1352 .Va WITHOUT_AUTHPF
1353 .El
1354 .It Va WITHOUT_PKGBOOTSTRAP
1355 Set to not build
1356 .Xr pkg 7
1357 bootstrap tool.
1358 .It Va WITHOUT_PMC
1359 Set to not build
1360 .Xr pmccontrol 8
1361 and related programs.
1362 .It Va WITHOUT_PORTSNAP
1363 Set to not build or install
1364 .Xr portsnap 8
1365 and related files.
1366 .It Va WITHOUT_PPP
1367 Set to not build
1368 .Xr ppp 8
1369 and related programs.
1370 .It Va WITHOUT_PROFILE
1371 Set to not build profiled libraries for use with
1372 .Xr gprof 8 .
1373 .Pp
1374 This is a default setting on
1375 mips/mips64el and mips/mips64.
1376 .It Va WITH_PROFILE
1377 Set to build profiled libraries for use with
1378 .Xr gprof 8 .
1379 .Pp
1380 This is a default setting on
1381 amd64/amd64, arm/arm, arm/armeb, arm/armv6, arm64/aarch64, i386/i386, mips/mipsel, mips/mips, mips/mipsn32, pc98/i386, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
1382 .It Va WITHOUT_QUOTAS
1383 Set to not build
1384 .Xr quota 1
1385 and related programs.
1386 .It Va WITHOUT_RADIUS_SUPPORT
1387 Set to not build radius support into various applications, like
1388 .Xr pam_radius 8
1389 and
1390 .Xr ppp 8 .
1391 .It Va WITHOUT_RBOOTD
1392 Set to not build or install
1393 .Xr rbootd 8 .
1394 .It Va WITHOUT_RCMDS
1395 Disable building of the
1396 .Bx
1397 r-commands.
1398 This includes
1399 .Xr rlogin 1 ,
1400 .Xr rsh 1 ,
1401 etc.
1402 .It Va WITHOUT_RCS
1403 Set to not build
1404 .Xr rcs 1 ,
1405 .Xr etcupdate 8 ,
1406 and related utilities.
1407 .It Va WITH_REPRODUCIBLE_BUILD
1408 Set to exclude build metadata (such as the build time, user, or host)
1409 from the kernel, boot loaders, and uname output, so that builds produce
1410 bit-for-bit identical output.
1411 .It Va WITHOUT_RESCUE
1412 Set to not build
1413 .Xr rescue 8 .
1414 .It Va WITHOUT_ROUTED
1415 Set to not build
1416 .Xr routed 8
1417 utility.
1418 .It Va WITH_RPCBIND_WARMSTART_SUPPORT
1419 Set to build
1420 .Xr rpcbind 8
1421 with warmstart support.
1422 .It Va WITHOUT_SENDMAIL
1423 Set to not build
1424 .Xr sendmail 8
1425 and related programs.
1426 .It Va WITHOUT_SETUID_LOGIN
1427 Set this to disable the installation of
1428 .Xr login 1
1429 as a set-user-ID root program.
1430 .It Va WITHOUT_SHAREDOCS
1431 Set to not build the
1432 .Bx 4.4
1433 legacy docs.
1434 .It Va WITH_SHARED_TOOLCHAIN
1435 Set to build the toolchain binaries shared.
1436 The set includes
1437 .Xr cc 1 ,
1438 .Xr make 1
1439 and necessary utilities like assembler, linker and library archive manager.
1440 .It Va WITH_SORT_THREADS
1441 Set to enable threads in
1442 .Xr sort 1 .
1443 .It Va WITHOUT_SOURCELESS
1444 Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
1445 When set, it enforces these options:
1446 .Pp
1447 .Bl -item -compact
1448 .It
1449 .Va WITHOUT_SOURCELESS_HOST
1450 .It
1451 .Va WITHOUT_SOURCELESS_UCODE
1452 .El
1453 .It Va WITHOUT_SOURCELESS_HOST
1454 Set to not build kernel modules that include sourceless native code for host CPU.
1455 .It Va WITHOUT_SOURCELESS_UCODE
1456 Set to not build kernel modules that include sourceless microcode.
1457 .It Va WITHOUT_SSP
1458 Set to not build world with propolice stack smashing protection.
1459 .It Va WITH_STAGING
1460 Enable staging of files to a stage tree.
1461 This can be best thought of as auto-install to
1462 .Va DESTDIR
1463 with some extra meta data to ensure dependencies can be tracked.
1464 Depends on
1465 .Va WITH_DIRDEPS_BUILD .
1466 When set, these options are also in effect:
1467 .Pp
1468 .Bl -inset -compact
1469 .It Va WITH_STAGING_MAN
1470 (unless
1471 .Va WITHOUT_STAGING_MAN
1472 is set explicitly)
1473 .It Va WITH_STAGING_PROG
1474 (unless
1475 .Va WITHOUT_STAGING_PROG
1476 is set explicitly)
1477 .El
1478 .Pp
1479 This must be set in the environment, make command line, or
1480 .Pa /etc/src-env.conf ,
1481 not
1482 .Pa /etc/src.conf .
1483 .It Va WITH_STAGING_MAN
1484 Enable staging of man pages to stage tree.
1485 .It Va WITH_STAGING_PROG
1486 Enable staging of PROGs to stage tree.
1487 .It Va WITH_STALE_STAGED
1488 Check staged files are not stale.
1489 .It Va WITH_SVN
1490 Set to install
1491 .Xr svnlite 1
1492 as
1493 .Xr svn 1 .
1494 .It Va WITHOUT_SVNLITE
1495 Set to not build
1496 .Xr svnlite 1
1497 and related programs.
1498 .It Va WITHOUT_SYMVER
1499 Set to disable symbol versioning when building shared libraries.
1500 .It Va WITHOUT_SYSCONS
1501 Set to not build
1502 .Xr syscons 4
1503 support files such as keyboard maps, fonts, and screen output maps.
1504 .It Va WITH_SYSROOT
1505 Enable use of sysroot during build.
1506 Depends on
1507 .Va WITH_DIRDEPS_BUILD .
1508 .Pp
1509 This must be set in the environment, make command line, or
1510 .Pa /etc/src-env.conf ,
1511 not
1512 .Pa /etc/src.conf .
1513 .It Va WITHOUT_SYSTEM_COMPILER
1514 Set to not opportunistically skip building a cross-compiler during the
1515 bootstrap phase of the build.
1516 Normally, if the currently installed compiler matches the planned bootstrap
1517 compiler type and revision, then it will not be built.
1518 This does not prevent a compiler from being built for installation though,
1519 only for building one for the build itself.
1520 The
1521 .Va WITHOUT_CLANG
1522 and
1523 .Va WITHOUT_GCC
1524 options control those.
1525 .It Va WITHOUT_TALK
1526 Set to not build or install
1527 .Xr talk 1
1528 and
1529 .Xr talkd 8 .
1530 .It Va WITHOUT_TCP_WRAPPERS
1531 Set to not build or install
1532 .Xr tcpd 8 ,
1533 and related utilities.
1534 .It Va WITHOUT_TCSH
1535 Set to not build and install
1536 .Pa /bin/csh
1537 (which is
1538 .Xr tcsh 1 ) .
1539 .It Va WITHOUT_TELNET
1540 Set to not build
1541 .Xr telnet 1
1542 and related programs.
1543 .It Va WITHOUT_TESTS
1544 Set to not build nor install the
1545 .Fx
1546 Test Suite in
1547 .Pa /usr/tests/ .
1548 See
1549 .Xr tests 7
1550 for more details.
1551 This also disables the build of all test-related dependencies, including ATF.
1552 When set, it enforces these options:
1553 .Pp
1554 .Bl -item -compact
1555 .It
1556 .Va WITHOUT_DTRACE_TESTS
1557 .It
1558 .Va WITHOUT_TESTS_SUPPORT
1559 .El
1560 .It Va WITHOUT_TESTS_SUPPORT
1561 Set to disables the build of all test-related dependencies, including ATF.
1562 .It Va WITHOUT_TEXTPROC
1563 Set to not build
1564 programs used for text processing.
1565 When set, it enforces these options:
1566 .Pp
1567 .Bl -item -compact
1568 .It
1569 .Va WITHOUT_GROFF
1570 .El
1571 .It Va WITHOUT_TFTP
1572 Set to not build or install
1573 .Xr tftp 1
1574 and
1575 .Xr tftpd 8 .
1576 .It Va WITHOUT_TIMED
1577 Set to not build or install
1578 .Xr timed 8 .
1579 .It Va WITHOUT_TOOLCHAIN
1580 Set to not install header or
1581 programs used for program development,
1582 compilers, debuggers etc.
1583 When set, it enforces these options:
1584 .Pp
1585 .Bl -item -compact
1586 .It
1587 .Va WITHOUT_BINUTILS
1588 .It
1589 .Va WITHOUT_CLANG
1590 .It
1591 .Va WITHOUT_CLANG_EXTRAS
1592 .It
1593 .Va WITHOUT_CLANG_FULL
1594 .It
1595 .Va WITHOUT_GCC
1596 .It
1597 .Va WITHOUT_GDB
1598 .It
1599 .Va WITHOUT_INCLUDES
1600 .It
1601 .Va WITHOUT_LLD
1602 .It
1603 .Va WITHOUT_LLDB
1604 .El
1605 .It Va WITHOUT_UNBOUND
1606 Set to not build
1607 .Xr unbound 8
1608 and related programs.
1609 .It Va WITHOUT_USB
1610 Set to not build USB-related programs and libraries.
1611 .It Va WITHOUT_USB_GADGET_EXAMPLES
1612 Set to not build USB gadget kernel modules.
1613 .It Va WITHOUT_UTMPX
1614 Set to not build user accounting tools such as
1615 .Xr last 1 ,
1616 .Xr users 1 ,
1617 .Xr who 1 ,
1618 .Xr ac 8 ,
1619 .Xr lastlogin 8
1620 and
1621 .Xr utx 8 .
1622 .It Va WITHOUT_VI
1623 Set to not build and install vi, view, ex and related programs.
1624 .It Va WITHOUT_VT
1625 Set to not build
1626 .Xr vt 4
1627 support files (fonts and keymaps).
1628 .It Va WITHOUT_WARNS
1629 Set this to not add warning flags to the compiler invocations.
1630 Useful as a temporary workaround when code enters the tree
1631 which triggers warnings in environments that differ from the
1632 original developer.
1633 .It Va WITHOUT_WIRELESS
1634 Set to not build programs used for 802.11 wireless networks; especially
1635 .Xr wpa_supplicant 8
1636 and
1637 .Xr hostapd 8 .
1638 When set, it enforces these options:
1639 .Pp
1640 .Bl -item -compact
1641 .It
1642 .Va WITHOUT_WIRELESS_SUPPORT
1643 .El
1644 .It Va WITHOUT_WIRELESS_SUPPORT
1645 Set to build libraries, programs, and kernel modules without
1646 802.11 wireless support.
1647 .It Va WITHOUT_WPA_SUPPLICANT_EAPOL
1648 Build
1649 .Xr wpa_supplicant 8
1650 without support for the IEEE 802.1X protocol and without
1651 support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS
1652 protocols (usable only via 802.1X).
1653 .It Va WITHOUT_ZFS
1654 Set to not build ZFS file system.
1655 .It Va WITHOUT_ZONEINFO
1656 Set to not build the timezone database.
1657 When set, it enforces these options:
1658 .Pp
1659 .Bl -item -compact
1660 .It
1661 .Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT
1662 .It
1663 .Va WITHOUT_ZONEINFO_OLD_TIMEZONES_SUPPORT
1664 .El
1665 .It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT
1666 Set to build leapsecond information in to the timezone database.
1667 .It Va WITH_ZONEINFO_OLD_TIMEZONES_SUPPORT
1668 Set to build backward compatibility timezone aliases in to the timezone
1669 database.
1670 .El
1671 .Sh FILES
1672 .Bl -tag -compact -width Pa
1673 .It Pa /etc/src.conf
1674 .It Pa /etc/src-env.conf
1675 .It Pa /usr/share/mk/bsd.own.mk
1676 .El
1677 .Sh SEE ALSO
1678 .Xr make 1 ,
1679 .Xr make.conf 5 ,
1680 .Xr build 7 ,
1681 .Xr ports 7
1682 .Sh HISTORY
1683 The
1684 .Nm
1685 file appeared in
1686 .Fx 7.0 .
1687 .Sh AUTHORS
1688 This manual page was autogenerated by
1689 .An tools/build/options/makeman .