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