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