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