1.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. 2.\" $FreeBSD$ 3.Dd February 2, 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_FMTREE 634Set to not build and install 635.Pa /usr/sbin/fmtree . 636.It Va WITHOUT_FORMAT_EXTENSIONS 637Set to not enable 638.Fl fformat-extensions 639when compiling the kernel. 640Also disables all format checking. 641.It Va WITHOUT_FORTH 642Set to build bootloaders without Forth support. 643.It Va WITHOUT_FP_LIBC 644Set to build 645.Nm libc 646without floating-point support. 647.It Va WITHOUT_FREEBSD_UPDATE 648Set to not build 649.Xr freebsd-update 8 . 650.It Va WITHOUT_FTP 651Set to not build or install 652.Xr ftp 1 653and 654.Xr ftpd 8 . 655.It Va WITHOUT_GAMES 656Set to not build games. 657.It Va WITHOUT_GH_BC 658Set to not build and install the enhanced 659.Xr bc 1 660and 661.Xr dc 1 662programs instead of the traditional FreeBSD versions. 663.It Va WITHOUT_GNU_DIFF 664Set to not build GNU 665.Xr diff3 1 . 666.It Va WITHOUT_GOOGLETEST 667Set to neither build nor install 668.Lb libgmock , 669.Lb libgtest , 670and dependent tests. 671.Pp 672This is a default setting on 673mips/mips and mips/mips64. 674.It Va WITH_GOOGLETEST 675Set to build and install 676.Lb libgmock , 677.Lb libgtest , 678and dependent tests. 679.Pp 680This is a default setting on 681amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf. 682.It Va WITHOUT_GPIO 683Set to not build 684.Xr gpioctl 8 685as part of the base system. 686.It Va WITHOUT_GSSAPI 687Set to not build libgssapi. 688.It Va WITHOUT_HAST 689Set to not build 690.Xr hastd 8 691and related utilities. 692.It Va WITH_HESIOD 693Set to build Hesiod support. 694.It Va WITHOUT_HTML 695Set to not build HTML docs. 696.It Va WITHOUT_HYPERV 697Set to not build or install HyperV utilities. 698.Pp 699This is a default setting on 700arm/armv6, arm/armv7, arm64/aarch64, mips/mips, mips/mips64, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf. 701.It Va WITH_HYPERV 702Set to build or install HyperV utilities. 703.Pp 704This is a default setting on 705amd64/amd64 and i386/i386. 706.It Va WITHOUT_ICONV 707Set to not build iconv as part of libc. 708.It Va WITHOUT_INCLUDES 709Set to not install header files. 710This option used to be spelled 711.Va NO_INCS . 712.Bf -symbolic 713The option does not work for build targets. 714.Ef 715.It Va WITHOUT_INET 716Set to not build programs and libraries related to IPv4 networking. 717When set, it enforces these options: 718.Pp 719.Bl -item -compact 720.It 721.Va WITHOUT_INET_SUPPORT 722.El 723.It Va WITHOUT_INET6 724Set to not build 725programs and libraries related to IPv6 networking. 726When set, it enforces these options: 727.Pp 728.Bl -item -compact 729.It 730.Va WITHOUT_INET6_SUPPORT 731.El 732.It Va WITHOUT_INET6_SUPPORT 733Set to build libraries, programs, and kernel modules without IPv6 support. 734.It Va WITHOUT_INETD 735Set to not build 736.Xr inetd 8 . 737.It Va WITHOUT_INET_SUPPORT 738Set to build libraries, programs, and kernel modules without IPv4 support. 739.It Va WITH_INIT_ALL_PATTERN 740Set to build the base system or kernel with stack variables initialized to 741.Pq compiler defined 742debugging patterns on function entry. 743This option requires the clang compiler. 744.It Va WITH_INIT_ALL_ZERO 745Set to build the base system or kernel with stack variables initialized 746to zero on function entry. 747This option requires that the clang compiler be used. 748.It Va WITHOUT_INSTALLLIB 749Set this to not install optional libraries. 750For example, when creating a 751.Xr nanobsd 8 752image. 753.Bf -symbolic 754The option does not work for build targets. 755.Ef 756.It Va WITH_INSTALL_AS_USER 757Set to make install targets succeed for non-root users by installing 758files with owner and group attributes set to that of the user running 759the 760.Xr make 1 761command. 762The user still must set the 763.Va DESTDIR 764variable to point to a directory where the user has write permissions. 765.It Va WITHOUT_IPFILTER 766Set to not build IP Filter package. 767.It Va WITHOUT_IPFW 768Set to not build IPFW tools. 769.It Va WITHOUT_IPSEC_SUPPORT 770Set to not build the kernel with 771.Xr ipsec 4 772support. 773This option is needed for 774.Xr ipsec 4 775and 776.Xr tcpmd5 4 . 777.It Va WITHOUT_ISCSI 778Set to not build 779.Xr iscsid 8 780and related utilities. 781.It Va WITHOUT_JAIL 782Set to not build tools for the support of jails; e.g., 783.Xr jail 8 . 784.It Va WITHOUT_KDUMP 785Set to not build 786.Xr kdump 1 787and 788.Xr truss 1 . 789.It Va WITHOUT_KERBEROS 790Set this to not build Kerberos 5 (KTH Heimdal). 791When set, these options are also in effect: 792.Pp 793.Bl -inset -compact 794.It Va WITHOUT_GSSAPI 795(unless 796.Va WITH_GSSAPI 797is set explicitly) 798.It Va WITHOUT_KERBEROS_SUPPORT 799(unless 800.Va WITH_KERBEROS_SUPPORT 801is set explicitly) 802.El 803.It Va WITHOUT_KERBEROS_SUPPORT 804Set to build some programs without Kerberos support, like 805.Xr ssh 1 , 806.Xr telnet 1 , 807.Xr sshd 8 , 808and 809.Xr telnetd 8 . 810.It Va WITH_KERNEL_RETPOLINE 811Set to enable the "retpoline" mitigation for CVE-2017-5715 in the kernel 812build. 813.It Va WITHOUT_KERNEL_SYMBOLS 814Set to not install kernel symbol files. 815.Bf -symbolic 816This option is recommended for those people who have small root partitions. 817.Ef 818.It Va WITHOUT_KVM 819Set to not build the 820.Nm libkvm 821library as a part of the base system. 822.Bf -symbolic 823The option has no effect yet. 824.Ef 825When set, these options are also in effect: 826.Pp 827.Bl -inset -compact 828.It Va WITHOUT_KVM_SUPPORT 829(unless 830.Va WITH_KVM_SUPPORT 831is set explicitly) 832.El 833.It Va WITHOUT_KVM_SUPPORT 834Set to build some programs without optional 835.Nm libkvm 836support. 837.It Va WITHOUT_LDNS 838Setting this variable will prevent the LDNS library from being built. 839When set, it enforces these options: 840.Pp 841.Bl -item -compact 842.It 843.Va WITHOUT_LDNS_UTILS 844.It 845.Va WITHOUT_UNBOUND 846.El 847.It Va WITHOUT_LDNS_UTILS 848Setting this variable will prevent building the LDNS utilities 849.Xr drill 1 850and 851.Xr host 1 . 852.It Va WITHOUT_LEGACY_CONSOLE 853Set to not build programs that support a legacy PC console; e.g., 854.Xr kbdcontrol 1 855and 856.Xr vidcontrol 1 . 857.It Va WITHOUT_LIB32 858On 64-bit platforms, set to not build 32-bit library set and a 859.Nm ld-elf32.so.1 860runtime linker. 861.Pp 862This is a default setting on 863arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mips, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf. 864.It Va WITH_LIBSOFT 865On armv6 only, set to enable soft float ABI compatibility libraries. 866This option is for transitioning to the new hard float ABI. 867.It Va WITHOUT_LLD 868Set to not build LLVM's lld linker. 869.It Va WITHOUT_LLDB 870Set to not build the LLDB debugger. 871.Pp 872This is a default setting on 873arm/armv6, arm/armv7, mips/mips, mips/mips64, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf. 874.It Va WITH_LLDB 875Set to build the LLDB debugger. 876.Pp 877This is a default setting on 878amd64/amd64, arm64/aarch64 and i386/i386. 879.It Va WITHOUT_LLD_BOOTSTRAP 880Set to not build the LLD linker during the bootstrap phase of 881the build. 882To be able to build the system an alternate linker must be provided via XLD. 883.It Va WITHOUT_LLD_IS_LD 884Do not install a 885.Pa /usr/bin/ld symlink 886to 887.Pa ld.lld . 888The system will not have a usable tool chain unless a linker is provided 889some other way. 890.It Va WITHOUT_LLVM_ASSERTIONS 891Set to disable debugging assertions in LLVM. 892.It Va WITHOUT_LLVM_COV 893Set to not build the 894.Xr llvm-cov 1 895tool. 896.It Va WITHOUT_LLVM_CXXFILT 897Install ELF Tool Chain's cxxfilt as c++filt, instead of LLVM's llvm-cxxfilt. 898.It Va WITHOUT_LLVM_TARGET_AARCH64 899Set to not build LLVM target support for AArch64. 900The 901.Va LLVM_TARGET_ALL 902option should be used rather than this in most cases. 903.It Va WITHOUT_LLVM_TARGET_ALL 904Set to only build the required LLVM target support. 905This option is preferred to specific target support options. 906When set, these options are also in effect: 907.Pp 908.Bl -inset -compact 909.It Va WITHOUT_LLVM_TARGET_AARCH64 910(unless 911.Va WITH_LLVM_TARGET_AARCH64 912is set explicitly) 913.It Va WITHOUT_LLVM_TARGET_ARM 914(unless 915.Va WITH_LLVM_TARGET_ARM 916is set explicitly) 917.It Va WITHOUT_LLVM_TARGET_MIPS 918(unless 919.Va WITH_LLVM_TARGET_MIPS 920is set explicitly) 921.It Va WITHOUT_LLVM_TARGET_POWERPC 922(unless 923.Va WITH_LLVM_TARGET_POWERPC 924is set explicitly) 925.It Va WITHOUT_LLVM_TARGET_RISCV 926(unless 927.Va WITH_LLVM_TARGET_RISCV 928is set explicitly) 929.El 930.It Va WITHOUT_LLVM_TARGET_ARM 931Set to not build LLVM target support for ARM. 932The 933.Va LLVM_TARGET_ALL 934option should be used rather than this in most cases. 935.It Va WITH_LLVM_TARGET_BPF 936Set to build LLVM target support for BPF. 937The 938.Va LLVM_TARGET_ALL 939option should be used rather than this in most cases. 940.It Va WITHOUT_LLVM_TARGET_MIPS 941Set to not build LLVM target support for MIPS. 942The 943.Va LLVM_TARGET_ALL 944option should be used rather than this in most cases. 945.It Va WITHOUT_LLVM_TARGET_POWERPC 946Set to not build LLVM target support for PowerPC. 947The 948.Va LLVM_TARGET_ALL 949option should be used rather than this in most cases. 950.It Va WITHOUT_LLVM_TARGET_RISCV 951Set to not build LLVM target support for RISC-V. 952The 953.Va LLVM_TARGET_ALL 954option should be used rather than this in most cases. 955.It Va WITHOUT_LLVM_TARGET_X86 956Set to not build LLVM target support for X86. 957The 958.Va LLVM_TARGET_ALL 959option should be used rather than this in most cases. 960.It Va WITH_LOADER_EFI_SECUREBOOT 961Enable building 962.Xr loader 8 963with support for verification based on certificates obtained from UEFI. 964.Pp 965.It Va WITH_LOADER_FIREWIRE 966Enable firewire support in /boot/loader on x86. 967This option is a nop on all other platforms. 968.It Va WITHOUT_LOADER_GELI 969Disable inclusion of GELI crypto support in the boot chain binaries. 970.Pp 971This is a default setting on 972powerpc/powerpc and powerpc/powerpc64. 973.It Va WITH_LOADER_GELI 974Set to build GELI bootloader support. 975.Pp 976This is a default setting on 977amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mips, mips/mips64, riscv/riscv64 and riscv/riscv64sf. 978.It Va WITHOUT_LOADER_LUA 979Set to not build LUA bindings for the boot loader. 980.Pp 981This is a default setting on 982powerpc/powerpc and powerpc/powerpc64. 983.It Va WITH_LOADER_LUA 984Set to build LUA bindings for the boot loader. 985.Pp 986This is a default setting on 987amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mips, mips/mips64, riscv/riscv64 and riscv/riscv64sf. 988.It Va WITHOUT_LOADER_OFW 989Disable building of openfirmware bootloader components. 990.Pp 991This is a default setting on 992amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mips, mips/mips64, riscv/riscv64 and riscv/riscv64sf. 993.It Va WITH_LOADER_OFW 994Set to build openfirmware bootloader components. 995.Pp 996This is a default setting on 997powerpc/powerpc and powerpc/powerpc64. 998.It Va WITHOUT_LOADER_UBOOT 999Disable building of ubldr. 1000.Pp 1001This is a default setting on 1002amd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf. 1003.It Va WITH_LOADER_UBOOT 1004Set to build ubldr. 1005.Pp 1006This is a default setting on 1007arm/armv6, arm/armv7, mips/mips, mips/mips64, powerpc/powerpc and powerpc/powerpc64. 1008.It Va WITH_LOADER_VERBOSE 1009Set to build with extra verbose debugging in the loader. 1010May explode already nearly too large loader over the limit. 1011Use with care. 1012.It Va WITH_LOADER_VERIEXEC 1013Enable building 1014.Xr loader 8 1015with support for verification similar to Verified Exec. 1016.Pp 1017Depends on 1018.Va WITH_BEARSSL . 1019When set, these options are also in effect: 1020.Pp 1021.Bl -inset -compact 1022.It Va WITH_LOADER_EFI_SECUREBOOT 1023(unless 1024.Va WITHOUT_LOADER_EFI_SECUREBOOT 1025is set explicitly) 1026.It Va WITH_LOADER_VERIEXEC_VECTX 1027(unless 1028.Va WITHOUT_LOADER_VERIEXEC_VECTX 1029is set explicitly) 1030.El 1031.It Va WITH_LOADER_VERIEXEC_PASS_MANIFEST 1032Enable building 1033.Xr loader 8 1034with support to pass a verified manifest to the kernel. 1035The kernel has to be built with a module to parse the manifest. 1036.Pp 1037Depends on 1038.Va WITH_LOADER_VERIEXEC . 1039.It Va WITHOUT_LOADER_ZFS 1040Set to not build ZFS file system boot loader support. 1041.It Va WITHOUT_LOCALES 1042Set to not build localization files; see 1043.Xr locale 1 . 1044.It Va WITHOUT_LOCATE 1045Set to not build 1046.Xr locate 1 1047and related programs. 1048.It Va WITHOUT_LPR 1049Set to not build 1050.Xr lpr 1 1051and related programs. 1052.It Va WITHOUT_LS_COLORS 1053Set to build 1054.Xr ls 1 1055without support for colors to distinguish file types. 1056.It Va WITHOUT_LZMA_SUPPORT 1057Set to build some programs without optional lzma compression support. 1058.It Va WITHOUT_MAIL 1059Set to not build any mail support (MUA or MTA). 1060When set, it enforces these options: 1061.Pp 1062.Bl -item -compact 1063.It 1064.Va WITHOUT_DMAGENT 1065.It 1066.Va WITHOUT_MAILWRAPPER 1067.It 1068.Va WITHOUT_SENDMAIL 1069.El 1070.It Va WITHOUT_MAILWRAPPER 1071Set to not build the 1072.Xr mailwrapper 8 1073MTA selector. 1074.It Va WITHOUT_MAKE 1075Set to not install 1076.Xr make 1 1077and related support files. 1078.It Va WITHOUT_MAKE_CHECK_USE_SANDBOX 1079Set to not execute 1080.Dq Li "make check" 1081in limited sandbox mode. 1082This option should be paired with 1083.Va WITH_INSTALL_AS_USER 1084if executed as an unprivileged user. 1085See 1086.Xr tests 7 1087for more details. 1088.It Va WITH_MALLOC_PRODUCTION 1089Set to disable assertions and statistics gathering in 1090.Xr malloc 3 . 1091It also defaults the A and J runtime options to off. 1092.It Va WITHOUT_MAN 1093Set to not build manual pages. 1094When set, these options are also in effect: 1095.Pp 1096.Bl -inset -compact 1097.It Va WITHOUT_MAN_UTILS 1098(unless 1099.Va WITH_MAN_UTILS 1100is set explicitly) 1101.El 1102.It Va WITHOUT_MANCOMPRESS 1103Set to not to install compressed man pages. 1104Only the uncompressed versions will be installed. 1105.It Va WITHOUT_MAN_UTILS 1106Set to not build utilities for manual pages, 1107.Xr apropos 1 , 1108.Xr makewhatis 1 , 1109.Xr man 1 , 1110.Xr whatis 1 , 1111.Xr manctl 8 , 1112and related support files. 1113.It Va WITH_META_MODE 1114Create 1115.Xr make 1 1116meta files when building, which can provide a reliable incremental build when 1117using 1118.Xr filemon 4 . 1119The meta file is created in OBJDIR as 1120.Pa target.meta . 1121These meta files track the command that was executed, its output, and the 1122current directory. 1123The 1124.Xr filemon 4 1125module is required unless 1126.Va NO_FILEMON 1127is defined. 1128When the module is loaded, any files used by the commands executed are 1129tracked as dependencies for the target in its meta file. 1130The target is considered out-of-date and rebuilt if any of these 1131conditions are true compared to the last build: 1132.Bl -bullet -compact 1133.It 1134The command to execute changes. 1135.It 1136The current working directory changes. 1137.It 1138The target's meta file is missing. 1139.It 1140The target's meta file is missing filemon data when filemon is loaded 1141and a previous run did not have it loaded. 1142.It 1143[requires 1144.Xr filemon 4 ] 1145Files read, executed or linked to are newer than the target. 1146.It 1147[requires 1148.Xr filemon 4 ] 1149Files read, written, executed or linked are missing. 1150.El 1151The meta files can also be useful for debugging. 1152.Pp 1153The build hides commands that are executed unless 1154.Va NO_SILENT 1155is defined. 1156Errors cause 1157.Xr make 1 1158to show some of its environment for further debugging. 1159.Pp 1160The build operates as it normally would otherwise. 1161This option originally invoked a different build system but that was renamed 1162to 1163.Va WITH_DIRDEPS_BUILD . 1164.Pp 1165This must be set in the environment, make command line, or 1166.Pa /etc/src-env.conf , 1167not 1168.Pa /etc/src.conf . 1169.It Va WITHOUT_MLX5TOOL 1170Set to not build 1171.Xr mlx5tool 8 1172.Pp 1173This is a default setting on 1174arm/armv6, arm/armv7, mips/mips, mips/mips64, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf. 1175.It Va WITH_MLX5TOOL 1176Set to build 1177.Xr mlx5tool 8 1178.Pp 1179This is a default setting on 1180amd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64. 1181.It Va WITHOUT_NETCAT 1182Set to not build 1183.Xr nc 1 1184utility. 1185.It Va WITHOUT_NETGRAPH 1186Set to not build applications to support 1187.Xr netgraph 4 . 1188When set, it enforces these options: 1189.Pp 1190.Bl -item -compact 1191.It 1192.Va WITHOUT_ATM 1193.It 1194.Va WITHOUT_BLUETOOTH 1195.El 1196.Pp 1197When set, these options are also in effect: 1198.Pp 1199.Bl -inset -compact 1200.It Va WITHOUT_NETGRAPH_SUPPORT 1201(unless 1202.Va WITH_NETGRAPH_SUPPORT 1203is set explicitly) 1204.El 1205.It Va WITHOUT_NETGRAPH_SUPPORT 1206Set to build libraries, programs, and kernel modules without netgraph support. 1207.It Va WITHOUT_NIS 1208Set to not build 1209.Xr NIS 8 1210support and related programs. 1211If set, you might need to adopt your 1212.Xr nsswitch.conf 5 1213and remove 1214.Sq nis 1215entries. 1216.It Va WITHOUT_NLS 1217Set to not build NLS catalogs. 1218When set, it enforces these options: 1219.Pp 1220.Bl -item -compact 1221.It 1222.Va WITHOUT_NLS_CATALOGS 1223.El 1224.It Va WITHOUT_NLS_CATALOGS 1225Set to not build NLS catalog support for 1226.Xr csh 1 . 1227.It Va WITHOUT_NS_CACHING 1228Set to disable name caching in the 1229.Pa nsswitch 1230subsystem. 1231The generic caching daemon, 1232.Xr nscd 8 , 1233will not be built either if this option is set. 1234.It Va WITHOUT_NTP 1235Set to not build 1236.Xr ntpd 8 1237and related programs. 1238.It Va WITHOUT_NVME 1239Set to not build nvme related tools and kernel modules. 1240.Pp 1241This is a default setting on 1242arm/armv6, arm/armv7, mips/mips, mips/mips64, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf. 1243.It Va WITH_NVME 1244Set to build nvme related tools and kernel modules. 1245.Pp 1246This is a default setting on 1247amd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64. 1248.It Va WITHOUT_OFED 1249Set to disable the build of the 1250.Dq "OpenFabrics Enterprise Distribution" 1251Infiniband software stack, including kernel modules and userspace libraries. 1252.Pp 1253This is a default setting on 1254riscv/riscv64 and riscv/riscv64sf. 1255When set, it enforces these options: 1256.Pp 1257.Bl -item -compact 1258.It 1259.Va WITHOUT_OFED_EXTRA 1260.El 1261.It Va WITH_OFED_EXTRA 1262Set to build the non-essential components of the 1263.Dq "OpenFabrics Enterprise Distribution" 1264Infiniband software stack, mostly examples. 1265.It Va WITH_OPENLDAP 1266Enable building LDAP support for kerberos using an openldap client from ports. 1267.It Va WITHOUT_OPENMP 1268Set to not build LLVM's OpenMP runtime. 1269.Pp 1270This is a default setting on 1271arm/armv6, arm/armv7, mips/mips, mips/mips64, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf. 1272.It Va WITH_OPENMP 1273Set to build LLVM's OpenMP runtime. 1274.Pp 1275This is a default setting on 1276amd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64. 1277.It Va WITHOUT_OPENSSH 1278Set to not build OpenSSH. 1279.It Va WITHOUT_OPENSSL 1280Set to not build OpenSSL. 1281When set, it enforces these options: 1282.Pp 1283.Bl -item -compact 1284.It 1285.Va WITHOUT_DMAGENT 1286.It 1287.Va WITHOUT_KERBEROS 1288.It 1289.Va WITHOUT_KERBEROS_SUPPORT 1290.It 1291.Va WITHOUT_LDNS 1292.It 1293.Va WITHOUT_LDNS_UTILS 1294.It 1295.Va WITHOUT_OPENSSH 1296.It 1297.Va WITHOUT_PKGBOOTSTRAP 1298.It 1299.Va WITHOUT_SVN 1300.It 1301.Va WITHOUT_SVNLITE 1302.It 1303.Va WITHOUT_UNBOUND 1304.It 1305.Va WITHOUT_ZFS 1306.El 1307.Pp 1308When set, these options are also in effect: 1309.Pp 1310.Bl -inset -compact 1311.It Va WITHOUT_GSSAPI 1312(unless 1313.Va WITH_GSSAPI 1314is set explicitly) 1315.El 1316.It Va WITHOUT_OPENSSL_KTLS 1317Set to not include kernel TLS support in OpenSSL. 1318.Pp 1319This is a default setting on 1320arm/armv6, arm/armv7, i386/i386, mips/mips, mips/mips64, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf. 1321.It Va WITH_OPENSSL_KTLS 1322Set to include kernel TLS support in OpenSSL. 1323.Pp 1324This is a default setting on 1325amd64/amd64 and arm64/aarch64. 1326.It Va WITHOUT_PAM 1327Set to not build PAM library and modules. 1328.Bf -symbolic 1329This option is deprecated and does nothing. 1330.Ef 1331When set, these options are also in effect: 1332.Pp 1333.Bl -inset -compact 1334.It Va WITHOUT_PAM_SUPPORT 1335(unless 1336.Va WITH_PAM_SUPPORT 1337is set explicitly) 1338.El 1339.It Va WITHOUT_PAM_SUPPORT 1340Set to build some programs without PAM support, particularly 1341.Xr ftpd 8 1342and 1343.Xr ppp 8 . 1344.It Va WITHOUT_PF 1345Set to not build PF firewall package. 1346When set, it enforces these options: 1347.Pp 1348.Bl -item -compact 1349.It 1350.Va WITHOUT_AUTHPF 1351.El 1352.It Va WITH_PIE 1353Build dynamically linked binaries as 1354Position-Independent Executable (PIE). 1355.It Va WITHOUT_PKGBOOTSTRAP 1356Set to not build 1357.Xr pkg 7 1358bootstrap tool. 1359.It Va WITHOUT_PMC 1360Set to not build 1361.Xr pmccontrol 8 1362and related programs. 1363.It Va WITHOUT_PORTSNAP 1364Set to not build or install 1365.Xr portsnap 8 1366and related files. 1367.It Va WITHOUT_PPP 1368Set to not build 1369.Xr ppp 8 1370and related programs. 1371.It Va WITHOUT_PROFILE 1372Set to not build profiled libraries for use with 1373.Xr gprof 8 . 1374.Pp 1375This is a default setting on 1376mips/mips64. 1377.It Va WITH_PROFILE 1378Set to build profiled libraries for use with 1379.Xr gprof 8 . 1380.Pp 1381This is a default setting on 1382amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, mips/mips, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf. 1383.It Va WITHOUT_QUOTAS 1384Set to not build 1385.Xr quota 1 1386and related programs. 1387.It Va WITHOUT_RADIUS_SUPPORT 1388Set to not build radius support into various applications, like 1389.Xr pam_radius 8 1390and 1391.Xr ppp 8 . 1392.It Va WITH_RATELIMIT 1393Set to build the system with rate limit support. 1394.Pp 1395This makes 1396.Dv SO_MAX_PACING_RATE 1397effective in 1398.Xr getsockopt 2 , 1399and 1400.Ar txrlimit 1401support in 1402.Xr ifconfig 8 , 1403by proxy. 1404.It Va WITHOUT_RBOOTD 1405Set to not build or install 1406.Xr rbootd 8 . 1407.It Va WITH_REPRODUCIBLE_BUILD 1408Set to exclude build metadata (such as the build time, user, or host) 1409from the kernel, boot loaders, and uname output, so that builds produce 1410bit-for-bit identical output. 1411.It Va WITHOUT_RESCUE 1412Set to not build 1413.Xr rescue 8 . 1414.It Va WITH_RETPOLINE 1415Set to build the base system with the retpoline speculative execution 1416vulnerability mitigation for CVE-2017-5715. 1417.It Va WITHOUT_ROUTED 1418Set to not build 1419.Xr routed 8 1420utility. 1421.It Va WITH_RPCBIND_WARMSTART_SUPPORT 1422Set to build 1423.Xr rpcbind 8 1424with warmstart support. 1425.It Va WITHOUT_SENDMAIL 1426Set to not build 1427.Xr sendmail 8 1428and related programs. 1429.It Va WITHOUT_SERVICESDB 1430Set to not install 1431.Pa /var/db/services.db . 1432.It Va WITHOUT_SETUID_LOGIN 1433Set this to disable the installation of 1434.Xr login 1 1435as a set-user-ID root program. 1436.It Va WITHOUT_SHAREDOCS 1437Set to not build the 1438.Bx 4.4 1439legacy docs. 1440.It Va WITHOUT_SHARED_TOOLCHAIN 1441Set to build the toolchain binaries as statically linked executables. 1442The set includes 1443.Xr cc 1 , 1444.Xr make 1 1445and necessary utilities like assembler, linker and library archive manager. 1446.It Va WITH_SORT_THREADS 1447Set to enable threads in 1448.Xr sort 1 . 1449.It Va WITHOUT_SOURCELESS 1450Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU). 1451When set, it enforces these options: 1452.Pp 1453.Bl -item -compact 1454.It 1455.Va WITHOUT_SOURCELESS_HOST 1456.It 1457.Va WITHOUT_SOURCELESS_UCODE 1458.El 1459.It Va WITHOUT_SOURCELESS_HOST 1460Set to not build kernel modules that include sourceless native code for host CPU. 1461.It Va WITHOUT_SOURCELESS_UCODE 1462Set to not build kernel modules that include sourceless microcode. 1463.It Va WITHOUT_SSP 1464Set to not build world with propolice stack smashing protection. 1465.Pp 1466This is a default setting on 1467mips/mips and mips/mips64. 1468.It Va WITH_SSP 1469Set to build world with propolice stack smashing protection. 1470.Pp 1471This is a default setting on 1472amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf. 1473.It Va WITH_STAGING 1474Enable staging of files to a stage tree. 1475This can be best thought of as auto-install to 1476.Va DESTDIR 1477with some extra meta data to ensure dependencies can be tracked. 1478Depends on 1479.Va WITH_DIRDEPS_BUILD . 1480When set, these options are also in effect: 1481.Pp 1482.Bl -inset -compact 1483.It Va WITH_STAGING_MAN 1484(unless 1485.Va WITHOUT_STAGING_MAN 1486is set explicitly) 1487.It Va WITH_STAGING_PROG 1488(unless 1489.Va WITHOUT_STAGING_PROG 1490is set explicitly) 1491.El 1492.Pp 1493This must be set in the environment, make command line, or 1494.Pa /etc/src-env.conf , 1495not 1496.Pa /etc/src.conf . 1497.It Va WITH_STAGING_MAN 1498Enable staging of man pages to stage tree. 1499.It Va WITH_STAGING_PROG 1500Enable staging of PROGs to stage tree. 1501.It Va WITH_STALE_STAGED 1502Check staged files are not stale. 1503.It Va WITHOUT_STATS 1504Set to neither build nor install 1505.Lb libstats 1506and dependent binaries. 1507.It Va WITH_SVN 1508Set to install 1509.Xr svnlite 1 1510as 1511.Xr svn 1 . 1512.It Va WITHOUT_SVNLITE 1513Set to not build 1514.Xr svnlite 1 1515and related programs. 1516.It Va WITHOUT_SYSCONS 1517Set to not build 1518.Xr syscons 4 1519support files such as keyboard maps, fonts, and screen output maps. 1520.It Va WITH_SYSROOT 1521Enable use of sysroot during build. 1522Depends on 1523.Va WITH_DIRDEPS_BUILD . 1524.Pp 1525This must be set in the environment, make command line, or 1526.Pa /etc/src-env.conf , 1527not 1528.Pa /etc/src.conf . 1529.It Va WITHOUT_SYSTEM_COMPILER 1530Set to not opportunistically skip building a cross-compiler during the 1531bootstrap phase of the build. 1532Normally, if the currently installed compiler matches the planned bootstrap 1533compiler type and revision, then it will not be built. 1534This does not prevent a compiler from being built for installation though, 1535only for building one for the build itself. 1536The 1537.Va WITHOUT_CLANG 1538option controls that. 1539.It Va WITHOUT_SYSTEM_LINKER 1540Set to not opportunistically skip building a cross-linker during the 1541bootstrap phase of the build. 1542Normally, if the currently installed linker matches the planned bootstrap 1543linker type and revision, then it will not be built. 1544This does not prevent a linker from being built for installation though, 1545only for building one for the build itself. 1546The 1547.Va WITHOUT_LLD 1548option controls that. 1549.Pp 1550This option is only relevant when 1551.Va WITH_LLD_BOOTSTRAP 1552is set. 1553.It Va WITHOUT_TALK 1554Set to not build or install 1555.Xr talk 1 1556and 1557.Xr talkd 8 . 1558.It Va WITHOUT_TCP_WRAPPERS 1559Set to not build or install 1560.Xr tcpd 8 , 1561and related utilities. 1562.It Va WITHOUT_TCSH 1563Set to not build and install 1564.Pa /bin/csh 1565(which is 1566.Xr tcsh 1 ) . 1567.It Va WITHOUT_TELNET 1568Set to not build 1569.Xr telnet 1 1570and related programs. 1571.It Va WITHOUT_TESTS 1572Set to not build nor install the 1573.Fx 1574Test Suite in 1575.Pa /usr/tests/ . 1576See 1577.Xr tests 7 1578for more details. 1579This also disables the build of all test-related dependencies, including ATF. 1580When set, it enforces these options: 1581.Pp 1582.Bl -item -compact 1583.It 1584.Va WITHOUT_DTRACE_TESTS 1585.El 1586.Pp 1587When set, these options are also in effect: 1588.Pp 1589.Bl -inset -compact 1590.It Va WITHOUT_GOOGLETEST 1591(unless 1592.Va WITH_GOOGLETEST 1593is set explicitly) 1594.It Va WITHOUT_TESTS_SUPPORT 1595(unless 1596.Va WITH_TESTS_SUPPORT 1597is set explicitly) 1598.El 1599.It Va WITHOUT_TESTS_SUPPORT 1600Set to disables the build of all test-related dependencies, including ATF. 1601When set, it enforces these options: 1602.Pp 1603.Bl -item -compact 1604.It 1605.Va WITHOUT_GOOGLETEST 1606.El 1607.It Va WITHOUT_TEXTPROC 1608Set to not build 1609programs used for text processing. 1610.It Va WITHOUT_TFTP 1611Set to not build or install 1612.Xr tftp 1 1613and 1614.Xr tftpd 8 . 1615.It Va WITHOUT_TOOLCHAIN 1616Set to not install header or 1617programs used for program development, 1618compilers, debuggers etc. 1619When set, it enforces these options: 1620.Pp 1621.Bl -item -compact 1622.It 1623.Va WITHOUT_CLANG 1624.It 1625.Va WITHOUT_CLANG_EXTRAS 1626.It 1627.Va WITHOUT_CLANG_FORMAT 1628.It 1629.Va WITHOUT_CLANG_FULL 1630.It 1631.Va WITHOUT_INCLUDES 1632.It 1633.Va WITHOUT_LLD 1634.It 1635.Va WITHOUT_LLDB 1636.It 1637.Va WITHOUT_LLVM_COV 1638.El 1639.It Va WITHOUT_UNBOUND 1640Set to not build 1641.Xr unbound 8 1642and related programs. 1643.It Va WITHOUT_UNIFIED_OBJDIR 1644Set to use the historical object directory format for 1645.Xr build 7 1646targets. 1647For native-builds and builds done directly in sub-directories the format of 1648.Pa ${MAKEOBJDIRPREFIX}/${.CURDIR} 1649is used, 1650while for cross-builds 1651.Pa ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR} 1652is used. 1653.Pp 1654This option is transitional and will be removed before the 12.0 release, 1655at which time 1656.va WITH_UNIFIED_OBJDIR 1657will be enabled permanently. 1658.Pp 1659This must be set in the environment, make command line, or 1660.Pa /etc/src-env.conf , 1661not 1662.Pa /etc/src.conf . 1663.It Va WITHOUT_USB 1664Set to not build USB-related programs and libraries. 1665.It Va WITHOUT_USB_GADGET_EXAMPLES 1666Set to not build USB gadget kernel modules. 1667.It Va WITHOUT_UTMPX 1668Set to not build user accounting tools such as 1669.Xr last 1 , 1670.Xr users 1 , 1671.Xr who 1 , 1672.Xr ac 8 , 1673.Xr lastlogin 8 1674and 1675.Xr utx 8 . 1676.It Va WITH_VERIEXEC 1677Enable building 1678.Xr veriexec 8 1679which loads the contents of verified manifests into the kernel 1680for use by 1681.Xr mac_veriexec 4 1682.Pp 1683Depends on 1684.Va WITH_BEARSSL . 1685.It Va WITHOUT_VI 1686Set to not build and install vi, view, ex and related programs. 1687.It Va WITHOUT_VT 1688Set to not build 1689.Xr vt 4 1690support files (fonts and keymaps). 1691.It Va WITHOUT_WARNS 1692Set this to not add warning flags to the compiler invocations. 1693Useful as a temporary workaround when code enters the tree 1694which triggers warnings in environments that differ from the 1695original developer. 1696.It Va WITHOUT_WERROR 1697Set this to not treat compiler warnings as errors. 1698Useful as a temporary workaround when working on fixing compiler warnings. 1699When set, warnings are still printed in the build log but do not fail the build. 1700.It Va WITHOUT_WIRELESS 1701Set to not build programs used for 802.11 wireless networks; especially 1702.Xr wpa_supplicant 8 1703and 1704.Xr hostapd 8 . 1705When set, these options are also in effect: 1706.Pp 1707.Bl -inset -compact 1708.It Va WITHOUT_WIRELESS_SUPPORT 1709(unless 1710.Va WITH_WIRELESS_SUPPORT 1711is set explicitly) 1712.El 1713.It Va WITHOUT_WIRELESS_SUPPORT 1714Set to build libraries, programs, and kernel modules without 1715802.11 wireless support. 1716.It Va WITHOUT_WPA_SUPPLICANT_EAPOL 1717Build 1718.Xr wpa_supplicant 8 1719without support for the IEEE 802.1X protocol and without 1720support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS 1721protocols (usable only via 802.1X). 1722.It Va WITHOUT_ZFS 1723Set to not build ZFS file system kernel module, libraries, and user commands. 1724.It Va WITHOUT_ZONEINFO 1725Set to not build the timezone database. 1726When set, it enforces these options: 1727.Pp 1728.Bl -item -compact 1729.It 1730.Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT 1731.El 1732.It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT 1733Set to build leapsecond information in to the timezone database. 1734.El 1735.Sh FILES 1736.Bl -tag -compact -width Pa 1737.It Pa /etc/src.conf 1738.It Pa /etc/src-env.conf 1739.It Pa /usr/share/mk/bsd.own.mk 1740.El 1741.Sh SEE ALSO 1742.Xr make 1 , 1743.Xr make.conf 5 , 1744.Xr build 7 , 1745.Xr ports 7 1746.Sh HISTORY 1747The 1748.Nm 1749file appeared in 1750.Fx 7.0 . 1751.Sh AUTHORS 1752This manual page was autogenerated by 1753.An tools/build/options/makeman . 1754