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