1.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. 2.\" $FreeBSD$ 3.Dd September 18, 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.Pp 811This is a default setting on 812arm/arm, arm/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, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 813.It Va WITH_HYPERV 814Set to build or install HyperV utilities. 815.Pp 816This is a default setting on 817amd64/amd64 and i386/i386. 818.It Va WITHOUT_ICONV 819Set to not build iconv as part of libc. 820.It Va WITHOUT_INCLUDES 821Set to not install header files. 822This option used to be spelled 823.Va NO_INCS . 824.Bf -symbolic 825The option does not work for build targets. 826.Ef 827.It Va WITHOUT_INET 828Set to not build programs and libraries related to IPv4 networking. 829When set, it enforces these options: 830.Pp 831.Bl -item -compact 832.It 833.Va WITHOUT_INET_SUPPORT 834.El 835.It Va WITHOUT_INET6 836Set to not build 837programs and libraries related to IPv6 networking. 838When set, it enforces these options: 839.Pp 840.Bl -item -compact 841.It 842.Va WITHOUT_INET6_SUPPORT 843.El 844.It Va WITHOUT_INET6_SUPPORT 845Set to build libraries, programs, and kernel modules without IPv6 support. 846.It Va WITHOUT_INETD 847Set to not build 848.Xr inetd 8 . 849.It Va WITHOUT_INET_SUPPORT 850Set to build libraries, programs, and kernel modules without IPv4 support. 851.It Va WITHOUT_INSTALLLIB 852Set this to not install optional libraries. 853For example, when creating a 854.Xr nanobsd 8 855image. 856.Bf -symbolic 857The option does not work for build targets. 858.Ef 859.It Va WITH_INSTALL_AS_USER 860Set to make install targets succeed for non-root users by installing 861files with owner and group attributes set to that of the user running 862the 863.Xr make 1 864command. 865The user still must set the 866.Va DESTDIR 867variable to point to a directory where the user has write permissions. 868.It Va WITHOUT_IPFILTER 869Set to not build IP Filter package. 870.It Va WITHOUT_IPFW 871Set to not build IPFW tools. 872.It Va WITHOUT_IPSEC_SUPPORT 873Set to not build the kernel with 874.Xr ipsec 4 875support. 876This option is needed for 877.Xr ipsec 4 878and 879.Xr tcpmd5 4 . 880.It Va WITHOUT_ISCSI 881Set to not build 882.Xr iscsid 8 883and related utilities. 884.It Va WITHOUT_JAIL 885Set to not build tools for the support of jails; e.g., 886.Xr jail 8 . 887.It Va WITHOUT_KDUMP 888Set to not build 889.Xr kdump 1 890and 891.Xr truss 1 . 892.It Va WITHOUT_KERBEROS 893Set this to not build Kerberos 5 (KTH Heimdal). 894When set, these options are also in effect: 895.Pp 896.Bl -inset -compact 897.It Va WITHOUT_GSSAPI 898(unless 899.Va WITH_GSSAPI 900is set explicitly) 901.It Va WITHOUT_KERBEROS_SUPPORT 902(unless 903.Va WITH_KERBEROS_SUPPORT 904is set explicitly) 905.El 906.It Va WITHOUT_KERBEROS_SUPPORT 907Set to build some programs without Kerberos support, like 908.Xr ssh 1 , 909.Xr telnet 1 , 910.Xr sshd 8 , 911and 912.Xr telnetd 8 . 913.It Va WITH_KERNEL_RETPOLINE 914Set to enable the "retpoline" mitigation for CVE-2017-5715 in the kernel 915build. 916.It Va WITHOUT_KERNEL_SYMBOLS 917Set to not install kernel symbol files. 918.Bf -symbolic 919This option is recommended for those people who have small root partitions. 920.Ef 921.It Va WITHOUT_KVM 922Set to not build the 923.Nm libkvm 924library as a part of the base system. 925.Bf -symbolic 926The option has no effect yet. 927.Ef 928When set, these options are also in effect: 929.Pp 930.Bl -inset -compact 931.It Va WITHOUT_KVM_SUPPORT 932(unless 933.Va WITH_KVM_SUPPORT 934is set explicitly) 935.El 936.It Va WITHOUT_KVM_SUPPORT 937Set to build some programs without optional 938.Nm libkvm 939support. 940.It Va WITHOUT_LDNS 941Setting this variable will prevent the LDNS library from being built. 942When set, it enforces these options: 943.Pp 944.Bl -item -compact 945.It 946.Va WITHOUT_LDNS_UTILS 947.It 948.Va WITHOUT_UNBOUND 949.El 950.It Va WITHOUT_LDNS_UTILS 951Setting this variable will prevent building the LDNS utilities 952.Xr drill 1 953and 954.Xr host 1 . 955.It Va WITHOUT_LEGACY_CONSOLE 956Set to not build programs that support a legacy PC console; e.g., 957.Xr kbdcontrol 1 958and 959.Xr vidcontrol 1 . 960.It Va WITHOUT_LIB32 961On 64-bit platforms, set to not build 32-bit library set and a 962.Nm ld-elf32.so.1 963runtime linker. 964.It Va WITHOUT_LIBCPLUSPLUS 965Set to avoid building libcxxrt and libc++. 966.It Va WITHOUT_LIBPTHREAD 967Set to not build the 968.Nm libpthread 969providing library, 970.Nm libthr . 971When set, it enforces these options: 972.Pp 973.Bl -item -compact 974.It 975.Va WITHOUT_LIBTHR 976.El 977.It Va WITH_LIBSOFT 978On armv6 only, set to enable soft float ABI compatibility libraries. 979This option is for transitioning to the new hard float ABI. 980.It Va WITHOUT_LIBTHR 981Set to not build the 982.Nm libthr 983(1:1 threading) 984library. 985.It Va WITHOUT_LLD 986Set to not build LLVM's lld linker. 987.Pp 988This is a default setting on 989riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 990.It Va WITH_LLD 991Set to build LLVM's lld linker. 992.Pp 993This is a default setting on 994amd64/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. 995.It Va WITHOUT_LLDB 996Set to not build the LLDB debugger. 997.Pp 998This is a default setting on 999arm/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. 1000.It Va WITH_LLDB 1001Set to build the LLDB debugger. 1002.Pp 1003This is a default setting on 1004amd64/amd64, arm64/aarch64 and i386/i386. 1005.It Va WITHOUT_LLD_BOOTSTRAP 1006Set to not build the LLD linker during the bootstrap phase of 1007the build. 1008To be able to build the system, either Binutils or LLD bootstrap must be 1009enabled unless an alternate linker is provided via XLD. 1010.Pp 1011This is a default setting on 1012arm/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. 1013.It Va WITH_LLD_BOOTSTRAP 1014Set to build the LLD linker during the bootstrap phase of the build. 1015.Pp 1016This is a default setting on 1017amd64/amd64, arm/armv7, arm64/aarch64 and i386/i386. 1018.It Va WITHOUT_LLD_IS_LD 1019Set to use GNU binutils ld as the system linker, instead of LLVM's LLD. 1020.Pp 1021This is a default setting on 1022arm/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. 1023.It Va WITH_LLD_IS_LD 1024Set to use LLVM's LLD as the system linker, instead of GNU binutils ld. 1025.Pp 1026This is a default setting on 1027amd64/amd64, arm/armv7 and arm64/aarch64. 1028.It Va WITHOUT_LLVM_COV 1029Set to not build the 1030.Xr llvm-cov 1 1031tool. 1032.Pp 1033This is a default setting on 1034riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 1035.It Va WITH_LLVM_COV 1036Set to build the 1037.Xr llvm-cov 1 1038tool. 1039.Pp 1040This is a default setting on 1041amd64/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. 1042.It Va WITHOUT_LLVM_LIBUNWIND 1043Set to use GCC's stack unwinder (instead of LLVM's libunwind). 1044.Pp 1045This is a default setting on 1046arm/arm, arm/armv6, arm/armv7, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64. 1047.It Va WITH_LLVM_LIBUNWIND 1048Set to use LLVM's libunwind stack unwinder (instead of GCC's unwinder). 1049.Pp 1050This is a default setting on 1051amd64/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. 1052.It Va WITHOUT_LLVM_TARGET_AARCH64 1053Set to not 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 1059riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 1060.It Va WITH_LLVM_TARGET_AARCH64 1061Set to build LLVM target support for AArch64. 1062The 1063.Va LLVM_TARGET_ALL 1064option should be used rather than this in most cases. 1065.Pp 1066This is a default setting on 1067amd64/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. 1068.It Va WITHOUT_LLVM_TARGET_ALL 1069Set to only build the required LLVM target support. 1070This option is preferred to specific target support options. 1071.Pp 1072This is a default setting on 1073riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 1074When set, these options are also in effect: 1075.Pp 1076.Bl -inset -compact 1077.It Va WITHOUT_LLVM_TARGET_AARCH64 1078(unless 1079.Va WITH_LLVM_TARGET_AARCH64 1080is set explicitly) 1081.It Va WITHOUT_LLVM_TARGET_ARM 1082(unless 1083.Va WITH_LLVM_TARGET_ARM 1084is set explicitly) 1085.It Va WITHOUT_LLVM_TARGET_MIPS 1086(unless 1087.Va WITH_LLVM_TARGET_MIPS 1088is set explicitly) 1089.It Va WITHOUT_LLVM_TARGET_POWERPC 1090(unless 1091.Va WITH_LLVM_TARGET_POWERPC 1092is set explicitly) 1093.It Va WITHOUT_LLVM_TARGET_SPARC 1094(unless 1095.Va WITH_LLVM_TARGET_SPARC 1096is set explicitly) 1097.El 1098.It Va WITH_LLVM_TARGET_ALL 1099Set to build support for all LLVM targets. 1100This option is always applied to the bootstrap compiler for buildworld when 1101LLVM is used. 1102.Pp 1103This is a default setting on 1104amd64/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. 1105.It Va WITHOUT_LLVM_TARGET_ARM 1106Set to not 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 1112riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 1113.It Va WITH_LLVM_TARGET_ARM 1114Set to build LLVM target support for ARM. 1115The 1116.Va LLVM_TARGET_ALL 1117option should be used rather than this in most cases. 1118.Pp 1119This is a default setting on 1120amd64/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. 1121.It Va WITH_LLVM_TARGET_BPF 1122Set to build LLVM target support for BPF. 1123The 1124.Va LLVM_TARGET_ALL 1125option should be used rather than this in most cases. 1126.It Va WITHOUT_LLVM_TARGET_MIPS 1127Set to not 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 1133riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 1134.It Va WITH_LLVM_TARGET_MIPS 1135Set to build LLVM target support for MIPS. 1136The 1137.Va LLVM_TARGET_ALL 1138option should be used rather than this in most cases. 1139.Pp 1140This is a default setting on 1141amd64/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. 1142.It Va WITHOUT_LLVM_TARGET_POWERPC 1143Set to not 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 1149riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 1150.It Va WITH_LLVM_TARGET_POWERPC 1151Set to build LLVM target support for PowerPC. 1152The 1153.Va LLVM_TARGET_ALL 1154option should be used rather than this in most cases. 1155.Pp 1156This is a default setting on 1157amd64/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. 1158.It Va WITHOUT_LLVM_TARGET_SPARC 1159Set to not 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 1165riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 1166.It Va WITH_LLVM_TARGET_SPARC 1167Set to build LLVM target support for SPARC. 1168The 1169.Va LLVM_TARGET_ALL 1170option should be used rather than this in most cases. 1171.Pp 1172This is a default setting on 1173amd64/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. 1174.It Va WITHOUT_LLVM_TARGET_X86 1175Set to not 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 1181riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 1182.It Va WITH_LLVM_TARGET_X86 1183Set to build LLVM target support for X86. 1184The 1185.Va LLVM_TARGET_ALL 1186option should be used rather than this in most cases. 1187.Pp 1188This is a default setting on 1189amd64/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. 1190.It Va WITH_LOADER_FIREWIRE 1191Enable firewire support in /boot/loader on x86. This option is a nop 1192on all other platforms. 1193.It Va WITHOUT_LOADER_GELI 1194Disable inclusion of GELI crypto support in the boot chain binaries. 1195.Pp 1196This is a default setting on 1197sparc64/sparc64. 1198.It Va WITH_LOADER_LUA 1199Set to build LUA bindings for the boot loader. 1200.Pp 1201This is a default setting on 1202amd64/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. 1203.It Va WITHOUT_LOADER_OFW 1204Disable building of openfirmware bootloader components. 1205.Pp 1206This is a default setting on 1207amd64/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. 1208.It Va WITH_LOADER_OFW 1209Set to build openfirmware bootloader components. 1210.Pp 1211This is a default setting on 1212powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe and sparc64/sparc64. 1213.It Va WITHOUT_LOADER_UBOOT 1214Disable building of ubldr. 1215.Pp 1216This is a default setting on 1217amd64/amd64, arm64/aarch64, i386/i386, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 1218.It Va WITH_LOADER_UBOOT 1219Set to build ubldr. 1220.Pp 1221This is a default setting on 1222arm/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. 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/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. 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_MODULE_DRM 1360Disable creation of old drm video modules. 1361 1362.It Va WITHOUT_MODULE_DRM2 1363Disable creation of old drm2 video modules. 1364.It Va WITH_NAND 1365Set to build the NAND Flash components. 1366.It Va WITHOUT_NDIS 1367Set to not build programs and libraries 1368related to NDIS emulation support. 1369.It Va WITHOUT_NETCAT 1370Set to not build 1371.Xr nc 1 1372utility. 1373.It Va WITHOUT_NETGRAPH 1374Set to not build applications to support 1375.Xr netgraph 4 . 1376When set, it enforces these options: 1377.Pp 1378.Bl -item -compact 1379.It 1380.Va WITHOUT_ATM 1381.It 1382.Va WITHOUT_BLUETOOTH 1383.El 1384.Pp 1385When set, these options are also in effect: 1386.Pp 1387.Bl -inset -compact 1388.It Va WITHOUT_NETGRAPH_SUPPORT 1389(unless 1390.Va WITH_NETGRAPH_SUPPORT 1391is set explicitly) 1392.El 1393.It Va WITHOUT_NETGRAPH_SUPPORT 1394Set to build libraries, programs, and kernel modules without netgraph support. 1395.It Va WITHOUT_NIS 1396Set to not build 1397.Xr NIS 8 1398support and related programs. 1399If set, you might need to adopt your 1400.Xr nsswitch.conf 5 1401and remove 1402.Sq nis 1403entries. 1404.It Va WITHOUT_NLS 1405Set to not build NLS catalogs. 1406When set, it enforces these options: 1407.Pp 1408.Bl -item -compact 1409.It 1410.Va WITHOUT_NLS_CATALOGS 1411.El 1412.It Va WITHOUT_NLS_CATALOGS 1413Set to not build NLS catalog support for 1414.Xr csh 1 . 1415.It Va WITHOUT_NS_CACHING 1416Set to disable name caching in the 1417.Pa nsswitch 1418subsystem. 1419The generic caching daemon, 1420.Xr nscd 8 , 1421will not be built either if this option is set. 1422.It Va WITHOUT_NTP 1423Set to not build 1424.Xr ntpd 8 1425and related programs. 1426.It Va WITH_OFED 1427Set to build the 1428.Dq "OpenFabrics Enterprise Distribution" 1429Infiniband software stack. 1430.It Va WITH_OFED_EXTRA 1431Set to build the non-essential components of the 1432.Dq "OpenFabrics Enterprise Distribution" 1433Infiniband software stack, mostly examples. 1434.It Va WITH_OPENLDAP 1435Enable building openldap support for kerberos. 1436.It Va WITHOUT_OPENSSH 1437Set to not build OpenSSH. 1438.It Va WITHOUT_OPENSSL 1439Set to not build OpenSSL. 1440When set, it enforces these options: 1441.Pp 1442.Bl -item -compact 1443.It 1444.Va WITHOUT_KERBEROS 1445.It 1446.Va WITHOUT_OPENSSH 1447.El 1448.Pp 1449When set, these options are also in effect: 1450.Pp 1451.Bl -inset -compact 1452.It Va WITHOUT_GSSAPI 1453(unless 1454.Va WITH_GSSAPI 1455is set explicitly) 1456.El 1457.It Va WITHOUT_PAM 1458Set to not build PAM library and modules. 1459.Bf -symbolic 1460This option is deprecated and does nothing. 1461.Ef 1462When set, these options are also in effect: 1463.Pp 1464.Bl -inset -compact 1465.It Va WITHOUT_PAM_SUPPORT 1466(unless 1467.Va WITH_PAM_SUPPORT 1468is set explicitly) 1469.El 1470.It Va WITHOUT_PAM_SUPPORT 1471Set to build some programs without PAM support, particularly 1472.Xr ftpd 8 1473and 1474.Xr ppp 8 . 1475.It Va WITHOUT_PC_SYSINSTALL 1476Set to not build 1477.Xr pc-sysinstall 8 1478and related programs. 1479.It Va WITHOUT_PF 1480Set to not build PF firewall package. 1481When set, it enforces these options: 1482.Pp 1483.Bl -item -compact 1484.It 1485.Va WITHOUT_AUTHPF 1486.El 1487.It Va WITHOUT_PKGBOOTSTRAP 1488Set to not build 1489.Xr pkg 7 1490bootstrap tool. 1491.It Va WITHOUT_PMC 1492Set to not build 1493.Xr pmccontrol 8 1494and related programs. 1495.It Va WITHOUT_PORTSNAP 1496Set to not build or install 1497.Xr portsnap 8 1498and related files. 1499When set, it enforces these options: 1500.Pp 1501.Bl -item -compact 1502.It 1503.Va WITHOUT_FREEBSD_UPDATE 1504.El 1505.It Va WITHOUT_PPP 1506Set to not build 1507.Xr ppp 8 1508and related programs. 1509.It Va WITHOUT_PROFILE 1510Set to not build profiled libraries for use with 1511.Xr gprof 8 . 1512.Pp 1513This is a default setting on 1514mips/mips64el, mips/mips64, mips/mips64elhf and mips/mips64hf. 1515.It Va WITH_PROFILE 1516Set to build profiled libraries for use with 1517.Xr gprof 8 . 1518.Pp 1519This is a default setting on 1520amd64/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. 1521.It Va WITHOUT_QUOTAS 1522Set to not build 1523.Xr quota 1 1524and related programs. 1525.It Va WITHOUT_RADIUS_SUPPORT 1526Set to not build radius support into various applications, like 1527.Xr pam_radius 8 1528and 1529.Xr ppp 8 . 1530.It Va WITH_RATELIMIT 1531Set to build the system with rate limit support. 1532.Pp 1533This makes 1534.Dv SO_MAX_PACING_RATE 1535effective in 1536.Xr getsockopt 2 , 1537and 1538.Ar txrlimit 1539support in 1540.Xr ifconfig 8 , 1541by proxy. 1542.It Va WITHOUT_RBOOTD 1543Set to not build or install 1544.Xr rbootd 8 . 1545.It Va WITHOUT_REPRODUCIBLE_BUILD 1546Set to include build metadata (such as the build time, user, and host) 1547in the kernel, boot loaders, and uname output. 1548Successive builds will not be bit-for-bit identical. 1549.It Va WITHOUT_RESCUE 1550Set to not build 1551.Xr rescue 8 . 1552.It Va WITHOUT_ROUTED 1553Set to not build 1554.Xr routed 8 1555utility. 1556.It Va WITH_RPCBIND_WARMSTART_SUPPORT 1557Set to build 1558.Xr rpcbind 8 1559with warmstart support. 1560.It Va WITHOUT_SENDMAIL 1561Set to not build 1562.Xr sendmail 8 1563and related programs. 1564.It Va WITHOUT_SERVICESDB 1565Set to not install 1566.Pa /var/db/services.db . 1567.It Va WITHOUT_SETUID_LOGIN 1568Set this to disable the installation of 1569.Xr login 1 1570as a set-user-ID root program. 1571.It Va WITHOUT_SHAREDOCS 1572Set to not build the 1573.Bx 4.4 1574legacy docs. 1575.It Va WITH_SHARED_TOOLCHAIN 1576Set to build the toolchain binaries shared. 1577The set includes 1578.Xr cc 1 , 1579.Xr make 1 1580and necessary utilities like assembler, linker and library archive manager. 1581.It Va WITH_SORT_THREADS 1582Set to enable threads in 1583.Xr sort 1 . 1584.It Va WITHOUT_SOURCELESS 1585Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU). 1586When set, it enforces these options: 1587.Pp 1588.Bl -item -compact 1589.It 1590.Va WITHOUT_SOURCELESS_HOST 1591.It 1592.Va WITHOUT_SOURCELESS_UCODE 1593.El 1594.It Va WITHOUT_SOURCELESS_HOST 1595Set to not build kernel modules that include sourceless native code for host CPU. 1596.It Va WITHOUT_SOURCELESS_UCODE 1597Set to not build kernel modules that include sourceless microcode. 1598.It Va WITHOUT_SSP 1599Set to not build world with propolice stack smashing protection. 1600.Pp 1601This is a default setting on 1602mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, mips/mipselhf, mips/mipshf, mips/mips64elhf and mips/mips64hf. 1603.It Va WITH_SSP 1604Set to build world with propolice stack smashing protection. 1605.Pp 1606This is a default setting on 1607amd64/amd64, arm/arm, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpcspe, riscv/riscv64, riscv/riscv64sf and sparc64/sparc64. 1608.It Va WITH_STAGING 1609Enable staging of files to a stage tree. 1610This can be best thought of as auto-install to 1611.Va DESTDIR 1612with some extra meta data to ensure dependencies can be tracked. 1613Depends on 1614.Va WITH_DIRDEPS_BUILD . 1615When set, these options are also in effect: 1616.Pp 1617.Bl -inset -compact 1618.It Va WITH_STAGING_MAN 1619(unless 1620.Va WITHOUT_STAGING_MAN 1621is set explicitly) 1622.It Va WITH_STAGING_PROG 1623(unless 1624.Va WITHOUT_STAGING_PROG 1625is set explicitly) 1626.El 1627.Pp 1628This must be set in the environment, make command line, or 1629.Pa /etc/src-env.conf , 1630not 1631.Pa /etc/src.conf . 1632.It Va WITH_STAGING_MAN 1633Enable staging of man pages to stage tree. 1634.It Va WITH_STAGING_PROG 1635Enable staging of PROGs to stage tree. 1636.It Va WITH_STALE_STAGED 1637Check staged files are not stale. 1638.It Va WITH_SVN 1639Set to install 1640.Xr svnlite 1 1641as 1642.Xr svn 1 . 1643.It Va WITHOUT_SVNLITE 1644Set to not build 1645.Xr svnlite 1 1646and related programs. 1647.It Va WITHOUT_SYMVER 1648Set to disable symbol versioning when building shared libraries. 1649.It Va WITHOUT_SYSCONS 1650Set to not build 1651.Xr syscons 4 1652support files such as keyboard maps, fonts, and screen output maps. 1653.It Va WITH_SYSROOT 1654Enable use of sysroot during build. 1655Depends on 1656.Va WITH_DIRDEPS_BUILD . 1657.Pp 1658This must be set in the environment, make command line, or 1659.Pa /etc/src-env.conf , 1660not 1661.Pa /etc/src.conf . 1662.It Va WITHOUT_SYSTEM_COMPILER 1663Set to not opportunistically skip building a cross-compiler during the 1664bootstrap phase of the build. 1665Normally, if the currently installed compiler matches the planned bootstrap 1666compiler type and revision, then it will not be built. 1667This does not prevent a compiler from being built for installation though, 1668only for building one for the build itself. 1669The 1670.Va WITHOUT_CLANG 1671and 1672.Va WITHOUT_GCC 1673options control those. 1674.It Va WITHOUT_SYSTEM_LINKER 1675Set to not opportunistically skip building a cross-linker during the 1676bootstrap phase of the build. 1677Normally, if the currently installed linker matches the planned bootstrap 1678linker type and revision, then it will not be built. 1679This does not prevent a linker from being built for installation though, 1680only for building one for the build itself. 1681The 1682.Va WITHOUT_LLD 1683and 1684.Va WITHOUT_BINUTILS 1685options control those. 1686.Pp 1687This option is only relevant when 1688.Va WITH_LLD_BOOTSTRAP 1689is set. 1690.It Va WITHOUT_TALK 1691Set to not build or install 1692.Xr talk 1 1693and 1694.Xr talkd 8 . 1695.It Va WITHOUT_TCP_WRAPPERS 1696Set to not build or install 1697.Xr tcpd 8 , 1698and related utilities. 1699.It Va WITHOUT_TCSH 1700Set to not build and install 1701.Pa /bin/csh 1702(which is 1703.Xr tcsh 1 ) . 1704.It Va WITHOUT_TELNET 1705Set to not build 1706.Xr telnet 1 1707and related programs. 1708.It Va WITHOUT_TESTS 1709Set to not build nor install the 1710.Fx 1711Test Suite in 1712.Pa /usr/tests/ . 1713See 1714.Xr tests 7 1715for more details. 1716This also disables the build of all test-related dependencies, including ATF. 1717When set, it enforces these options: 1718.Pp 1719.Bl -item -compact 1720.It 1721.Va WITHOUT_DTRACE_TESTS 1722.El 1723.Pp 1724When set, these options are also in effect: 1725.Pp 1726.Bl -inset -compact 1727.It Va WITHOUT_TESTS_SUPPORT 1728(unless 1729.Va WITH_TESTS_SUPPORT 1730is set explicitly) 1731.El 1732.It Va WITHOUT_TESTS_SUPPORT 1733Set to disables the build of all test-related dependencies, including ATF. 1734.It Va WITHOUT_TEXTPROC 1735Set to not build 1736programs used for text processing. 1737.It Va WITHOUT_TFTP 1738Set to not build or install 1739.Xr tftp 1 1740and 1741.Xr tftpd 8 . 1742.It Va WITHOUT_TIMED 1743Set to not build or install 1744.Xr timed 8 . 1745.It Va WITHOUT_TOOLCHAIN 1746Set to not install header or 1747programs used for program development, 1748compilers, debuggers etc. 1749When set, it enforces these options: 1750.Pp 1751.Bl -item -compact 1752.It 1753.Va WITHOUT_BINUTILS 1754.It 1755.Va WITHOUT_CLANG 1756.It 1757.Va WITHOUT_CLANG_EXTRAS 1758.It 1759.Va WITHOUT_CLANG_FULL 1760.It 1761.Va WITHOUT_GCC 1762.It 1763.Va WITHOUT_GDB 1764.It 1765.Va WITHOUT_INCLUDES 1766.It 1767.Va WITHOUT_LLD 1768.It 1769.Va WITHOUT_LLDB 1770.It 1771.Va WITHOUT_LLVM_COV 1772.El 1773.It Va WITHOUT_UNBOUND 1774Set to not build 1775.Xr unbound 8 1776and related programs. 1777.It Va WITHOUT_UNIFIED_OBJDIR 1778Set to use the historical object directory format for 1779.Xr build 7 1780targets. 1781For native-builds and builds done directly in sub-directories the format of 1782.Pa ${MAKEOBJDIRPREFIX}/${.CURDIR} 1783is used, 1784while for cross-builds 1785.Pa ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR} 1786is used. 1787.Pp 1788This option is transitional and will be removed before the 12.0 release, 1789at which time 1790.va WITH_UNIFIED_OBJDIR 1791will be enabled permanently. 1792.Pp 1793This must be set in the environment, make command line, or 1794.Pa /etc/src-env.conf , 1795not 1796.Pa /etc/src.conf . 1797.It Va WITHOUT_USB 1798Set to not build USB-related programs and libraries. 1799.It Va WITHOUT_USB_GADGET_EXAMPLES 1800Set to not build USB gadget kernel modules. 1801.It Va WITHOUT_UTMPX 1802Set to not build user accounting tools such as 1803.Xr last 1 , 1804.Xr users 1 , 1805.Xr who 1 , 1806.Xr ac 8 , 1807.Xr lastlogin 8 1808and 1809.Xr utx 8 . 1810.It Va WITHOUT_VI 1811Set to not build and install vi, view, ex and related programs. 1812.It Va WITHOUT_VT 1813Set to not build 1814.Xr vt 4 1815support files (fonts and keymaps). 1816.It Va WITHOUT_WARNS 1817Set this to not add warning flags to the compiler invocations. 1818Useful as a temporary workaround when code enters the tree 1819which triggers warnings in environments that differ from the 1820original developer. 1821.It Va WITHOUT_WIRELESS 1822Set to not build programs used for 802.11 wireless networks; especially 1823.Xr wpa_supplicant 8 1824and 1825.Xr hostapd 8 . 1826When set, these options are also in effect: 1827.Pp 1828.Bl -inset -compact 1829.It Va WITHOUT_WIRELESS_SUPPORT 1830(unless 1831.Va WITH_WIRELESS_SUPPORT 1832is set explicitly) 1833.El 1834.It Va WITHOUT_WIRELESS_SUPPORT 1835Set to build libraries, programs, and kernel modules without 1836802.11 wireless support. 1837.It Va WITHOUT_WPA_SUPPLICANT_EAPOL 1838Build 1839.Xr wpa_supplicant 8 1840without support for the IEEE 802.1X protocol and without 1841support for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS 1842protocols (usable only via 802.1X). 1843.It Va WITHOUT_ZFS 1844Set to not build ZFS file system. 1845.It Va WITHOUT_ZONEINFO 1846Set to not build the timezone database. 1847When set, it enforces these options: 1848.Pp 1849.Bl -item -compact 1850.It 1851.Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT 1852.It 1853.Va WITHOUT_ZONEINFO_OLD_TIMEZONES_SUPPORT 1854.El 1855.It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT 1856Set to build leapsecond information in to the timezone database. 1857.It Va WITH_ZONEINFO_OLD_TIMEZONES_SUPPORT 1858Set to build backward compatibility timezone aliases in to the timezone 1859database. 1860.El 1861.Sh FILES 1862.Bl -tag -compact -width Pa 1863.It Pa /etc/src.conf 1864.It Pa /etc/src-env.conf 1865.It Pa /usr/share/mk/bsd.own.mk 1866.El 1867.Sh SEE ALSO 1868.Xr make 1 , 1869.Xr make.conf 5 , 1870.Xr build 7 , 1871.Xr ports 7 1872.Sh HISTORY 1873The 1874.Nm 1875file appeared in 1876.Fx 7.0 . 1877.Sh AUTHORS 1878This manual page was autogenerated by 1879.An tools/build/options/makeman . 1880