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