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