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