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