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