1b1a0e564SEitan Adler.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. 2*52fe961cSBaptiste Daroussin.Dd October 10, 2023 3fa07cb9cSRuslan Ermilov.Dt SRC.CONF 5 4fa07cb9cSRuslan Ermilov.Os 5fa07cb9cSRuslan Ermilov.Sh NAME 6fa07cb9cSRuslan Ermilov.Nm src.conf 716f2e711SYaroslav Tykhiy.Nd "source build options" 8fa07cb9cSRuslan Ermilov.Sh DESCRIPTION 9fa07cb9cSRuslan ErmilovThe 10fa07cb9cSRuslan Ermilov.Nm 11e6ca6901SGordon Berglingfile contains variables that control what components will be generated during 12e6ca6901SGordon Berglingthe build process of the 13fa07cb9cSRuslan Ermilov.Fx 14fa07cb9cSRuslan Ermilovsource tree; see 15fa07cb9cSRuslan Ermilov.Xr build 7 . 16fa07cb9cSRuslan Ermilov.Pp 17fa07cb9cSRuslan ErmilovThe 18fa07cb9cSRuslan Ermilov.Nm 19fa07cb9cSRuslan Ermilovfile uses the standard makefile syntax. 20fa07cb9cSRuslan ErmilovHowever, 21fa07cb9cSRuslan Ermilov.Nm 22fa07cb9cSRuslan Ermilovshould not specify any dependencies to 23fa07cb9cSRuslan Ermilov.Xr make 1 . 24fa07cb9cSRuslan ErmilovInstead, 25fa07cb9cSRuslan Ermilov.Nm 26fa07cb9cSRuslan Ermilovis to set 27fa07cb9cSRuslan Ermilov.Xr make 1 28fa07cb9cSRuslan Ermilovvariables that control the aspects of how the system builds. 29fa07cb9cSRuslan Ermilov.Pp 30fa07cb9cSRuslan ErmilovThe default location of 31fa07cb9cSRuslan Ermilov.Nm 32fa07cb9cSRuslan Ermilovis 33fa07cb9cSRuslan Ermilov.Pa /etc/src.conf , 34fa07cb9cSRuslan Ermilovthough an alternative location can be specified in the 35fa07cb9cSRuslan Ermilov.Xr make 1 36fa07cb9cSRuslan Ermilovvariable 37fa07cb9cSRuslan Ermilov.Va SRCCONF . 38fa07cb9cSRuslan ErmilovOverriding the location of 39fa07cb9cSRuslan Ermilov.Nm 40fa07cb9cSRuslan Ermilovmay be necessary if the system-wide settings are not suitable 41fa07cb9cSRuslan Ermilovfor a particular build. 42fa07cb9cSRuslan ErmilovFor instance, setting 43fa07cb9cSRuslan Ermilov.Va SRCCONF 44fa07cb9cSRuslan Ermilovto 45fa07cb9cSRuslan Ermilov.Pa /dev/null 46fa07cb9cSRuslan Ermiloveffectively resets all build controls to their defaults. 47fa07cb9cSRuslan Ermilov.Pp 48fa07cb9cSRuslan ErmilovThe only purpose of 49fa07cb9cSRuslan Ermilov.Nm 50fa07cb9cSRuslan Ermilovis to control the compilation of the 51fa07cb9cSRuslan Ermilov.Fx 5216f2e711SYaroslav Tykhiysource code, which is usually located in 53fa07cb9cSRuslan Ermilov.Pa /usr/src . 54fa07cb9cSRuslan ErmilovAs a rule, the system administrator creates 55fa07cb9cSRuslan Ermilov.Nm 56fa07cb9cSRuslan Ermilovwhen the values of certain control variables need to be changed 57fa07cb9cSRuslan Ermilovfrom their defaults. 58fa07cb9cSRuslan Ermilov.Pp 59fa07cb9cSRuslan ErmilovIn addition, control variables can be specified 60fa07cb9cSRuslan Ermilovfor a particular build via the 61fa07cb9cSRuslan Ermilov.Fl D 62fa07cb9cSRuslan Ermilovoption of 63fa07cb9cSRuslan Ermilov.Xr make 1 6472735687SMike Makonnenor in its environment; see 65fa07cb9cSRuslan Ermilov.Xr environ 7 . 66fa07cb9cSRuslan Ermilov.Pp 670a70ef02SBryan DreweryThe environment of 680a70ef02SBryan Drewery.Xr make 1 690a70ef02SBryan Dreweryfor the build can be controlled via the 700a70ef02SBryan Drewery.Va SRC_ENV_CONF 710a70ef02SBryan Dreweryvariable, which defaults to 720a70ef02SBryan Drewery.Pa /etc/src-env.conf . 730a70ef02SBryan DrewerySome examples that may only be set in this file are 7432b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD , 750a70ef02SBryan Dreweryand 76efb949a6SBryan Drewery.Va WITH_META_MODE , 77efb949a6SBryan Dreweryand 787df4050dSBryan Drewery.Va MAKEOBJDIRPREFIX 79efb949a6SBryan Dreweryas they are environment-only variables. 800a70ef02SBryan Drewery.Pp 81d8898333SBrooks DavisThe values of 82d8898333SBrooks Davis.Va WITH_ 83d8898333SBrooks Davisand 84d8898333SBrooks Davis.Va WITHOUT_ 85d8898333SBrooks Davisvariables are ignored regardless of their setting; 8616f2e711SYaroslav Tykhiyeven if they would be set to 87fa07cb9cSRuslan Ermilov.Dq Li FALSE 88fa07cb9cSRuslan Ermilovor 8916f2e711SYaroslav Tykhiy.Dq Li NO . 90344e2bb9SEd MasteThe presence of an option causes 91344e2bb9SEd Masteit to be honored by 9216f2e711SYaroslav Tykhiy.Xr make 1 . 93fa07cb9cSRuslan Ermilov.Pp 94344e2bb9SEd MasteThis list provides a name and short description for variables 95fa07cb9cSRuslan Ermilovthat can be used for source builds. 96fa07cb9cSRuslan Ermilov.Bl -tag -width indent 97aaa6d7ebSSam Leffler.It Va WITHOUT_ACCT 98041c5049SEd MasteDo not build process accounting tools such as 990ea27d02SEd Schouten.Xr accton 8 100aaa6d7ebSSam Lefflerand 1010ea27d02SEd Schouten.Xr sa 8 . 102fa07cb9cSRuslan Ermilov.It Va WITHOUT_ACPI 103041c5049SEd MasteDo not build 104fa07cb9cSRuslan Ermilov.Xr acpiconf 8 , 105fa07cb9cSRuslan Ermilov.Xr acpidump 8 106fa07cb9cSRuslan Ermilovand related programs. 107aaa6d7ebSSam Leffler.It Va WITHOUT_APM 108041c5049SEd MasteDo not build 109aaa6d7ebSSam Leffler.Xr apm 8 , 110aaa6d7ebSSam Leffler.Xr apmd 8 111aaa6d7ebSSam Lefflerand related programs. 1120ab89d72SEd Maste.It Va WITH_ASAN 1130ab89d72SEd MasteBuild the base system with Address Sanitizer (ASan) to detect 1140ab89d72SEd Mastememory corruption bugs such as buffer overflows or use-after-free. 1150ab89d72SEd MasteRequires that Clang be used as the base system compiler 1160ab89d72SEd Masteand that the runtime support library is available. 1170ab89d72SEd MasteWhen set, it enforces these options: 1180ab89d72SEd Maste.Pp 1190ab89d72SEd Maste.Bl -item -compact 1200ab89d72SEd Maste.It 1210ab89d72SEd Maste.Va WITH_LLVM_BINUTILS 1220ab89d72SEd Maste.It 1230ab89d72SEd Maste.Va WITH_LLVM_CXXFILT 1240ab89d72SEd Maste.El 125e567b213SRuslan Ermilov.It Va WITHOUT_ASSERT_DEBUG 126041c5049SEd MasteCompile programs and libraries without the 127e567b213SRuslan Ermilov.Xr assert 3 128e567b213SRuslan Ermilovchecks. 129aaa6d7ebSSam Leffler.It Va WITHOUT_AT 130041c5049SEd MasteDo not build 131aaa6d7ebSSam Leffler.Xr at 1 132aaa6d7ebSSam Lefflerand related utilities. 133fa07cb9cSRuslan Ermilov.It Va WITHOUT_AUDIT 134041c5049SEd MasteDo not build audit support into system programs. 135fa07cb9cSRuslan Ermilov.It Va WITHOUT_AUTHPF 136041c5049SEd MasteDo not build 137fa07cb9cSRuslan Ermilov.Xr authpf 8 . 13861940879SEnji Cooper.It Va WITHOUT_AUTOFS 139041c5049SEd MasteDo not build 1404b9f77e4SEdward Tomasz Napierala.Xr autofs 5 14161940879SEnji Cooperrelated programs, libraries, and kernel modules. 142906a1c6cSBryan Drewery.It Va WITHOUT_AUTO_OBJ 143906a1c6cSBryan DreweryDisable automatic creation of objdirs. 144906a1c6cSBryan DreweryThis is enabled by default if the wanted OBJDIR is writable by the current user. 1450a70ef02SBryan Drewery.Pp 146ba852870SBryan DreweryThis must be set in the environment, make command line, or 1470a70ef02SBryan Drewery.Pa /etc/src-env.conf , 1480a70ef02SBryan Drewerynot 1490a70ef02SBryan Drewery.Pa /etc/src.conf . 150bfdf8aa9SJohn Baldwin.It Va WITH_BEARSSL 151bfdf8aa9SJohn BaldwinBuild the BearSSL library. 152bfdf8aa9SJohn Baldwin.Pp 153bfdf8aa9SJohn BaldwinBearSSL is a tiny SSL library suitable for embedded environments. 154bfdf8aa9SJohn BaldwinFor details see 1552ec9a427SPiotr Kubaj.Lk https://www.BearSSL.org/ 156bfdf8aa9SJohn Baldwin.Pp 157bfdf8aa9SJohn BaldwinThis library is currently only used to perform 158bfdf8aa9SJohn Baldwinsignature verification and related operations 159bfdf8aa9SJohn Baldwinfor Verified Exec and 160bfdf8aa9SJohn Baldwin.Xr loader 8 . 161bfdf8aa9SJohn BaldwinWhen set, these options are also in effect: 162bfdf8aa9SJohn Baldwin.Pp 163bfdf8aa9SJohn Baldwin.Bl -inset -compact 164bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT 165bfdf8aa9SJohn Baldwin(unless 166bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_EFI_SECUREBOOT 167bfdf8aa9SJohn Baldwinis set explicitly) 168bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_VERIEXEC 169bfdf8aa9SJohn Baldwin(unless 170bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_VERIEXEC 171bfdf8aa9SJohn Baldwinis set explicitly) 172f87a2082SEd Maste.It Va WITH_LOADER_VERIEXEC_VECTX 173f87a2082SEd Maste(unless 174f87a2082SEd Maste.Va WITHOUT_LOADER_VERIEXEC_VECTX 175f87a2082SEd Masteis set explicitly) 176bfdf8aa9SJohn Baldwin.It Va WITH_VERIEXEC 177bfdf8aa9SJohn Baldwin(unless 178bfdf8aa9SJohn Baldwin.Va WITHOUT_VERIEXEC 179bfdf8aa9SJohn Baldwinis set explicitly) 180bfdf8aa9SJohn Baldwin.El 18161940879SEnji Cooper.It Va WITHOUT_BHYVE 182041c5049SEd MasteDo not build or install 18361940879SEnji Cooper.Xr bhyve 8 , 18461940879SEnji Cooperassociated utilities, and examples. 18561940879SEnji Cooper.Pp 18661940879SEnji CooperThis option only affects amd64/amd64. 187483d953aSJohn Baldwin.It Va WITH_BHYVE_SNAPSHOT 188041c5049SEd MasteInclude support for save and restore (snapshots) in 189483d953aSJohn Baldwin.Xr bhyve 8 190483d953aSJohn Baldwinand 191483d953aSJohn Baldwin.Xr bhyvectl 8 . 192483d953aSJohn Baldwin.Pp 193483d953aSJohn BaldwinThis option only affects amd64/amd64. 1941f3b049dSEd Maste.It Va WITH_BIND_NOW 1951f3b049dSEd MasteBuild all binaries with the 1961f3b049dSEd Maste.Dv DF_BIND_NOW 1971f3b049dSEd Masteflag set to indicate that the run-time loader should perform all relocation 1981f3b049dSEd Masteprocessing at process startup rather than on demand. 199a8af3aeeSEd MasteThe combination of the 200a8af3aeeSEd Maste.Va BIND_NOW 201a8af3aeeSEd Masteand 202a8af3aeeSEd Maste.Va RELRO 203a8af3aeeSEd Masteoptions provide "full" Relocation Read-Only (RELRO) support. 204a8af3aeeSEd MasteWith full RELRO the entire GOT is made read-only after performing relocation at 205a8af3aeeSEd Mastestartup, avoiding GOT overwrite attacks. 2060341a043SBryan Drewery.It Va WITHOUT_BLACKLIST 2074650b8aeSEnji CooperSet this if you do not want to build 2084650b8aeSEnji Cooper.Xr blacklistd 8 2094650b8aeSEnji Cooperand 2104650b8aeSEnji Cooper.Xr blacklistctl 8 . 211bf64e879SBryan DreweryWhen set, these options are also in effect: 2120341a043SBryan Drewery.Pp 213bf64e879SBryan Drewery.Bl -inset -compact 214bf64e879SBryan Drewery.It Va WITHOUT_BLACKLIST_SUPPORT 215bf64e879SBryan Drewery(unless 216bf64e879SBryan Drewery.Va WITH_BLACKLIST_SUPPORT 217bf64e879SBryan Dreweryis set explicitly) 2180341a043SBryan Drewery.El 2190341a043SBryan Drewery.It Va WITHOUT_BLACKLIST_SUPPORT 220041c5049SEd MasteBuild some programs without 2214650b8aeSEnji Cooper.Xr libblacklist 3 2224650b8aeSEnji Coopersupport, like 2230341a043SBryan Drewery.Xr fingerd 8 , 2240341a043SBryan Drewery.Xr ftpd 8 , 2250341a043SBryan Dreweryand 2260341a043SBryan Drewery.Xr sshd 8 . 22790be798eSDimitry Andric.It Va WITHOUT_BLUETOOTH 228041c5049SEd MasteDo not build Bluetooth related kernel modules, programs and libraries. 22990be798eSDimitry Andric.It Va WITHOUT_BOOT 230041c5049SEd MasteDo not build the boot blocks and loader. 2310e0e9604SEnji Cooper.It Va WITHOUT_BOOTPARAMD 232041c5049SEd MasteDo not build or install 2330e0e9604SEnji Cooper.Xr bootparamd 8 . 2340e0e9604SEnji Cooper.It Va WITHOUT_BOOTPD 235041c5049SEd MasteDo not build or install 2360e0e9604SEnji Cooper.Xr bootpd 8 . 23793da8366SEnji Cooper.It Va WITHOUT_BSDINSTALL 238041c5049SEd MasteDo not build 23993da8366SEnji Cooper.Xr bsdinstall 8 , 24093da8366SEnji Cooper.Xr sade 8 , 24193da8366SEnji Cooperand related programs. 24290be798eSDimitry Andric.It Va WITHOUT_BSD_CPIO 243041c5049SEd MasteDo not build the BSD licensed version of cpio based on 24490be798eSDimitry Andric.Xr libarchive 3 . 24590be798eSDimitry Andric.It Va WITHOUT_BSNMP 246041c5049SEd MasteDo not build or install 24790be798eSDimitry Andric.Xr bsnmpd 1 24890be798eSDimitry Andricand related libraries and data files. 24990be798eSDimitry Andric.It Va WITHOUT_BZIP2 250041c5049SEd MasteDo not build contributed bzip2 software as a part of the base system. 25190be798eSDimitry Andric.Bf -symbolic 25290be798eSDimitry AndricThe option has no effect yet. 25390be798eSDimitry Andric.Ef 254bf64e879SBryan DreweryWhen set, these options are also in effect: 25590be798eSDimitry Andric.Pp 256bf64e879SBryan Drewery.Bl -inset -compact 257bf64e879SBryan Drewery.It Va WITHOUT_BZIP2_SUPPORT 258bf64e879SBryan Drewery(unless 259bf64e879SBryan Drewery.Va WITH_BZIP2_SUPPORT 260bf64e879SBryan Dreweryis set explicitly) 26190be798eSDimitry Andric.El 26290be798eSDimitry Andric.It Va WITHOUT_BZIP2_SUPPORT 263041c5049SEd MasteBuild some programs without optional bzip2 support. 264fd1efedcSConrad Meyer.It Va WITHOUT_CALENDAR 265041c5049SEd MasteDo not build 266fd1efedcSConrad Meyer.Xr calendar 1 . 2672e65cfd3SEd Maste.It Va WITHOUT_CAPSICUM 2682e65cfd3SEd MasteThis option has no effect. 269de19b521SDimitry Andric.It Va WITHOUT_CAROOT 270041c5049SEd MasteDo not add the trusted certificates from the Mozilla NSS bundle to 271de19b521SDimitry Andricbase. 2722e65cfd3SEd Maste.It Va WITHOUT_CASPER 2732e65cfd3SEd MasteThis option has no effect. 2741c01e4f8SBryan Drewery.It Va WITH_CCACHE_BUILD 275041c5049SEd MasteUse 2761c01e4f8SBryan Drewery.Xr ccache 1 2771c01e4f8SBryan Dreweryfor the build. 2781c01e4f8SBryan DreweryNo configuration is required except to install the 2791c01e4f8SBryan Drewery.Sy devel/ccache 2801c01e4f8SBryan Drewerypackage. 281344e2bb9SEd MasteWhen using with 282344e2bb9SEd Maste.Xr distcc 1 , 283344e2bb9SEd Masteset 2841c01e4f8SBryan Drewery.Sy CCACHE_PREFIX=/usr/local/bin/distcc . 2851c01e4f8SBryan DreweryThe default cache directory of 2861c01e4f8SBryan Drewery.Pa $HOME/.ccache 2871c01e4f8SBryan Drewerywill be used, which can be overridden by setting 2881c01e4f8SBryan Drewery.Sy CCACHE_DIR . 2891c01e4f8SBryan DreweryThe 2901c01e4f8SBryan Drewery.Sy CCACHE_COMPILERCHECK 2911c01e4f8SBryan Dreweryoption defaults to 2921c01e4f8SBryan Drewery.Sy content 2931c01e4f8SBryan Drewerywhen using the in-tree bootstrap compiler, 2941c01e4f8SBryan Dreweryand 2951c01e4f8SBryan Drewery.Sy mtime 2961c01e4f8SBryan Drewerywhen using an external compiler. 2971c01e4f8SBryan DreweryThe 2981c01e4f8SBryan Drewery.Sy CCACHE_CPP2 2991c01e4f8SBryan Dreweryoption is used for Clang but not GCC. 3001c01e4f8SBryan Drewery.Pp 3011c01e4f8SBryan DrewerySharing a cache between multiple work directories requires using a layout 3021c01e4f8SBryan Drewerysimilar to 3031c01e4f8SBryan Drewery.Pa /some/prefix/src 3041c01e4f8SBryan Drewery.Pa /some/prefix/obj 3051c01e4f8SBryan Dreweryand an environment such as: 3061c01e4f8SBryan Drewery.Bd -literal -offset indent 3071c01e4f8SBryan DreweryCCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj' 3081c01e4f8SBryan Drewery.Ed 3091c01e4f8SBryan Drewery.Pp 3101c01e4f8SBryan DrewerySee 3111c01e4f8SBryan Drewery.Xr ccache 1 3121c01e4f8SBryan Dreweryfor more configuration options. 31393da8366SEnji Cooper.It Va WITHOUT_CCD 314041c5049SEd MasteDo not build 31593da8366SEnji Cooper.Xr geom_ccd 4 31693da8366SEnji Cooperand related utilities. 31790be798eSDimitry Andric.It Va WITHOUT_CDDL 318041c5049SEd MasteDo not build code licensed under Sun's CDDL. 319344e2bb9SEd MasteWhen set, it enforces these options: 32090be798eSDimitry Andric.Pp 32190be798eSDimitry Andric.Bl -item -compact 32290be798eSDimitry Andric.It 32390be798eSDimitry Andric.Va WITHOUT_CTF 32490be798eSDimitry Andric.It 3253bf66365SBrooks Davis.Va WITHOUT_DTRACE 3263bf66365SBrooks Davis.It 3271f7d1483SEd Maste.Va WITHOUT_LOADER_ZFS 3281f7d1483SEd Maste.It 32990be798eSDimitry Andric.Va WITHOUT_ZFS 33090be798eSDimitry Andric.El 33190be798eSDimitry Andric.It Va WITHOUT_CLANG 332041c5049SEd MasteDo not build the Clang C/C++ compiler during the regular phase of the build. 333344e2bb9SEd MasteWhen set, it enforces these options: 33490be798eSDimitry Andric.Pp 33590be798eSDimitry Andric.Bl -item -compact 33690be798eSDimitry Andric.It 33790be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS 33890be798eSDimitry Andric.It 33919267656SConrad Meyer.Va WITHOUT_CLANG_FORMAT 34019267656SConrad Meyer.It 34190be798eSDimitry Andric.Va WITHOUT_CLANG_FULL 3425b9c3654SEd Maste.It 3435b9c3654SEd Maste.Va WITHOUT_LLVM_COV 34490be798eSDimitry Andric.El 345ac56b22fSEd Maste.Pp 346ac56b22fSEd MasteWhen set, these options are also in effect: 347ac56b22fSEd Maste.Pp 348ac56b22fSEd Maste.Bl -inset -compact 349ac56b22fSEd Maste.It Va WITHOUT_LLVM_TARGET_AARCH64 350ac56b22fSEd Maste(unless 351ac56b22fSEd Maste.Va WITH_LLVM_TARGET_AARCH64 352ac56b22fSEd Masteis set explicitly) 353ac56b22fSEd Maste.It Va WITHOUT_LLVM_TARGET_ALL 354ac56b22fSEd Maste(unless 355ac56b22fSEd Maste.Va WITH_LLVM_TARGET_ALL 356ac56b22fSEd Masteis set explicitly) 357ac56b22fSEd Maste.It Va WITHOUT_LLVM_TARGET_ARM 358ac56b22fSEd Maste(unless 359ac56b22fSEd Maste.Va WITH_LLVM_TARGET_ARM 360ac56b22fSEd Masteis set explicitly) 361ac56b22fSEd Maste.It Va WITHOUT_LLVM_TARGET_POWERPC 362ac56b22fSEd Maste(unless 363ac56b22fSEd Maste.Va WITH_LLVM_TARGET_POWERPC 364ac56b22fSEd Masteis set explicitly) 365ac56b22fSEd Maste.It Va WITHOUT_LLVM_TARGET_RISCV 366ac56b22fSEd Maste(unless 367ac56b22fSEd Maste.Va WITH_LLVM_TARGET_RISCV 368ac56b22fSEd Masteis set explicitly) 369ac56b22fSEd Maste.El 37090be798eSDimitry Andric.It Va WITHOUT_CLANG_BOOTSTRAP 371041c5049SEd MasteDo not build the Clang C/C++ compiler during the bootstrap phase of 372344e2bb9SEd Mastethe build. 373344e2bb9SEd MasteTo be able to build the system, either gcc or clang bootstrap must be 374344e2bb9SEd Masteenabled unless an alternate compiler is provided via XCC. 37590be798eSDimitry Andric.It Va WITH_CLANG_EXTRAS 376041c5049SEd MasteBuild additional clang and llvm tools, such as bugpoint and 377b3a27c81SEd Masteclang-format. 37819267656SConrad Meyer.It Va WITH_CLANG_FORMAT 379041c5049SEd MasteBuild clang-format. 38090be798eSDimitry Andric.It Va WITHOUT_CLANG_FULL 381041c5049SEd MasteAvoid building the ARCMigrate, Rewriter and StaticAnalyzer components of 38290be798eSDimitry Andricthe Clang C/C++ compiler. 383f83a16e0SEd Maste.It Va WITHOUT_CLEAN 384f83a16e0SEd MasteDo not clean before building world and/or kernel. 38590be798eSDimitry Andric.It Va WITHOUT_CPP 386041c5049SEd MasteDo not build 38790be798eSDimitry Andric.Xr cpp 1 . 38890be798eSDimitry Andric.It Va WITHOUT_CROSS_COMPILER 389041c5049SEd MasteDo not build any cross compiler in the cross-tools stage of buildworld. 390344e2bb9SEd MasteWhen compiling a different version of 39190be798eSDimitry Andric.Fx 392344e2bb9SEd Mastethan what is installed on the system, provide an alternate 39390be798eSDimitry Andriccompiler with XCC to ensure success. 394344e2bb9SEd MasteWhen compiling with an identical version of 39590be798eSDimitry Andric.Fx 39690be798eSDimitry Andricto the host, this option may be safely used. 39790be798eSDimitry AndricThis option may also be safe when the host version of 39890be798eSDimitry Andric.Fx 39990be798eSDimitry Andricis close to the sources being built, but all bets are off if there have 40090be798eSDimitry Andricbeen any changes to the toolchain between the versions. 401344e2bb9SEd MasteWhen set, it enforces these options: 40290be798eSDimitry Andric.Pp 40390be798eSDimitry Andric.Bl -item -compact 40490be798eSDimitry Andric.It 40590be798eSDimitry Andric.Va WITHOUT_CLANG_BOOTSTRAP 40690be798eSDimitry Andric.It 407f972b8a4SBryan Drewery.Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP 408f972b8a4SBryan Drewery.It 40928f52545SEd Maste.Va WITHOUT_LLD_BOOTSTRAP 41090be798eSDimitry Andric.El 41190be798eSDimitry Andric.It Va WITHOUT_CRYPT 412041c5049SEd MasteDo not build any crypto code. 413344e2bb9SEd MasteWhen set, it enforces these options: 41490be798eSDimitry Andric.Pp 41590be798eSDimitry Andric.Bl -item -compact 41690be798eSDimitry Andric.It 4179f4e04c1SEd Maste.Va WITHOUT_DMAGENT 4189f4e04c1SEd Maste.It 41990be798eSDimitry Andric.Va WITHOUT_KERBEROS 42090be798eSDimitry Andric.It 421fb27d7aeSEd Maste.Va WITHOUT_KERBEROS_SUPPORT 422fb27d7aeSEd Maste.It 423da39b3adSEd Maste.Va WITHOUT_LDNS 424da39b3adSEd Maste.It 425da39b3adSEd Maste.Va WITHOUT_LDNS_UTILS 426da39b3adSEd Maste.It 427379954d0SJessica Clarke.Va WITHOUT_LOADER_ZFS 428379954d0SJessica Clarke.It 42990be798eSDimitry Andric.Va WITHOUT_OPENSSH 43090be798eSDimitry Andric.It 43190be798eSDimitry Andric.Va WITHOUT_OPENSSL 432da39b3adSEd Maste.It 433ac56b22fSEd Maste.Va WITHOUT_OPENSSL_KTLS 434ac56b22fSEd Maste.It 435116f7fccSEd Maste.Va WITHOUT_PKGBOOTSTRAP 436116f7fccSEd Maste.It 437da39b3adSEd Maste.Va WITHOUT_UNBOUND 438243125c8SMitchell Horne.It 439243125c8SMitchell Horne.Va WITHOUT_ZFS 44090be798eSDimitry Andric.El 44190be798eSDimitry Andric.Pp 442344e2bb9SEd MasteWhen set, these options are also in effect: 44390be798eSDimitry Andric.Pp 44490be798eSDimitry Andric.Bl -inset -compact 44590be798eSDimitry Andric.It Va WITHOUT_GSSAPI 44690be798eSDimitry Andric(unless 44790be798eSDimitry Andric.Va WITH_GSSAPI 44890be798eSDimitry Andricis set explicitly) 44990be798eSDimitry Andric.El 45090be798eSDimitry Andric.It Va WITH_CTF 451041c5049SEd MasteCompile with CTF (Compact C Type Format) data. 45290be798eSDimitry AndricCTF data encapsulates a reduced form of debugging information 45390be798eSDimitry Andricsimilar to DWARF and the venerable stabs and is required for DTrace. 45454d8c5d5SBryan Drewery.It Va WITHOUT_CUSE 455041c5049SEd MasteDo not build CUSE-related programs and libraries. 4569cf76983SNavdeep Parhar.It Va WITHOUT_CXGBETOOL 457041c5049SEd MasteDo not build 4589cf76983SNavdeep Parhar.Xr cxgbetool 8 4599cf76983SNavdeep Parhar.Pp 4609cf76983SNavdeep ParharThis is a default setting on 461391e1f23SEd Mastearm/armv7, powerpc/powerpc and riscv/riscv64. 4629cf76983SNavdeep Parhar.It Va WITH_CXGBETOOL 463041c5049SEd MasteBuild 4649cf76983SNavdeep Parhar.Xr cxgbetool 8 4659cf76983SNavdeep Parhar.Pp 4669cf76983SNavdeep ParharThis is a default setting on 467ff5025d1SPiotr Kubajamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le. 4684a5e4462SEd Maste.It Va WITHOUT_DEBUG_FILES 469041c5049SEd MasteAvoid building or installing standalone debug files for each 4704a5e4462SEd Masteexecutable binary and shared library. 471ac56b22fSEd Maste.It Va WITH_DETECT_TZ_CHANGES 472ac56b22fSEd MasteMake the time handling code detect changes to the timezone files. 473*52fe961cSBaptiste Daroussin.It Va WITH_DIALOG 474*52fe961cSBaptiste DaroussinDo build 475344e2bb9SEd Maste.Xr dialog 1 , 476344e2bb9SEd Maste.Xr dialog 3 , 477344e2bb9SEd Maste.Xr dpv 1 , 478344e2bb9SEd Masteand 479344e2bb9SEd Maste.Xr dpv 3 . 48090be798eSDimitry Andric.It Va WITHOUT_DICT 481041c5049SEd MasteDo not build the Webster dictionary files. 48232b5dc9aSSimon J. Gerraty.It Va WITH_DIRDEPS_BUILD 483b46d461dSEd MasteThis is an alternate build system. 48432b5dc9aSSimon J. GerratyFor details see 4852ec9a427SPiotr Kubajhttps://www.crufty.net/sjg/docs/freebsd-meta-mode.htm. 486be894451SBryan DreweryBuild commands can be seen from the top-level with: 487be894451SBryan Drewery.Dl make show-valid-targets 48832b5dc9aSSimon J. GerratyThe build is driven by dirdeps.mk using 48932b5dc9aSSimon J. Gerraty.Va DIRDEPS 49032b5dc9aSSimon J. Gerratystored in 49132b5dc9aSSimon J. GerratyMakefile.depend files found in each directory. 49232b5dc9aSSimon J. Gerraty.Pp 49332b5dc9aSSimon J. GerratyThe build can be started from anywhere, and behaves the same. 49432b5dc9aSSimon J. GerratyThe initial instance of 49532b5dc9aSSimon J. Gerraty.Xr make 1 49632b5dc9aSSimon J. Gerratyrecursively reads 49732b5dc9aSSimon J. Gerraty.Va DIRDEPS 498344e2bb9SEd Mastefrom 499344e2bb9SEd Maste.Pa Makefile.depend , 50032b5dc9aSSimon J. Gerratycomputing a graph of tree dependencies from the current origin. 50132b5dc9aSSimon J. GerratySetting 50232b5dc9aSSimon J. Gerraty.Va NO_DIRDEPS 503344e2bb9SEd Masteskips checking dirdep dependencies and will only build in the current 5047f76a95cSBryan Dreweryand child directories. 5057f76a95cSBryan Drewery.Va NO_DIRDEPS_BELOW 506344e2bb9SEd Masteskips building any dirdeps and only build the current directory. 50732b5dc9aSSimon J. Gerraty.Pp 508be894451SBryan DreweryThis also utilizes the 509be894451SBryan Drewery.Va WITH_META_MODE 510be894451SBryan Drewerylogic for incremental builds. 51132b5dc9aSSimon J. Gerraty.Pp 512344e2bb9SEd MasteThe build hides commands executed unless 51332b5dc9aSSimon J. Gerraty.Va NO_SILENT 51432b5dc9aSSimon J. Gerratyis defined. 51532b5dc9aSSimon J. Gerraty.Pp 516be894451SBryan DreweryNote that there is currently no mass install feature for this. 517b46d461dSEd MasteThis build is designed for producing packages, that can then be installed 518b46d461dSEd Masteon a target system. 519be894451SBryan Drewery.Pp 520b46d461dSEd MasteThe implementation in 521b46d461dSEd Maste.Fx 522b46d461dSEd Masteis incomplete. 523b46d461dSEd MasteCompletion would require leaf directories for building each kernel 524b46d461dSEd Masteand package so that their dependencies can be tracked. 525344e2bb9SEd MasteWhen set, it enforces these options: 52632b5dc9aSSimon J. Gerraty.Pp 52732b5dc9aSSimon J. Gerraty.Bl -item -compact 52832b5dc9aSSimon J. Gerraty.It 52932b5dc9aSSimon J. Gerraty.Va WITH_INSTALL_AS_USER 53032b5dc9aSSimon J. Gerraty.El 53132b5dc9aSSimon J. Gerraty.Pp 532344e2bb9SEd MasteWhen set, these options are also in effect: 53332b5dc9aSSimon J. Gerraty.Pp 53432b5dc9aSSimon J. Gerraty.Bl -inset -compact 535d1fdf357SEd Maste.It Va WITH_META_ERROR_TARGET 536d1fdf357SEd Maste(unless 537d1fdf357SEd Maste.Va WITHOUT_META_ERROR_TARGET 538d1fdf357SEd Masteis set explicitly) 53926b79d5bSHajimu UMEMOTO.It Va WITH_META_MODE 54026b79d5bSHajimu UMEMOTO(unless 54126b79d5bSHajimu UMEMOTO.Va WITHOUT_META_MODE 54226b79d5bSHajimu UMEMOTOis set explicitly) 54332b5dc9aSSimon J. Gerraty.It Va WITH_STAGING 54432b5dc9aSSimon J. Gerraty(unless 54532b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING 54632b5dc9aSSimon J. Gerratyis set explicitly) 54732b5dc9aSSimon J. Gerraty.It Va WITH_STAGING_MAN 54832b5dc9aSSimon J. Gerraty(unless 54932b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING_MAN 55032b5dc9aSSimon J. Gerratyis set explicitly) 55132b5dc9aSSimon J. Gerraty.It Va WITH_STAGING_PROG 55232b5dc9aSSimon J. Gerraty(unless 55332b5dc9aSSimon J. Gerraty.Va WITHOUT_STAGING_PROG 55432b5dc9aSSimon J. Gerratyis set explicitly) 55532b5dc9aSSimon J. Gerraty.It Va WITH_SYSROOT 55632b5dc9aSSimon J. Gerraty(unless 55732b5dc9aSSimon J. Gerraty.Va WITHOUT_SYSROOT 55832b5dc9aSSimon J. Gerratyis set explicitly) 55932b5dc9aSSimon J. Gerraty.El 56032b5dc9aSSimon J. Gerraty.Pp 56132b5dc9aSSimon J. GerratyThis must be set in the environment, make command line, or 56232b5dc9aSSimon J. Gerraty.Pa /etc/src-env.conf , 56332b5dc9aSSimon J. Gerratynot 56432b5dc9aSSimon J. Gerraty.Pa /etc/src.conf . 565cc2520d2SSimon J. Gerraty.It Va WITH_DIRDEPS_CACHE 566cc2520d2SSimon J. GerratyCache result of dirdeps.mk which can save significant time 567cc2520d2SSimon J. Gerratyfor subsequent builds. 568cc2520d2SSimon J. GerratyDepends on 56932b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD . 5700a70ef02SBryan Drewery.Pp 571ba852870SBryan DreweryThis must be set in the environment, make command line, or 5720a70ef02SBryan Drewery.Pa /etc/src-env.conf , 5730a70ef02SBryan Drewerynot 5740a70ef02SBryan Drewery.Pa /etc/src.conf . 5759e914c7aSJessica Clarke.It Va WITH_DISK_IMAGE_TOOLS_BOOTSTRAP 5769e914c7aSJessica ClarkeBuild 5779e914c7aSJessica Clarke.Xr etdump 1 , 5789e914c7aSJessica Clarke.Xr makefs 8 5799e914c7aSJessica Clarkeand 5809e914c7aSJessica Clarke.Xr mkimg 1 5819e914c7aSJessica Clarkeas bootstrap tools. 58290be798eSDimitry Andric.It Va WITHOUT_DMAGENT 583041c5049SEd MasteDo not build dma Mail Transport Agent. 58490be798eSDimitry Andric.It Va WITHOUT_DOCCOMPRESS 585041c5049SEd MasteDo not install compressed system documentation. 58690be798eSDimitry AndricOnly the uncompressed version will be installed. 5873bf66365SBrooks Davis.It Va WITHOUT_DTRACE 5883bf66365SBrooks DavisDo not build DTrace framework kernel modules, libraries, and user commands. 5893bf66365SBrooks DavisWhen set, it enforces these options: 5903bf66365SBrooks Davis.Pp 5913bf66365SBrooks Davis.Bl -item -compact 5923bf66365SBrooks Davis.It 5933bf66365SBrooks Davis.Va WITHOUT_CTF 5943bf66365SBrooks Davis.El 5956de02228SDomagoj Stolfa.It Va WITH_DTRACE_ASAN 5966de02228SDomagoj StolfaCompile userspace DTrace code (libdtrace, dtrace(1), lockstat(1), plockstat(1)) 5976de02228SDomagoj Stolfawith address and undefined behavior sanitizers. 5986de02228SDomagoj StolfaRequires that Clang be used as the base system compiler 5996de02228SDomagoj Stolfaand that the runtime support library is available. 60016f3fdf5SMark Johnston.It Va WITH_DTRACE_TESTS 601041c5049SEd MasteBuild and install the DTrace test suite in 60216f3fdf5SMark Johnston.Pa /usr/tests/cddl/usr.sbin/dtrace . 60316f3fdf5SMark JohnstonThis test suite is considered experimental on architectures other than 60416f3fdf5SMark Johnstonamd64/amd64 and running it may cause system instability. 60590be798eSDimitry Andric.It Va WITHOUT_DYNAMICROOT 60690be798eSDimitry AndricSet this if you do not want to link 60790be798eSDimitry Andric.Pa /bin 60890be798eSDimitry Andricand 60990be798eSDimitry Andric.Pa /sbin 61090be798eSDimitry Andricdynamically. 61193da8366SEnji Cooper.It Va WITHOUT_EE 612041c5049SEd MasteDo not build and install 61393da8366SEnji Cooper.Xr edit 1 , 61493da8366SEnji Cooper.Xr ee 1 , 61593da8366SEnji Cooperand related programs. 6160cd582c8SEnji Cooper.It Va WITHOUT_EFI 6170cd582c8SEnji CooperSet not to build 6180cd582c8SEnji Cooper.Xr efivar 3 6190cd582c8SEnji Cooperand 6200cd582c8SEnji Cooper.Xr efivar 8 . 6210cd582c8SEnji Cooper.Pp 622344e2bb9SEd MasteThis is a default setting on 623d1fdf357SEd Mastei386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64. 6240cd582c8SEnji Cooper.It Va WITH_EFI 625041c5049SEd MasteBuild 6260cd582c8SEnji Cooper.Xr efivar 3 6270cd582c8SEnji Cooperand 6280cd582c8SEnji Cooper.Xr efivar 8 . 6290cd582c8SEnji Cooper.Pp 630344e2bb9SEd MasteThis is a default setting on 631391e1f23SEd Masteamd64/amd64, arm/armv7 and arm64/aarch64. 6325977355fSBryan Drewery.It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP 633041c5049SEd MasteDo not build ELF Tool Chain tools 6345977355fSBryan Drewery(addr2line, nm, size, strings and strip) 6355977355fSBryan Dreweryas part of the bootstrap process. 6365977355fSBryan Drewery.Bf -symbolic 6375977355fSBryan DreweryAn alternate bootstrap tool chain must be provided. 6385977355fSBryan Drewery.Ef 63990be798eSDimitry Andric.It Va WITHOUT_EXAMPLES 640041c5049SEd MasteAvoid installing examples to 64190be798eSDimitry Andric.Pa /usr/share/examples/ . 64243f75d57SBjoern A. Zeeb.It Va WITH_EXPERIMENTAL 643041c5049SEd MasteInclude experimental features in the build. 644d5a2667bSJonathan T. Looney.It Va WITH_EXTRA_TCP_STACKS 645041c5049SEd MasteBuild extra TCP stack modules. 6463f9c1b2cSEd Maste.It Va WITHOUT_FDT 6473f9c1b2cSEd MasteDo not build Flattened Device Tree support as part of the base system. 6483f9c1b2cSEd MasteThis includes the device tree compiler (dtc) and libfdt support library. 6493f9c1b2cSEd Maste.Pp 6503f9c1b2cSEd MasteThis is a default setting on 6513f9c1b2cSEd Masteamd64/amd64 and i386/i386. 652a8af3aeeSEd Maste.It Va WITH_FDT 653a8af3aeeSEd MasteBuild Flattened Device Tree support as part of the base system. 65490be798eSDimitry AndricThis includes the device tree compiler (dtc) and libfdt support library. 6553f9c1b2cSEd Maste.Pp 6563f9c1b2cSEd MasteThis is a default setting on 657391e1f23SEd Mastearm/armv7, arm64/aarch64, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64. 6580e0e9604SEnji Cooper.It Va WITHOUT_FILE 659041c5049SEd MasteDo not build 6600e0e9604SEnji Cooper.Xr file 1 6610e0e9604SEnji Cooperand related programs. 6620e0e9604SEnji Cooper.It Va WITHOUT_FINGER 663041c5049SEd MasteDo not build or install 6640e0e9604SEnji Cooper.Xr finger 1 6650e0e9604SEnji Cooperand 6660e0e9604SEnji Cooper.Xr fingerd 8 . 66790be798eSDimitry Andric.It Va WITHOUT_FLOPPY 668041c5049SEd MasteDo not build or install programs 66990be798eSDimitry Andricfor operating floppy disk driver. 670a0f6423bSEd Maste.It Va WITHOUT_FORMAT_EXTENSIONS 671041c5049SEd MasteDo not enable 672a0f6423bSEd Maste.Fl fformat-extensions 673a0f6423bSEd Mastewhen compiling the kernel. 674a0f6423bSEd MasteAlso disables all format checking. 67590be798eSDimitry Andric.It Va WITHOUT_FORTH 676041c5049SEd MasteBuild bootloaders without Forth support. 67790be798eSDimitry Andric.It Va WITHOUT_FP_LIBC 678041c5049SEd MasteBuild 67990be798eSDimitry Andric.Nm libc 68090be798eSDimitry Andricwithout floating-point support. 68190be798eSDimitry Andric.It Va WITHOUT_FREEBSD_UPDATE 682041c5049SEd MasteDo not build 68390be798eSDimitry Andric.Xr freebsd-update 8 . 6840e0e9604SEnji Cooper.It Va WITHOUT_FTP 685041c5049SEd MasteDo not build or install 6860e0e9604SEnji Cooper.Xr ftp 1 6870e0e9604SEnji Cooperand 6880e0e9604SEnji Cooper.Xr ftpd 8 . 68990be798eSDimitry Andric.It Va WITHOUT_GAMES 690041c5049SEd MasteDo not build games. 691160ea953SStefan Eßer.It Va WITHOUT_GH_BC 692041c5049SEd MasteInstall the traditional FreeBSD 69368c8c1a7SStefan Eßer.Xr bc 1 694160ea953SStefan Eßerand 69568c8c1a7SStefan Eßer.Xr dc 1 696041c5049SEd Masteprograms instead of the enhanced versions. 69736e8c7bbSEd Maste.It Va WITHOUT_GNU_DIFF 698041c5049SEd MasteDo not build GNU 69936e8c7bbSEd Maste.Xr diff3 1 . 7007840b63aSEnji Cooper.It Va WITHOUT_GOOGLETEST 701041c5049SEd MasteNeither build nor install 7027840b63aSEnji Cooper.Lb libgmock , 7037840b63aSEnji Cooper.Lb libgtest , 7047840b63aSEnji Cooperand dependent tests. 70590be798eSDimitry Andric.It Va WITHOUT_GPIO 706041c5049SEd MasteDo not build 70790be798eSDimitry Andric.Xr gpioctl 8 70890be798eSDimitry Andricas part of the base system. 70990be798eSDimitry Andric.It Va WITHOUT_GSSAPI 710041c5049SEd MasteDo not build libgssapi. 71161940879SEnji Cooper.It Va WITHOUT_HAST 712041c5049SEd MasteDo not build 71361940879SEnji Cooper.Xr hastd 8 71461940879SEnji Cooperand related utilities. 71590be798eSDimitry Andric.It Va WITH_HESIOD 716041c5049SEd MasteBuild Hesiod support. 71790be798eSDimitry Andric.It Va WITHOUT_HTML 718041c5049SEd MasteDo not build HTML docs. 7192c4b4abcSXin LI.It Va WITHOUT_HYPERV 720041c5049SEd MasteDo not build or install HyperV utilities. 7210543ade3SBrooks Davis.Pp 7220543ade3SBrooks DavisThis is a default setting on 723391e1f23SEd Mastearm/armv7, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64. 7240543ade3SBrooks Davis.It Va WITH_HYPERV 725041c5049SEd MasteBuild or install HyperV utilities. 7260543ade3SBrooks Davis.Pp 7270543ade3SBrooks DavisThis is a default setting on 72807853c6cSEd Masteamd64/amd64, arm64/aarch64 and i386/i386. 72990be798eSDimitry Andric.It Va WITHOUT_ICONV 730041c5049SEd MasteDo not build iconv as part of libc. 731c5d09a87SGlen Barber.It Va WITHOUT_INCLUDES 732041c5049SEd MasteDo not install header files. 733c5d09a87SGlen BarberThis option used to be spelled 734c5d09a87SGlen Barber.Va NO_INCS . 735c5d09a87SGlen Barber.Bf -symbolic 736c5d09a87SGlen BarberThe option does not work for build targets. 737c5d09a87SGlen Barber.Ef 73890be798eSDimitry Andric.It Va WITHOUT_INET 739041c5049SEd MasteDo not build programs and libraries related to IPv4 networking. 740344e2bb9SEd MasteWhen set, it enforces these options: 74190be798eSDimitry Andric.Pp 74290be798eSDimitry Andric.Bl -item -compact 74390be798eSDimitry Andric.It 74490be798eSDimitry Andric.Va WITHOUT_INET_SUPPORT 74590be798eSDimitry Andric.El 74690be798eSDimitry Andric.It Va WITHOUT_INET6 747041c5049SEd MasteDo not build 74890be798eSDimitry Andricprograms and libraries related to IPv6 networking. 749344e2bb9SEd MasteWhen set, it enforces these options: 75090be798eSDimitry Andric.Pp 75190be798eSDimitry Andric.Bl -item -compact 75290be798eSDimitry Andric.It 75390be798eSDimitry Andric.Va WITHOUT_INET6_SUPPORT 75490be798eSDimitry Andric.El 75590be798eSDimitry Andric.It Va WITHOUT_INET6_SUPPORT 756041c5049SEd MasteBuild libraries, programs, and kernel modules without IPv6 support. 7570e0e9604SEnji Cooper.It Va WITHOUT_INETD 758041c5049SEd MasteDo not build 7590e0e9604SEnji Cooper.Xr inetd 8 . 76090be798eSDimitry Andric.It Va WITHOUT_INET_SUPPORT 761041c5049SEd MasteBuild libraries, programs, and kernel modules without IPv4 support. 76290be798eSDimitry Andric.It Va WITHOUT_INSTALLLIB 763344e2bb9SEd MasteSet this to not install optional libraries. 764344e2bb9SEd MasteFor example, when creating a 76590be798eSDimitry Andric.Xr nanobsd 8 76690be798eSDimitry Andricimage. 767f79bedf5SBryan Drewery.Bf -symbolic 768f79bedf5SBryan DreweryThe option does not work for build targets. 769f79bedf5SBryan Drewery.Ef 77090be798eSDimitry Andric.It Va WITH_INSTALL_AS_USER 771041c5049SEd MasteMake install targets succeed for non-root users by installing 77290be798eSDimitry Andricfiles with owner and group attributes set to that of the user running 77390be798eSDimitry Andricthe 77490be798eSDimitry Andric.Xr make 1 77590be798eSDimitry Andriccommand. 776344e2bb9SEd MasteThe user still must set the 77790be798eSDimitry Andric.Va DESTDIR 77890be798eSDimitry Andricvariable to point to a directory where the user has write permissions. 77990be798eSDimitry Andric.It Va WITHOUT_IPFILTER 780041c5049SEd MasteDo not build IP Filter package. 78190be798eSDimitry Andric.It Va WITHOUT_IPFW 782041c5049SEd MasteDo not build IPFW tools. 78388342134SEnji Cooper.It Va WITHOUT_IPSEC_SUPPORT 784041c5049SEd MasteDo not build the kernel with 78588342134SEnji Cooper.Xr ipsec 4 78688342134SEnji Coopersupport. 78788342134SEnji CooperThis option is needed for 78888342134SEnji Cooper.Xr ipsec 4 78988342134SEnji Cooperand 79088342134SEnji Cooper.Xr tcpmd5 4 . 79193da8366SEnji Cooper.It Va WITHOUT_ISCSI 792041c5049SEd MasteDo not build 79326d6bbfaSSevan Janiyan.Xr iscsid 8 79493da8366SEnji Cooperand related utilities. 79590be798eSDimitry Andric.It Va WITHOUT_JAIL 796041c5049SEd MasteDo not build tools for the support of jails; e.g., 79790be798eSDimitry Andric.Xr jail 8 . 79890be798eSDimitry Andric.It Va WITHOUT_KDUMP 799041c5049SEd MasteDo not build 80090be798eSDimitry Andric.Xr kdump 1 80190be798eSDimitry Andricand 80290be798eSDimitry Andric.Xr truss 1 . 80390be798eSDimitry Andric.It Va WITHOUT_KERBEROS 804344e2bb9SEd MasteSet this to not build Kerberos 5 (KTH Heimdal). 805344e2bb9SEd MasteWhen set, these options are also in effect: 80690be798eSDimitry Andric.Pp 80790be798eSDimitry Andric.Bl -inset -compact 80890be798eSDimitry Andric.It Va WITHOUT_GSSAPI 80990be798eSDimitry Andric(unless 81090be798eSDimitry Andric.Va WITH_GSSAPI 81190be798eSDimitry Andricis set explicitly) 812bf64e879SBryan Drewery.It Va WITHOUT_KERBEROS_SUPPORT 813bf64e879SBryan Drewery(unless 814bf64e879SBryan Drewery.Va WITH_KERBEROS_SUPPORT 815bf64e879SBryan Dreweryis set explicitly) 81690be798eSDimitry Andric.El 81790be798eSDimitry Andric.It Va WITHOUT_KERBEROS_SUPPORT 818041c5049SEd MasteBuild some programs without Kerberos support, like 81990be798eSDimitry Andric.Xr ssh 1 , 82090be798eSDimitry Andric.Xr telnet 1 , 82190be798eSDimitry Andricand 822b4cfdbfeSBrooks Davis.Xr sshd 8 . 8236f7527f0SEd Maste.It Va WITH_KERNEL_RETPOLINE 824041c5049SEd MasteEnable the "retpoline" mitigation for CVE-2017-5715 in the kernel 8256f7527f0SEd Mastebuild. 826a0f6423bSEd Maste.It Va WITHOUT_KERNEL_SYMBOLS 827330b7dccSEd MasteDo not install standalone kernel debug symbol files. 828330b7dccSEd MasteThis option has no effect at build time. 82990be798eSDimitry Andric.It Va WITHOUT_KVM 830041c5049SEd MasteDo not build the 83190be798eSDimitry Andric.Nm libkvm 83290be798eSDimitry Andriclibrary as a part of the base system. 83390be798eSDimitry Andric.Bf -symbolic 83490be798eSDimitry AndricThe option has no effect yet. 83590be798eSDimitry Andric.Ef 836bf64e879SBryan DreweryWhen set, these options are also in effect: 83790be798eSDimitry Andric.Pp 838bf64e879SBryan Drewery.Bl -inset -compact 839bf64e879SBryan Drewery.It Va WITHOUT_KVM_SUPPORT 840bf64e879SBryan Drewery(unless 841bf64e879SBryan Drewery.Va WITH_KVM_SUPPORT 842bf64e879SBryan Dreweryis set explicitly) 84390be798eSDimitry Andric.El 84490be798eSDimitry Andric.It Va WITHOUT_KVM_SUPPORT 845041c5049SEd MasteBuild some programs without optional 84690be798eSDimitry Andric.Nm libkvm 84790be798eSDimitry Andricsupport. 84890be798eSDimitry Andric.It Va WITHOUT_LDNS 84990be798eSDimitry AndricSetting this variable will prevent the LDNS library from being built. 850344e2bb9SEd MasteWhen set, it enforces these options: 85190be798eSDimitry Andric.Pp 85290be798eSDimitry Andric.Bl -item -compact 85390be798eSDimitry Andric.It 85490be798eSDimitry Andric.Va WITHOUT_LDNS_UTILS 85590be798eSDimitry Andric.It 85690be798eSDimitry Andric.Va WITHOUT_UNBOUND 85790be798eSDimitry Andric.El 85890be798eSDimitry Andric.It Va WITHOUT_LDNS_UTILS 85990be798eSDimitry AndricSetting this variable will prevent building the LDNS utilities 86090be798eSDimitry Andric.Xr drill 1 86190be798eSDimitry Andricand 86290be798eSDimitry Andric.Xr host 1 . 86390be798eSDimitry Andric.It Va WITHOUT_LEGACY_CONSOLE 864041c5049SEd MasteDo not build programs that support a legacy PC console; e.g., 86523a6b49aSEdward Tomasz Napierala.Xr kbdcontrol 1 86690be798eSDimitry Andricand 86723a6b49aSEdward Tomasz Napierala.Xr vidcontrol 1 . 86890be798eSDimitry Andric.It Va WITHOUT_LIB32 869041c5049SEd MasteOn 64-bit platforms, do not build 32-bit library set and a 87090be798eSDimitry Andric.Nm ld-elf32.so.1 87190be798eSDimitry Andricruntime linker. 872f3cdc622SEd Maste.Pp 873f3cdc622SEd MasteThis is a default setting on 874391e1f23SEd Mastearm/armv7, i386/i386, powerpc/powerpc, powerpc/powerpc64le and riscv/riscv64. 875c5819624SEd Maste.It Va WITH_LIB32 876c5819624SEd MasteOn 64-bit platforms, build the 32-bit library set and a 877c5819624SEd Maste.Nm ld-elf32.so.1 878c5819624SEd Masteruntime linker. 879c5819624SEd Maste.Pp 880c5819624SEd MasteThis is a default setting on 88181a7ce44SJose Luis Duranamd64/amd64, arm64/aarch64 and powerpc/powerpc64. 88236e8c7bbSEd Maste.It Va WITHOUT_LLD 883041c5049SEd MasteDo not build LLVM's lld linker. 8841500eb21SEd Maste.It Va WITHOUT_LLDB 885041c5049SEd MasteDo not build the LLDB debugger. 8861500eb21SEd Maste.Pp 887344e2bb9SEd MasteThis is a default setting on 888391e1f23SEd Mastearm/armv7 and riscv/riscv64. 88990be798eSDimitry Andric.It Va WITH_LLDB 890041c5049SEd MasteBuild the LLDB debugger. 8911500eb21SEd Maste.Pp 892344e2bb9SEd MasteThis is a default setting on 8932ec9a427SPiotr Kubajamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le. 8946c2b7edaSEd Maste.It Va WITHOUT_LLD_BOOTSTRAP 895041c5049SEd MasteDo not build the LLD linker during the bootstrap phase of 8966c2b7edaSEd Mastethe build. 8977680431aSEd MasteTo be able to build the system an alternate linker must be provided via XLD. 898661cf9b6SYoshihiro Takahashi.It Va WITHOUT_LLD_IS_LD 8997680431aSEd MasteDo not install a 9007680431aSEd Maste.Pa /usr/bin/ld symlink 9017680431aSEd Masteto 9027680431aSEd Maste.Pa ld.lld . 9037680431aSEd MasteThe system will not have a usable tool chain unless a linker is provided 9047680431aSEd Mastesome other way. 905a870eaa4SKyle Evans.It Va WITHOUT_LLVM_ASSERTIONS 906041c5049SEd MasteDisable debugging assertions in LLVM. 907ac56b22fSEd Maste.It Va WITH_LLVM_BINUTILS 908a9d0665bSEd MasteInstall LLVM's binutils (without an llvm- prefix), 909a9d0665bSEd Masteinstead of ELF Tool Chain's tools. 910a9d0665bSEd MasteThis includes 911a9d0665bSEd Maste.Xr addr2line 1 , 912a9d0665bSEd Maste.Xr ar 1 , 913a9d0665bSEd Maste.Xr nm 1 , 914a9d0665bSEd Maste.Xr objcopy 1 , 915a9d0665bSEd Maste.Xr ranlib 1 , 916a9d0665bSEd Maste.Xr readelf 1 , 917a9d0665bSEd Maste.Xr size 1 , 918a9d0665bSEd Masteand 919a9d0665bSEd Maste.Xr strip 1 . 920a9d0665bSEd MasteRegardless of this setting, LLVM tools are used for 921a9d0665bSEd Maste.Xr c++filt 1 922a9d0665bSEd Masteand 923a9d0665bSEd Maste.Xr objdump 1 . 924a9d0665bSEd Maste.Xr strings 1 925a9d0665bSEd Masteis always provided by ELF Tool Chain. 9265b9c3654SEd Maste.It Va WITHOUT_LLVM_COV 927041c5049SEd MasteDo not build the 9285b9c3654SEd Maste.Xr llvm-cov 1 9295b9c3654SEd Mastetool. 9309fa94e1cSDimitry Andric.It Va WITHOUT_LLVM_CXXFILT 9319fa94e1cSDimitry AndricInstall ELF Tool Chain's cxxfilt as c++filt, instead of LLVM's llvm-cxxfilt. 932cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_AARCH64 933041c5049SEd MasteDo not build LLVM target support for AArch64. 934bf64e879SBryan DreweryThe 935bf64e879SBryan Drewery.Va LLVM_TARGET_ALL 936bf64e879SBryan Dreweryoption should be used rather than this in most cases. 937bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ALL 938041c5049SEd MasteOnly build the required LLVM target support. 939bf64e879SBryan DreweryThis option is preferred to specific target support options. 940bf64e879SBryan DreweryWhen set, these options are also in effect: 941bf64e879SBryan Drewery.Pp 942bf64e879SBryan Drewery.Bl -inset -compact 943bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_AARCH64 944bf64e879SBryan Drewery(unless 945bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_AARCH64 946bf64e879SBryan Dreweryis set explicitly) 947bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ARM 948bf64e879SBryan Drewery(unless 949bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_ARM 950bf64e879SBryan Dreweryis set explicitly) 951bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_POWERPC 952bf64e879SBryan Drewery(unless 953bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_POWERPC 954bf64e879SBryan Dreweryis set explicitly) 955f3cdc622SEd Maste.It Va WITHOUT_LLVM_TARGET_RISCV 956f3cdc622SEd Maste(unless 957f3cdc622SEd Maste.Va WITH_LLVM_TARGET_RISCV 958f3cdc622SEd Masteis set explicitly) 959bf64e879SBryan Drewery.El 960cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_ARM 961041c5049SEd MasteDo not build LLVM target support for ARM. 962bf64e879SBryan DreweryThe 963bf64e879SBryan Drewery.Va LLVM_TARGET_ALL 964bf64e879SBryan Dreweryoption should be used rather than this in most cases. 96589edb881SDimitry Andric.It Va WITH_LLVM_TARGET_BPF 966041c5049SEd MasteBuild LLVM target support for BPF. 96789edb881SDimitry AndricThe 96889edb881SDimitry Andric.Va LLVM_TARGET_ALL 96989edb881SDimitry Andricoption should be used rather than this in most cases. 9706bdbfa49SPiotr Kubaj.It Va WITH_LLVM_TARGET_MIPS 9716bdbfa49SPiotr KubajBuild LLVM target support for MIPS. 972bf64e879SBryan DreweryThe 973bf64e879SBryan Drewery.Va LLVM_TARGET_ALL 974bf64e879SBryan Dreweryoption should be used rather than this in most cases. 975cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_POWERPC 976041c5049SEd MasteDo not build LLVM target support for PowerPC. 977bf64e879SBryan DreweryThe 978bf64e879SBryan Drewery.Va LLVM_TARGET_ALL 979bf64e879SBryan Dreweryoption should be used rather than this in most cases. 980f3cdc622SEd Maste.It Va WITHOUT_LLVM_TARGET_RISCV 981041c5049SEd MasteDo not build LLVM target support for RISC-V. 982f3cdc622SEd MasteThe 983f3cdc622SEd Maste.Va LLVM_TARGET_ALL 984f3cdc622SEd Masteoption should be used rather than this in most cases. 985cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_X86 986041c5049SEd MasteDo not build LLVM target support for X86. 987bf64e879SBryan DreweryThe 988bf64e879SBryan Drewery.Va LLVM_TARGET_ALL 989bf64e879SBryan Dreweryoption should be used rather than this in most cases. 990bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT 991bfdf8aa9SJohn BaldwinEnable building 992bfdf8aa9SJohn Baldwin.Xr loader 8 993bfdf8aa9SJohn Baldwinwith support for verification based on certificates obtained from UEFI. 994782df3edSEd Maste.It Va WITHOUT_LOADER_GELI 995782df3edSEd MasteDisable inclusion of GELI crypto support in the boot chain binaries. 99630323356SWarner Losh.Pp 99730323356SWarner LoshThis is a default setting on 9988cfd7a6aSPiotr Kubajpowerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le. 9998edab9cdSWarner Losh.It Va WITH_LOADER_GELI 1000041c5049SEd MasteBuild GELI bootloader support. 10018edab9cdSWarner Losh.Pp 10028edab9cdSWarner LoshThis is a default setting on 1003391e1f23SEd Masteamd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64. 10042ec9a427SPiotr Kubaj.It Va WITHOUT_LOADER_KBOOT 10052ec9a427SPiotr KubajDo not build kboot, a linuxboot environment loader 10062ec9a427SPiotr Kubaj.Pp 10072ec9a427SPiotr KubajThis is a default setting on 1008391e1f23SEd Mastearm/armv7, i386/i386, powerpc/powerpc, powerpc/powerpc64le and riscv/riscv64. 10092ec9a427SPiotr Kubaj.It Va WITH_LOADER_KBOOT 10102ec9a427SPiotr KubajBuild kboot, a linuxboot environment loader 10112ec9a427SPiotr Kubaj.Pp 10122ec9a427SPiotr KubajThis is a default setting on 1013cfe244cbSBrooks Davisamd64/amd64, arm64/aarch64 and powerpc/powerpc64. 10148edab9cdSWarner Losh.It Va WITHOUT_LOADER_LUA 1015041c5049SEd MasteDo not build LUA bindings for the boot loader. 10168edab9cdSWarner Losh.Pp 10178edab9cdSWarner LoshThis is a default setting on 10188cfd7a6aSPiotr Kubajpowerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le. 10196f7527f0SEd Maste.It Va WITH_LOADER_LUA 1020041c5049SEd MasteBuild LUA bindings for the boot loader. 102130323356SWarner Losh.Pp 102230323356SWarner LoshThis is a default setting on 1023391e1f23SEd Masteamd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64. 1024b8f3641fSKyle Evans.It Va WITHOUT_LOADER_OFW 1025b8f3641fSKyle EvansDisable building of openfirmware bootloader components. 1026b8f3641fSKyle Evans.Pp 1027b8f3641fSKyle EvansThis is a default setting on 1028391e1f23SEd Masteamd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64. 1029b8f3641fSKyle Evans.It Va WITH_LOADER_OFW 1030041c5049SEd MasteBuild openfirmware bootloader components. 1031b8f3641fSKyle Evans.Pp 1032b8f3641fSKyle EvansThis is a default setting on 10338cfd7a6aSPiotr Kubajpowerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le. 1034b8f3641fSKyle Evans.It Va WITHOUT_LOADER_UBOOT 1035b8f3641fSKyle EvansDisable building of ubldr. 1036b8f3641fSKyle Evans.Pp 1037b8f3641fSKyle EvansThis is a default setting on 1038d27cc068SJohn Baldwinamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64le and riscv/riscv64. 1039b8f3641fSKyle Evans.It Va WITH_LOADER_UBOOT 1040041c5049SEd MasteBuild ubldr. 1041b8f3641fSKyle Evans.Pp 1042b8f3641fSKyle EvansThis is a default setting on 1043391e1f23SEd Mastearm/armv7, powerpc/powerpc and powerpc/powerpc64. 10441f7d1483SEd Maste.It Va WITH_LOADER_VERBOSE 1045041c5049SEd MasteBuild with extra verbose debugging in the loader. 10461f7d1483SEd MasteMay explode already nearly too large loader over the limit. 10471f7d1483SEd MasteUse with care. 1048bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_VERIEXEC 1049bfdf8aa9SJohn BaldwinEnable building 1050bfdf8aa9SJohn Baldwin.Xr loader 8 1051de19b521SDimitry Andricwith support for verification similar to Verified Exec. 1052bfdf8aa9SJohn Baldwin.Pp 1053de19b521SDimitry AndricDepends on 1054de19b521SDimitry Andric.Va WITH_BEARSSL . 1055bfdf8aa9SJohn BaldwinWhen set, these options are also in effect: 1056bfdf8aa9SJohn Baldwin.Pp 1057bfdf8aa9SJohn Baldwin.Bl -inset -compact 1058bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT 1059bfdf8aa9SJohn Baldwin(unless 1060bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_EFI_SECUREBOOT 1061bfdf8aa9SJohn Baldwinis set explicitly) 1062f87a2082SEd Maste.It Va WITH_LOADER_VERIEXEC_VECTX 1063f87a2082SEd Maste(unless 1064f87a2082SEd Maste.Va WITHOUT_LOADER_VERIEXEC_VECTX 1065f87a2082SEd Masteis set explicitly) 1066bfdf8aa9SJohn Baldwin.El 1067de19b521SDimitry Andric.It Va WITH_LOADER_VERIEXEC_PASS_MANIFEST 1068de19b521SDimitry AndricEnable building 1069de19b521SDimitry Andric.Xr loader 8 1070de19b521SDimitry Andricwith support to pass a verified manifest to the kernel. 1071de19b521SDimitry AndricThe kernel has to be built with a module to parse the manifest. 1072de19b521SDimitry Andric.Pp 1073de19b521SDimitry AndricDepends on 1074de19b521SDimitry Andric.Va WITH_LOADER_VERIEXEC . 10753ac71149SBrooks Davis.It Va WITH_LOADER_VERIEXEC_VECTX 10763ac71149SBrooks DavisEnable building 10773ac71149SBrooks Davis.Xr loader 8 10783ac71149SBrooks Daviswith support for hashing and verifying kernel and modules as a side effect 10793ac71149SBrooks Davisof loading. 10803ac71149SBrooks Davis.Pp 10813ac71149SBrooks DavisDepends on 10823ac71149SBrooks Davis.Va WITH_LOADER_VERIEXEC . 10831f7d1483SEd Maste.It Va WITHOUT_LOADER_ZFS 1084041c5049SEd MasteDo not build ZFS file system boot loader support. 108590be798eSDimitry Andric.It Va WITHOUT_LOCALES 1086041c5049SEd MasteDo not build localization files; see 108790be798eSDimitry Andric.Xr locale 1 . 108890be798eSDimitry Andric.It Va WITHOUT_LOCATE 1089041c5049SEd MasteDo not build 109090be798eSDimitry Andric.Xr locate 1 109190be798eSDimitry Andricand related programs. 109290be798eSDimitry Andric.It Va WITHOUT_LPR 1093041c5049SEd MasteDo not build 109490be798eSDimitry Andric.Xr lpr 1 109590be798eSDimitry Andricand related programs. 109690be798eSDimitry Andric.It Va WITHOUT_LS_COLORS 1097041c5049SEd MasteBuild 109890be798eSDimitry Andric.Xr ls 1 109990be798eSDimitry Andricwithout support for colors to distinguish file types. 1100dcdf4c1aSGleb Popov.It Va WITHOUT_MACHDEP_OPTIMIZATIONS 1101dcdf4c1aSGleb PopovPrefer machine-independent non-assembler code in libc and libm. 110290be798eSDimitry Andric.It Va WITHOUT_MAIL 1103041c5049SEd MasteDo not build any mail support (MUA or MTA). 1104344e2bb9SEd MasteWhen set, it enforces these options: 110590be798eSDimitry Andric.Pp 110690be798eSDimitry Andric.Bl -item -compact 110790be798eSDimitry Andric.It 110890be798eSDimitry Andric.Va WITHOUT_DMAGENT 110990be798eSDimitry Andric.It 111090be798eSDimitry Andric.Va WITHOUT_MAILWRAPPER 111190be798eSDimitry Andric.It 111290be798eSDimitry Andric.Va WITHOUT_SENDMAIL 111390be798eSDimitry Andric.El 111490be798eSDimitry Andric.It Va WITHOUT_MAILWRAPPER 1115041c5049SEd MasteDo not build the 111690be798eSDimitry Andric.Xr mailwrapper 8 111790be798eSDimitry AndricMTA selector. 111890be798eSDimitry Andric.It Va WITHOUT_MAKE 1119041c5049SEd MasteDo not install 112090be798eSDimitry Andric.Xr make 1 112190be798eSDimitry Andricand related support files. 112274782f0eSEnji Cooper.It Va WITHOUT_MAKE_CHECK_USE_SANDBOX 1123041c5049SEd MasteDo not execute 112474782f0eSEnji Cooper.Dq Li "make check" 112574782f0eSEnji Cooperin limited sandbox mode. 112674782f0eSEnji CooperThis option should be paired with 112774782f0eSEnji Cooper.Va WITH_INSTALL_AS_USER 112874782f0eSEnji Cooperif executed as an unprivileged user. 112974782f0eSEnji CooperSee 113074782f0eSEnji Cooper.Xr tests 7 113174782f0eSEnji Cooperfor more details. 11327d4374f6SDimitry Andric.It Va WITH_MALLOC_PRODUCTION 1133041c5049SEd MasteDisable assertions and statistics gathering in 11347d4374f6SDimitry Andric.Xr malloc 3 . 11357d4374f6SDimitry AndricIt also defaults the A and J runtime options to off. 113690be798eSDimitry Andric.It Va WITHOUT_MAN 1137041c5049SEd MasteDo not build manual pages. 1138344e2bb9SEd MasteWhen set, these options are also in effect: 113990be798eSDimitry Andric.Pp 114090be798eSDimitry Andric.Bl -inset -compact 114190be798eSDimitry Andric.It Va WITHOUT_MAN_UTILS 114290be798eSDimitry Andric(unless 114390be798eSDimitry Andric.Va WITH_MAN_UTILS 114490be798eSDimitry Andricis set explicitly) 114590be798eSDimitry Andric.El 114690be798eSDimitry Andric.It Va WITHOUT_MANCOMPRESS 1147041c5049SEd MasteDo not install compressed man pages. 114890be798eSDimitry AndricOnly the uncompressed versions will be installed. 114974da9c39SDoug Rabson.It Va WITHOUT_MANSPLITPKG 115074da9c39SDoug RabsonDo not split man pages into their own packages during make package. 115190be798eSDimitry Andric.It Va WITHOUT_MAN_UTILS 1152041c5049SEd MasteDo not build utilities for manual pages, 115390be798eSDimitry Andric.Xr apropos 1 , 115490be798eSDimitry Andric.Xr makewhatis 1 , 115590be798eSDimitry Andric.Xr man 1 , 115690be798eSDimitry Andric.Xr whatis 1 , 115790be798eSDimitry Andric.Xr manctl 8 , 115890be798eSDimitry Andricand related support files. 1159b46d461dSEd Maste.It Va WITH_META_ERROR_TARGET 1160b46d461dSEd MasteEnable the META_MODE .ERROR target. 1161b46d461dSEd Maste.Pp 1162b46d461dSEd MasteThis target will copy the meta file of a failed target 1163b46d461dSEd Masteto 1164b46d461dSEd Maste.Va ERROR_LOGDIR 1165b46d461dSEd Maste(default is 1166b46d461dSEd Maste.Ql ${SRCTOP:H}/error ) 1167b46d461dSEd Masteto help with failure analysis. 1168b46d461dSEd MasteDepends on 1169b46d461dSEd Maste.Va WITH_META_MODE . 1170b46d461dSEd MasteThis default when 1171b46d461dSEd Maste.Va WITH_DIRDEPS_BUILD 1172b46d461dSEd Masteis set. 1173b46d461dSEd Maste.Pp 1174b46d461dSEd MasteThis must be set in the environment, make command line, or 1175b46d461dSEd Maste.Pa /etc/src-env.conf , 1176b46d461dSEd Mastenot 1177b46d461dSEd Maste.Pa /etc/src.conf . 1178cc2520d2SSimon J. Gerraty.It Va WITH_META_MODE 1179344e2bb9SEd MasteCreate 1180be894451SBryan Drewery.Xr make 1 1181be894451SBryan Drewerymeta files when building, which can provide a reliable incremental build when 1182be894451SBryan Dreweryusing 1183be894451SBryan Drewery.Xr filemon 4 . 1184344e2bb9SEd MasteThe meta file is created in OBJDIR as 1185be894451SBryan Drewery.Pa target.meta . 1186344e2bb9SEd MasteThese meta files track the command that was executed, its output, and the 1187344e2bb9SEd Mastecurrent directory. 11882710e62cSBryan DreweryThe 11897f76a95cSBryan Drewery.Xr filemon 4 11902710e62cSBryan Drewerymodule is required unless 11912710e62cSBryan Drewery.Va NO_FILEMON 11922710e62cSBryan Dreweryis defined. 1193344e2bb9SEd MasteWhen the module is loaded, any files used by the commands executed are 1194344e2bb9SEd Mastetracked as dependencies for the target in its meta file. 1195344e2bb9SEd MasteThe target is considered out-of-date and rebuilt if any of these 1196344e2bb9SEd Masteconditions are true compared to the last build: 1197be894451SBryan Drewery.Bl -bullet -compact 1198be894451SBryan Drewery.It 1199be894451SBryan DreweryThe command to execute changes. 1200be894451SBryan Drewery.It 1201be894451SBryan DreweryThe current working directory changes. 1202be894451SBryan Drewery.It 1203a4a2269eSBryan DreweryThe target's meta file is missing. 1204a4a2269eSBryan Drewery.It 1205a4a2269eSBryan DreweryThe target's meta file is missing filemon data when filemon is loaded 1206a4a2269eSBryan Dreweryand a previous run did not have it loaded. 1207be894451SBryan Drewery.It 1208be894451SBryan Drewery[requires 1209be894451SBryan Drewery.Xr filemon 4 ] 1210be894451SBryan DreweryFiles read, executed or linked to are newer than the target. 1211be894451SBryan Drewery.It 1212be894451SBryan Drewery[requires 1213be894451SBryan Drewery.Xr filemon 4 ] 1214be894451SBryan DreweryFiles read, written, executed or linked are missing. 1215be894451SBryan Drewery.El 12167f76a95cSBryan DreweryThe meta files can also be useful for debugging. 12177f76a95cSBryan Drewery.Pp 1218344e2bb9SEd MasteThe build hides commands that are executed unless 12197f76a95cSBryan Drewery.Va NO_SILENT 12207f76a95cSBryan Dreweryis defined. 1221344e2bb9SEd MasteErrors cause 12222710e62cSBryan Drewery.Xr make 1 12232710e62cSBryan Dreweryto show some of its environment for further debugging. 12240a70ef02SBryan Drewery.Pp 1225be894451SBryan DreweryThe build operates as it normally would otherwise. 1226be894451SBryan DreweryThis option originally invoked a different build system but that was renamed 1227be894451SBryan Dreweryto 1228be894451SBryan Drewery.Va WITH_DIRDEPS_BUILD . 1229be894451SBryan Drewery.Pp 1230ba852870SBryan DreweryThis must be set in the environment, make command line, or 12310a70ef02SBryan Drewery.Pa /etc/src-env.conf , 12320a70ef02SBryan Drewerynot 12330a70ef02SBryan Drewery.Pa /etc/src.conf . 1234912aad0fSKyle Evans.It Va WITHOUT_MLX5TOOL 1235041c5049SEd MasteDo not build 1236912aad0fSKyle Evans.Xr mlx5tool 8 1237912aad0fSKyle Evans.Pp 1238912aad0fSKyle EvansThis is a default setting on 1239391e1f23SEd Mastearm/armv7, powerpc/powerpc and riscv/riscv64. 1240912aad0fSKyle Evans.It Va WITH_MLX5TOOL 1241041c5049SEd MasteBuild 1242912aad0fSKyle Evans.Xr mlx5tool 8 1243912aad0fSKyle Evans.Pp 1244912aad0fSKyle EvansThis is a default setting on 1245ff5025d1SPiotr Kubajamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le. 124690be798eSDimitry Andric.It Va WITHOUT_NETCAT 1247041c5049SEd MasteDo not build 124890be798eSDimitry Andric.Xr nc 1 124990be798eSDimitry Andricutility. 125090be798eSDimitry Andric.It Va WITHOUT_NETGRAPH 1251041c5049SEd MasteDo not build applications to support 125290be798eSDimitry Andric.Xr netgraph 4 . 1253344e2bb9SEd MasteWhen set, it enforces these options: 125490be798eSDimitry Andric.Pp 125590be798eSDimitry Andric.Bl -item -compact 125690be798eSDimitry Andric.It 125790be798eSDimitry Andric.Va WITHOUT_BLUETOOTH 1258bf64e879SBryan Drewery.El 1259bf64e879SBryan Drewery.Pp 1260bf64e879SBryan DreweryWhen set, these options are also in effect: 1261bf64e879SBryan Drewery.Pp 1262bf64e879SBryan Drewery.Bl -inset -compact 1263bf64e879SBryan Drewery.It Va WITHOUT_NETGRAPH_SUPPORT 1264bf64e879SBryan Drewery(unless 1265bf64e879SBryan Drewery.Va WITH_NETGRAPH_SUPPORT 1266bf64e879SBryan Dreweryis set explicitly) 126790be798eSDimitry Andric.El 126890be798eSDimitry Andric.It Va WITHOUT_NETGRAPH_SUPPORT 1269041c5049SEd MasteBuild libraries, programs, and kernel modules without netgraph support. 1270153145efSBaptiste Daroussin.It Va WITHOUT_NETLINK 1271153145efSBaptiste DaroussinDo not build 1272153145efSBaptiste Daroussin.Xr genl 1 1273153145efSBaptiste Daroussinutility. 127496aedfd5SEd Maste.It Va WITHOUT_NETLINK_SUPPORT 127596aedfd5SEd MasteMake libraries and programs use rtsock and 127696aedfd5SEd Maste.Xr sysctl 3 127796aedfd5SEd Masteinterfaces instead of 127896aedfd5SEd Maste.Xr snl 3 . 127990be798eSDimitry Andric.It Va WITHOUT_NIS 1280dcdf4c1aSGleb PopovDo not build 1281dcdf4c1aSGleb Popov.Xr NIS 8 128290be798eSDimitry Andricsupport and related programs. 128390be798eSDimitry AndricIf set, you might need to adopt your 128490be798eSDimitry Andric.Xr nsswitch.conf 5 128590be798eSDimitry Andricand remove 128690be798eSDimitry Andric.Sq nis 128790be798eSDimitry Andricentries. 128890be798eSDimitry Andric.It Va WITHOUT_NLS 1289041c5049SEd MasteDo not build NLS catalogs. 129057a87b06SEnji CooperWhen set, it enforces these options: 129157a87b06SEnji Cooper.Pp 129257a87b06SEnji Cooper.Bl -item -compact 129357a87b06SEnji Cooper.It 129457a87b06SEnji Cooper.Va WITHOUT_NLS_CATALOGS 129557a87b06SEnji Cooper.El 129690be798eSDimitry Andric.It Va WITHOUT_NLS_CATALOGS 1297041c5049SEd MasteDo not build NLS catalog support for 129890be798eSDimitry Andric.Xr csh 1 . 129990be798eSDimitry Andric.It Va WITHOUT_NS_CACHING 1300041c5049SEd MasteDisable name caching in the 130190be798eSDimitry Andric.Pa nsswitch 130290be798eSDimitry Andricsubsystem. 130390be798eSDimitry AndricThe generic caching daemon, 130490be798eSDimitry Andric.Xr nscd 8 , 130590be798eSDimitry Andricwill not be built either if this option is set. 130690be798eSDimitry Andric.It Va WITHOUT_NTP 1307041c5049SEd MasteDo not build 130890be798eSDimitry Andric.Xr ntpd 8 130990be798eSDimitry Andricand related programs. 13108edab9cdSWarner Losh.It Va WITHOUT_NVME 1311041c5049SEd MasteDo not build nvme related tools and kernel modules. 13128edab9cdSWarner Losh.Pp 13138edab9cdSWarner LoshThis is a default setting on 1314391e1f23SEd Mastearm/armv7, powerpc/powerpc and riscv/riscv64. 13158edab9cdSWarner Losh.It Va WITH_NVME 1316041c5049SEd MasteBuild nvme related tools and kernel modules. 13178edab9cdSWarner Losh.Pp 13188edab9cdSWarner LoshThis is a default setting on 13198cfd7a6aSPiotr Kubajamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le. 1320d0ca28d7SKonstantin Belousov.It Va WITHOUT_OFED 1321bd258f88SEd MasteDo not build the 132290be798eSDimitry Andric.Dq "OpenFabrics Enterprise Distribution" 1323bd258f88SEd MasteInfiniBand software stack, including kernel modules and userspace libraries. 13243f9c1b2cSEd Maste.Pp 13253f9c1b2cSEd MasteThis is a default setting on 1326391e1f23SEd Mastearm/armv7. 1327d0ca28d7SKonstantin BelousovWhen set, it enforces these options: 1328d0ca28d7SKonstantin Belousov.Pp 1329d0ca28d7SKonstantin Belousov.Bl -item -compact 1330d0ca28d7SKonstantin Belousov.It 1331d0ca28d7SKonstantin Belousov.Va WITHOUT_OFED_EXTRA 1332d0ca28d7SKonstantin Belousov.El 1333c5819624SEd Maste.It Va WITH_OFED 1334c5819624SEd MasteBuild the 1335c5819624SEd Maste.Dq "OpenFabrics Enterprise Distribution" 1336c5819624SEd MasteInfiniBand software stack, including kernel modules and userspace libraries. 1337c5819624SEd Maste.Pp 1338c5819624SEd MasteThis is a default setting on 1339d27cc068SJohn Baldwinamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64. 13404a3caf80SKonstantin Belousov.It Va WITH_OFED_EXTRA 1341041c5049SEd MasteBuild the non-essential components of the 13424a3caf80SKonstantin Belousov.Dq "OpenFabrics Enterprise Distribution" 13434a3caf80SKonstantin BelousovInfiniband software stack, mostly examples. 134490be798eSDimitry Andric.It Va WITH_OPENLDAP 13457587d982SKyle EvansEnable building LDAP support for kerberos using an openldap client from ports. 1346b0840a28SDimitry Andric.It Va WITHOUT_OPENMP 1347041c5049SEd MasteDo not build LLVM's OpenMP runtime. 1348b0840a28SDimitry Andric.Pp 1349b0840a28SDimitry AndricThis is a default setting on 1350391e1f23SEd Mastearm/armv7 and powerpc/powerpc. 1351b0840a28SDimitry Andric.It Va WITH_OPENMP 1352041c5049SEd MasteBuild LLVM's OpenMP runtime. 1353b0840a28SDimitry Andric.Pp 1354b0840a28SDimitry AndricThis is a default setting on 1355d27cc068SJohn Baldwinamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64. 135690be798eSDimitry Andric.It Va WITHOUT_OPENSSH 1357041c5049SEd MasteDo not build OpenSSH. 135890be798eSDimitry Andric.It Va WITHOUT_OPENSSL 1359041c5049SEd MasteDo not build OpenSSL. 1360344e2bb9SEd MasteWhen set, it enforces these options: 136190be798eSDimitry Andric.Pp 136290be798eSDimitry Andric.Bl -item -compact 136390be798eSDimitry Andric.It 13649f4e04c1SEd Maste.Va WITHOUT_DMAGENT 13659f4e04c1SEd Maste.It 136690be798eSDimitry Andric.Va WITHOUT_KERBEROS 136790be798eSDimitry Andric.It 1368fb27d7aeSEd Maste.Va WITHOUT_KERBEROS_SUPPORT 1369fb27d7aeSEd Maste.It 1370da39b3adSEd Maste.Va WITHOUT_LDNS 1371da39b3adSEd Maste.It 1372da39b3adSEd Maste.Va WITHOUT_LDNS_UTILS 1373da39b3adSEd Maste.It 1374379954d0SJessica Clarke.Va WITHOUT_LOADER_ZFS 1375379954d0SJessica Clarke.It 137690be798eSDimitry Andric.Va WITHOUT_OPENSSH 1377da39b3adSEd Maste.It 1378ac56b22fSEd Maste.Va WITHOUT_OPENSSL_KTLS 1379ac56b22fSEd Maste.It 1380116f7fccSEd Maste.Va WITHOUT_PKGBOOTSTRAP 1381116f7fccSEd Maste.It 1382da39b3adSEd Maste.Va WITHOUT_UNBOUND 1383243125c8SMitchell Horne.It 1384243125c8SMitchell Horne.Va WITHOUT_ZFS 138590be798eSDimitry Andric.El 138690be798eSDimitry Andric.Pp 1387344e2bb9SEd MasteWhen set, these options are also in effect: 138890be798eSDimitry Andric.Pp 138990be798eSDimitry Andric.Bl -inset -compact 139090be798eSDimitry Andric.It Va WITHOUT_GSSAPI 139190be798eSDimitry Andric(unless 139290be798eSDimitry Andric.Va WITH_GSSAPI 139390be798eSDimitry Andricis set explicitly) 139490be798eSDimitry Andric.El 1395ae257282SJohn Baldwin.It Va WITHOUT_OPENSSL_KTLS 1396041c5049SEd MasteDo not include kernel TLS support in OpenSSL. 1397ae257282SJohn Baldwin.Pp 1398ae257282SJohn BaldwinThis is a default setting on 1399391e1f23SEd Mastearm/armv7, i386/i386, powerpc/powerpc and riscv/riscv64. 1400ae257282SJohn Baldwin.It Va WITH_OPENSSL_KTLS 1401041c5049SEd MasteInclude kernel TLS support in OpenSSL. 1402ae257282SJohn Baldwin.Pp 1403ae257282SJohn BaldwinThis is a default setting on 1404cfe244cbSBrooks Davisamd64/amd64, arm64/aarch64, powerpc/powerpc64 and powerpc/powerpc64le. 140590be798eSDimitry Andric.It Va WITHOUT_PAM 1406041c5049SEd MasteDo not build PAM library and modules. 140790be798eSDimitry Andric.Bf -symbolic 140890be798eSDimitry AndricThis option is deprecated and does nothing. 140990be798eSDimitry Andric.Ef 1410bf64e879SBryan DreweryWhen set, these options are also in effect: 141190be798eSDimitry Andric.Pp 1412bf64e879SBryan Drewery.Bl -inset -compact 1413bf64e879SBryan Drewery.It Va WITHOUT_PAM_SUPPORT 1414bf64e879SBryan Drewery(unless 1415bf64e879SBryan Drewery.Va WITH_PAM_SUPPORT 1416bf64e879SBryan Dreweryis set explicitly) 141790be798eSDimitry Andric.El 141890be798eSDimitry Andric.It Va WITHOUT_PAM_SUPPORT 1419041c5049SEd MasteBuild some programs without PAM support, particularly 142090be798eSDimitry Andric.Xr ftpd 8 142190be798eSDimitry Andricand 142290be798eSDimitry Andric.Xr ppp 8 . 142390be798eSDimitry Andric.It Va WITHOUT_PF 1424041c5049SEd MasteDo not build PF firewall package. 1425344e2bb9SEd MasteWhen set, it enforces these options: 142690be798eSDimitry Andric.Pp 142790be798eSDimitry Andric.Bl -item -compact 142890be798eSDimitry Andric.It 142990be798eSDimitry Andric.Va WITHOUT_AUTHPF 143090be798eSDimitry Andric.El 1431ca4e1ea1SKyle Evans.It Va WITHOUT_PIE 1432ca4e1ea1SKyle EvansDo not build dynamically linked binaries as 1433b3a27c81SEd MastePosition-Independent Executable (PIE). 14343f9c1b2cSEd Maste.Pp 14353f9c1b2cSEd MasteThis is a default setting on 1436391e1f23SEd Mastearm/armv7, i386/i386 and powerpc/powerpc. 14373f9c1b2cSEd Maste.It Va WITH_PIE 14383f9c1b2cSEd MasteBuild dynamically linked binaries as 14393f9c1b2cSEd MastePosition-Independent Executable (PIE). 14403f9c1b2cSEd Maste.Pp 14413f9c1b2cSEd MasteThis is a default setting on 1442d27cc068SJohn Baldwinamd64/amd64, arm64/aarch64, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64. 144390be798eSDimitry Andric.It Va WITHOUT_PKGBOOTSTRAP 1444041c5049SEd MasteDo not build 144590be798eSDimitry Andric.Xr pkg 7 144690be798eSDimitry Andricbootstrap tool. 144790be798eSDimitry Andric.It Va WITHOUT_PMC 1448041c5049SEd MasteDo not build 144990be798eSDimitry Andric.Xr pmccontrol 8 145090be798eSDimitry Andricand related programs. 145190be798eSDimitry Andric.It Va WITHOUT_PPP 1452041c5049SEd MasteDo not build 145390be798eSDimitry Andric.Xr ppp 8 145490be798eSDimitry Andricand related programs. 14554c033a73SEnji Cooper.It Va WITH_PROFILE 1456041c5049SEd MasteBuild profiled libraries for use with 14574c033a73SEnji Cooper.Xr gprof 8 . 145813cf4313SEd MasteThis option is deprecated and may not be present in a future version of 145913cf4313SEd Maste.Fx . 146097f14168SKonstantin Belousov.It Va WITHOUT_PTHREADS_ASSERTIONS 146197f14168SKonstantin BelousovDisable debugging assertions in pthreads library. 146290be798eSDimitry Andric.It Va WITHOUT_QUOTAS 1463041c5049SEd MasteDo not build 146423a6b49aSEdward Tomasz Napierala.Xr quota 1 146590be798eSDimitry Andricand related programs. 14660e0e9604SEnji Cooper.It Va WITHOUT_RADIUS_SUPPORT 1467041c5049SEd MasteDo not build radius support into various applications, like 14680e0e9604SEnji Cooper.Xr pam_radius 8 14690e0e9604SEnji Cooperand 14700e0e9604SEnji Cooper.Xr ppp 8 . 147188342134SEnji Cooper.It Va WITH_RATELIMIT 1472041c5049SEd MasteBuild the system with rate limit support. 147388342134SEnji Cooper.Pp 147488342134SEnji CooperThis makes 147588342134SEnji Cooper.Dv SO_MAX_PACING_RATE 147688342134SEnji Coopereffective in 147788342134SEnji Cooper.Xr getsockopt 2 , 147888342134SEnji Cooperand 147988342134SEnji Cooper.Ar txrlimit 148088342134SEnji Coopersupport in 148188342134SEnji Cooper.Xr ifconfig 8 , 148288342134SEnji Cooperby proxy. 14830e0e9604SEnji Cooper.It Va WITHOUT_RBOOTD 1484041c5049SEd MasteDo not build or install 14850e0e9604SEnji Cooper.Xr rbootd 8 . 1486a8af3aeeSEd Maste.It Va WITHOUT_RELRO 1487a8af3aeeSEd MasteDo not apply the Relocation Read-Only (RELRO) vulnerability mitigation. 1488a8af3aeeSEd MasteSee also the 1489a8af3aeeSEd Maste.Va BIND_NOW 1490a8af3aeeSEd Masteoption. 149185d55309SEd Maste.It Va WITH_REPRODUCIBLE_BUILD 1492041c5049SEd MasteExclude build metadata (such as the build time, user, or host) 149385d55309SEd Mastefrom the kernel, boot loaders, and uname output, so that builds produce 149485d55309SEd Mastebit-for-bit identical output. 149590be798eSDimitry Andric.It Va WITHOUT_RESCUE 1496041c5049SEd MasteDo not build 149790be798eSDimitry Andric.Xr rescue 8 . 14988ccac680SEd Maste.It Va WITH_RETPOLINE 1499041c5049SEd MasteBuild the base system with the retpoline speculative execution 15008ccac680SEd Mastevulnerability mitigation for CVE-2017-5715. 150190be798eSDimitry Andric.It Va WITHOUT_ROUTED 1502041c5049SEd MasteDo not build 150390be798eSDimitry Andric.Xr routed 8 150490be798eSDimitry Andricutility. 15054c033a73SEnji Cooper.It Va WITH_RPCBIND_WARMSTART_SUPPORT 1506041c5049SEd MasteBuild 15074c033a73SEnji Cooper.Xr rpcbind 8 15084c033a73SEnji Cooperwith warmstart support. 1509c5819624SEd Maste.It Va WITHOUT_SCTP_SUPPORT 1510c5819624SEd MasteDisable support in the kernel for the 1511c5819624SEd Maste.Xr sctp 4 1512c5819624SEd MasteStream Control Transmission Protocol 1513c5819624SEd Masteloadable kernel module. 151490be798eSDimitry Andric.It Va WITHOUT_SENDMAIL 1515041c5049SEd MasteDo not build 151690be798eSDimitry Andric.Xr sendmail 8 151790be798eSDimitry Andricand related programs. 1518e8788097SKonstantin Belousov.It Va WITHOUT_SERVICESDB 1519041c5049SEd MasteDo not install 1520e8788097SKonstantin Belousov.Pa /var/db/services.db . 152190be798eSDimitry Andric.It Va WITHOUT_SETUID_LOGIN 152290be798eSDimitry AndricSet this to disable the installation of 152390be798eSDimitry Andric.Xr login 1 152490be798eSDimitry Andricas a set-user-ID root program. 152590be798eSDimitry Andric.It Va WITHOUT_SHAREDOCS 1526041c5049SEd MasteDo not build the 152790be798eSDimitry Andric.Bx 4.4 152890be798eSDimitry Andriclegacy docs. 152990be798eSDimitry Andric.It Va WITH_SORT_THREADS 1530041c5049SEd MasteEnable threads in 153190be798eSDimitry Andric.Xr sort 1 . 153290be798eSDimitry Andric.It Va WITHOUT_SOURCELESS 1533041c5049SEd MasteDo not build kernel modules that include sourceless code (either microcode or native code for host CPU). 1534344e2bb9SEd MasteWhen set, it enforces these options: 153590be798eSDimitry Andric.Pp 153690be798eSDimitry Andric.Bl -item -compact 153790be798eSDimitry Andric.It 153890be798eSDimitry Andric.Va WITHOUT_SOURCELESS_HOST 153990be798eSDimitry Andric.It 154090be798eSDimitry Andric.Va WITHOUT_SOURCELESS_UCODE 154190be798eSDimitry Andric.El 154290be798eSDimitry Andric.It Va WITHOUT_SOURCELESS_HOST 1543041c5049SEd MasteDo not build kernel modules that include sourceless native code for host CPU. 154490be798eSDimitry Andric.It Va WITHOUT_SOURCELESS_UCODE 1545041c5049SEd MasteDo not build kernel modules that include sourceless microcode. 1546330b7dccSEd Maste.It Va WITHOUT_SPLIT_KERNEL_DEBUG 1547330b7dccSEd MasteDo not build standalone kernel debug files. 1548330b7dccSEd MasteDebug data (if enabled by the kernel configuration file) 1549330b7dccSEd Mastewill be included in the kernel and modules. 1550330b7dccSEd MasteWhen set, it enforces these options: 1551330b7dccSEd Maste.Pp 1552330b7dccSEd Maste.Bl -item -compact 1553330b7dccSEd Maste.It 1554330b7dccSEd Maste.Va WITHOUT_KERNEL_SYMBOLS 1555330b7dccSEd Maste.El 155690be798eSDimitry Andric.It Va WITHOUT_SSP 15575449d014SEd MasteDo not build world with stack smashing protection. 1558cc2520d2SSimon J. Gerraty.It Va WITH_STAGING 1559cc2520d2SSimon J. GerratyEnable staging of files to a stage tree. 1560cc2520d2SSimon J. GerratyThis can be best thought of as auto-install to 1561cc2520d2SSimon J. Gerraty.Va DESTDIR 1562cc2520d2SSimon J. Gerratywith some extra meta data to ensure dependencies can be tracked. 1563cc2520d2SSimon J. GerratyDepends on 156432b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD . 1565344e2bb9SEd MasteWhen set, these options are also in effect: 1566cc2520d2SSimon J. Gerraty.Pp 1567cc2520d2SSimon J. Gerraty.Bl -inset -compact 1568cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_MAN 1569cc2520d2SSimon J. Gerraty(unless 1570cc2520d2SSimon J. Gerraty.Va WITHOUT_STAGING_MAN 1571cc2520d2SSimon J. Gerratyis set explicitly) 1572cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_PROG 1573cc2520d2SSimon J. Gerraty(unless 1574cc2520d2SSimon J. Gerraty.Va WITHOUT_STAGING_PROG 1575cc2520d2SSimon J. Gerratyis set explicitly) 1576cc2520d2SSimon J. Gerraty.El 15770a70ef02SBryan Drewery.Pp 1578ba852870SBryan DreweryThis must be set in the environment, make command line, or 15790a70ef02SBryan Drewery.Pa /etc/src-env.conf , 15800a70ef02SBryan Drewerynot 15810a70ef02SBryan Drewery.Pa /etc/src.conf . 1582cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_MAN 1583344e2bb9SEd MasteEnable staging of man pages to stage tree. 1584cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_PROG 1585cc2520d2SSimon J. GerratyEnable staging of PROGs to stage tree. 1586cc2520d2SSimon J. Gerraty.It Va WITH_STALE_STAGED 1587cc2520d2SSimon J. GerratyCheck staged files are not stale. 1588de19b521SDimitry Andric.It Va WITHOUT_STATS 1589041c5049SEd MasteNeither build nor install 1590de19b521SDimitry Andric.Lb libstats 1591de19b521SDimitry Andricand dependent binaries. 159290be798eSDimitry Andric.It Va WITHOUT_SYSCONS 1593041c5049SEd MasteDo not build 159490be798eSDimitry Andric.Xr syscons 4 159590be798eSDimitry Andricsupport files such as keyboard maps, fonts, and screen output maps. 1596cc2520d2SSimon J. Gerraty.It Va WITH_SYSROOT 1597cc2520d2SSimon J. GerratyEnable use of sysroot during build. 1598cc2520d2SSimon J. GerratyDepends on 159932b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD . 16000a70ef02SBryan Drewery.Pp 1601ba852870SBryan DreweryThis must be set in the environment, make command line, or 16020a70ef02SBryan Drewery.Pa /etc/src-env.conf , 16030a70ef02SBryan Drewerynot 16040a70ef02SBryan Drewery.Pa /etc/src.conf . 16058095b3c2SBryan Drewery.It Va WITHOUT_SYSTEM_COMPILER 1606041c5049SEd MasteDo not opportunistically skip building a cross-compiler during the 1607a9da9b86SBryan Drewerybootstrap phase of the build. 16088095b3c2SBryan DreweryNormally, if the currently installed compiler matches the planned bootstrap 16098095b3c2SBryan Drewerycompiler type and revision, then it will not be built. 1610a9da9b86SBryan DreweryThis does not prevent a compiler from being built for installation though, 1611a9da9b86SBryan Dreweryonly for building one for the build itself. 1612a9da9b86SBryan DreweryThe 1613a9da9b86SBryan Drewery.Va WITHOUT_CLANG 1614a5798ec8SEd Masteoption controls that. 1615be9309deSBryan Drewery.It Va WITHOUT_SYSTEM_LINKER 1616041c5049SEd MasteDo not opportunistically skip building a cross-linker during the 1617be9309deSBryan Drewerybootstrap phase of the build. 1618be9309deSBryan DreweryNormally, if the currently installed linker matches the planned bootstrap 1619be9309deSBryan Drewerylinker type and revision, then it will not be built. 1620be9309deSBryan DreweryThis does not prevent a linker from being built for installation though, 1621be9309deSBryan Dreweryonly for building one for the build itself. 1622be9309deSBryan DreweryThe 1623be9309deSBryan Drewery.Va WITHOUT_LLD 16242ea16071SEd Masteoption controls that. 1625be9309deSBryan Drewery.Pp 1626be9309deSBryan DreweryThis option is only relevant when 1627be9309deSBryan Drewery.Va WITH_LLD_BOOTSTRAP 1628be9309deSBryan Dreweryis set. 162993da8366SEnji Cooper.It Va WITHOUT_TALK 1630041c5049SEd MasteDo not build or install 163193da8366SEnji Cooper.Xr talk 1 163293da8366SEnji Cooperand 163393da8366SEnji Cooper.Xr talkd 8 . 16340e0e9604SEnji Cooper.It Va WITHOUT_TCP_WRAPPERS 1635041c5049SEd MasteDo not build or install 16360e0e9604SEnji Cooper.Xr tcpd 8 , 16370e0e9604SEnji Cooperand related utilities. 163890be798eSDimitry Andric.It Va WITHOUT_TCSH 1639041c5049SEd MasteDo not build and install 164090be798eSDimitry Andric.Pa /bin/csh 164190be798eSDimitry Andric(which is 164290be798eSDimitry Andric.Xr tcsh 1 ) . 164390be798eSDimitry Andric.It Va WITHOUT_TELNET 1644041c5049SEd MasteDo not build 164523a6b49aSEdward Tomasz Napierala.Xr telnet 1 164690be798eSDimitry Andricand related programs. 164718c6fc4cSJulio Merino.It Va WITHOUT_TESTS 1648041c5049SEd MasteDo not build nor install the 164990be798eSDimitry Andric.Fx 165090be798eSDimitry AndricTest Suite in 165190be798eSDimitry Andric.Pa /usr/tests/ . 165290be798eSDimitry AndricSee 165390be798eSDimitry Andric.Xr tests 7 165490be798eSDimitry Andricfor more details. 165518c6fc4cSJulio MerinoThis also disables the build of all test-related dependencies, including ATF. 1656344e2bb9SEd MasteWhen set, it enforces these options: 1657c5d09a87SGlen Barber.Pp 1658c5d09a87SGlen Barber.Bl -item -compact 1659c5d09a87SGlen Barber.It 166016f3fdf5SMark Johnston.Va WITHOUT_DTRACE_TESTS 1661bf64e879SBryan Drewery.El 1662bf64e879SBryan Drewery.Pp 1663bf64e879SBryan DreweryWhen set, these options are also in effect: 1664bf64e879SBryan Drewery.Pp 1665bf64e879SBryan Drewery.Bl -inset -compact 16667840b63aSEnji Cooper.It Va WITHOUT_GOOGLETEST 16677840b63aSEnji Cooper(unless 16687840b63aSEnji Cooper.Va WITH_GOOGLETEST 16697840b63aSEnji Cooperis set explicitly) 1670bf64e879SBryan Drewery.It Va WITHOUT_TESTS_SUPPORT 1671bf64e879SBryan Drewery(unless 1672bf64e879SBryan Drewery.Va WITH_TESTS_SUPPORT 1673bf64e879SBryan Dreweryis set explicitly) 1674c5d09a87SGlen Barber.El 1675c5d09a87SGlen Barber.It Va WITHOUT_TESTS_SUPPORT 1676041c5049SEd MasteDisable the build of all test-related dependencies, including ATF. 16777840b63aSEnji CooperWhen set, it enforces these options: 16787840b63aSEnji Cooper.Pp 16797840b63aSEnji Cooper.Bl -item -compact 16807840b63aSEnji Cooper.It 16817840b63aSEnji Cooper.Va WITHOUT_GOOGLETEST 16827840b63aSEnji Cooper.El 168390be798eSDimitry Andric.It Va WITHOUT_TEXTPROC 1684041c5049SEd MasteDo not build 168590be798eSDimitry Andricprograms used for text processing. 16860e0e9604SEnji Cooper.It Va WITHOUT_TFTP 1687041c5049SEd MasteDo not build or install 16880e0e9604SEnji Cooper.Xr tftp 1 16890e0e9604SEnji Cooperand 16900e0e9604SEnji Cooper.Xr tftpd 8 . 169190be798eSDimitry Andric.It Va WITHOUT_TOOLCHAIN 169283d57250SEd MasteDo not install 169390be798eSDimitry Andricprograms used for program development, 169490be798eSDimitry Andriccompilers, debuggers etc. 1695344e2bb9SEd MasteWhen set, it enforces these options: 169690be798eSDimitry Andric.Pp 169790be798eSDimitry Andric.Bl -item -compact 169890be798eSDimitry Andric.It 169990be798eSDimitry Andric.Va WITHOUT_CLANG 170090be798eSDimitry Andric.It 170190be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS 170290be798eSDimitry Andric.It 170319267656SConrad Meyer.Va WITHOUT_CLANG_FORMAT 170419267656SConrad Meyer.It 170590be798eSDimitry Andric.Va WITHOUT_CLANG_FULL 170690be798eSDimitry Andric.It 17076c2b7edaSEd Maste.Va WITHOUT_LLD 17086c2b7edaSEd Maste.It 17093d02549fSBryan Drewery.Va WITHOUT_LLDB 17105b9c3654SEd Maste.It 17115b9c3654SEd Maste.Va WITHOUT_LLVM_COV 171290be798eSDimitry Andric.El 17130ab89d72SEd Maste.It Va WITH_UBSAN 17140ab89d72SEd MasteBuild the base system with Undefined Behavior Sanitizer (UBSan) to detect 17150ab89d72SEd Mastevarious kinds of undefined behavior at runtime. 17160ab89d72SEd MasteRequires that Clang be used as the base system compiler 17170ab89d72SEd Masteand that the runtime support library is available 171890be798eSDimitry Andric.It Va WITHOUT_UNBOUND 1719041c5049SEd MasteDo not build 172090be798eSDimitry Andric.Xr unbound 8 172190be798eSDimitry Andricand related programs. 1722efb949a6SBryan Drewery.It Va WITHOUT_UNIFIED_OBJDIR 1723041c5049SEd MasteUse the historical object directory format for 1724efb949a6SBryan Drewery.Xr build 7 1725efb949a6SBryan Drewerytargets. 1726efb949a6SBryan DreweryFor native-builds and builds done directly in sub-directories the format of 1727efb949a6SBryan Drewery.Pa ${MAKEOBJDIRPREFIX}/${.CURDIR} 1728efb949a6SBryan Dreweryis used, 1729efb949a6SBryan Drewerywhile for cross-builds 1730efb949a6SBryan Drewery.Pa ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR} 1731efb949a6SBryan Dreweryis used. 1732efb949a6SBryan Drewery.Pp 1733b7f53cdcSEd MasteThis option is transitional and will be removed in a future version of 1734b7f53cdcSEd Maste.Fx , 1735efb949a6SBryan Dreweryat which time 173616ee5cd1SChristian Brueffer.Va WITH_UNIFIED_OBJDIR 1737efb949a6SBryan Drewerywill be enabled permanently. 1738efb949a6SBryan Drewery.Pp 1739efb949a6SBryan DreweryThis must be set in the environment, make command line, or 1740efb949a6SBryan Drewery.Pa /etc/src-env.conf , 1741efb949a6SBryan Drewerynot 1742efb949a6SBryan Drewery.Pa /etc/src.conf . 174390be798eSDimitry Andric.It Va WITHOUT_USB 1744041c5049SEd MasteDo not build USB-related programs and libraries. 1745c5d09a87SGlen Barber.It Va WITHOUT_USB_GADGET_EXAMPLES 1746041c5049SEd MasteDo not build USB gadget kernel modules. 174790be798eSDimitry Andric.It Va WITHOUT_UTMPX 1748041c5049SEd MasteDo not build user accounting tools such as 174990be798eSDimitry Andric.Xr last 1 , 175090be798eSDimitry Andric.Xr users 1 , 175190be798eSDimitry Andric.Xr who 1 , 175290be798eSDimitry Andric.Xr ac 8 , 175390be798eSDimitry Andric.Xr lastlogin 8 175490be798eSDimitry Andricand 175590be798eSDimitry Andric.Xr utx 8 . 1756bfdf8aa9SJohn Baldwin.It Va WITH_VERIEXEC 1757bfdf8aa9SJohn BaldwinEnable building 1758bfdf8aa9SJohn Baldwin.Xr veriexec 8 1759bfdf8aa9SJohn Baldwinwhich loads the contents of verified manifests into the kernel 1760bfdf8aa9SJohn Baldwinfor use by 1761bfdf8aa9SJohn Baldwin.Xr mac_veriexec 4 1762bfdf8aa9SJohn Baldwin.Pp 1763de19b521SDimitry AndricDepends on 1764de19b521SDimitry Andric.Va WITH_BEARSSL . 176590be798eSDimitry Andric.It Va WITHOUT_VI 1766041c5049SEd MasteDo not build and install vi, view, ex and related programs. 176790be798eSDimitry Andric.It Va WITHOUT_VT 1768041c5049SEd MasteDo not build 176990be798eSDimitry Andric.Xr vt 4 177090be798eSDimitry Andricsupport files (fonts and keymaps). 177190be798eSDimitry Andric.It Va WITHOUT_WARNS 177290be798eSDimitry AndricSet this to not add warning flags to the compiler invocations. 177390be798eSDimitry AndricUseful as a temporary workaround when code enters the tree 177490be798eSDimitry Andricwhich triggers warnings in environments that differ from the 1775559f9bfcSJens Schweikhardtoriginal developer. 1776f309bd63SAlex Richardson.It Va WITHOUT_WERROR 1777f309bd63SAlex RichardsonSet this to not treat compiler warnings as errors. 1778f309bd63SAlex RichardsonUseful as a temporary workaround when working on fixing compiler warnings. 1779f309bd63SAlex RichardsonWhen set, warnings are still printed in the build log but do not fail the build. 178090be798eSDimitry Andric.It Va WITHOUT_WIRELESS 1781041c5049SEd MasteDo not build programs used for 802.11 wireless networks; especially 178290be798eSDimitry Andric.Xr wpa_supplicant 8 178390be798eSDimitry Andricand 178490be798eSDimitry Andric.Xr hostapd 8 . 1785bf64e879SBryan DreweryWhen set, these options are also in effect: 178690be798eSDimitry Andric.Pp 1787bf64e879SBryan Drewery.Bl -inset -compact 1788bf64e879SBryan Drewery.It Va WITHOUT_WIRELESS_SUPPORT 1789bf64e879SBryan Drewery(unless 1790bf64e879SBryan Drewery.Va WITH_WIRELESS_SUPPORT 1791bf64e879SBryan Dreweryis set explicitly) 179290be798eSDimitry Andric.El 179390be798eSDimitry Andric.It Va WITHOUT_WIRELESS_SUPPORT 1794041c5049SEd MasteBuild libraries, programs, and kernel modules without 179590be798eSDimitry Andric802.11 wireless support. 179690be798eSDimitry Andric.It Va WITHOUT_WPA_SUPPLICANT_EAPOL 179790be798eSDimitry AndricBuild 179890be798eSDimitry Andric.Xr wpa_supplicant 8 179990be798eSDimitry Andricwithout support for the IEEE 802.1X protocol and without 180090be798eSDimitry Andricsupport for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS 180190be798eSDimitry Andricprotocols (usable only via 802.1X). 180290be798eSDimitry Andric.It Va WITHOUT_ZFS 18034be63587SMark JohnstonDo not build the ZFS file system kernel module, libraries such as 18044be63587SMark Johnston.Xr libbe 3 , 18054be63587SMark Johnstonand user commands such as 18064be63587SMark Johnston.Xr zpool 8 18074be63587SMark Johnstonor 18084be63587SMark Johnston.Xr zfs 8 . 18094be63587SMark JohnstonAlso disable ZFS support in utilities and libraries which implement 18104be63587SMark JohnstonZFS-specific functionality. 181190be798eSDimitry Andric.It Va WITHOUT_ZONEINFO 1812041c5049SEd MasteDo not build the timezone database. 18135c021049SEnji CooperWhen set, it enforces these options: 18145c021049SEnji Cooper.Pp 18155c021049SEnji Cooper.Bl -item -compact 18165c021049SEnji Cooper.It 18175c021049SEnji Cooper.Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT 18185c021049SEnji Cooper.El 18195c021049SEnji Cooper.It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT 1820041c5049SEd MasteBuild leapsecond information in to the timezone database. 182190be798eSDimitry Andric.El 18223fe97711SBrooks Davis.Pp 18233fe97711SBrooks DavisThe following options accept a single value from a list of valid values. 18243fe97711SBrooks Davis.Bl -tag -width indent 18253fe97711SBrooks Davis.It Va INIT_ALL 18263fe97711SBrooks DavisControl default initialization of stack variables in C and C++ code. 18273fe97711SBrooks DavisOptions other than 18283fe97711SBrooks Davis.Li none 18293fe97711SBrooks Davisrequire the Clang compiler or GCC 12.0 or later. 18303fe97711SBrooks DavisThe default value is 18313fe97711SBrooks Davis.Li none . 18323fe97711SBrooks DavisValid values are: 18333fe97711SBrooks Davis.Bl -tag -width indent 18343fe97711SBrooks Davis.It Li none 18353fe97711SBrooks DavisDo not initialize stack variables (standard C/C++ behavior). 18363fe97711SBrooks Davis.It Li pattern 18373fe97711SBrooks DavisBuild the base system or kernel with stack variables initialized to 18383fe97711SBrooks Davis.Pq compiler defined 18393fe97711SBrooks Davisdebugging patterns on function entry. 18403fe97711SBrooks Davis.It Li zero 18413fe97711SBrooks DavisBuild the base system or kernel with stack variables initialized 18423fe97711SBrooks Davisto zero on function entry. 18433fe97711SBrooks DavisThis value is converted to 18443fe97711SBrooks Davis.Li none 18453fe97711SBrooks Davisfor amd64 kernel builds due to incompatability with ifunc memset. 18463fe97711SBrooks Davis.El 18473fe97711SBrooks Davis.It Va LIBC_MALLOC 18483fe97711SBrooks DavisSpecify the 18493fe97711SBrooks Davis.Xr malloc 3 1850a89e98ecSBrooks Davisimplementation used by libc. 18513fe97711SBrooks DavisThe default value is 18523fe97711SBrooks Davis.Li jemalloc . 18533fe97711SBrooks DavisValid values are: 18543fe97711SBrooks Davis.Bl -tag -width indent 18553fe97711SBrooks Davis.It Li jemalloc 18563fe97711SBrooks Davis.El 18573fe97711SBrooks Davis.Pp 18583fe97711SBrooks DavisOther implementations are expected in the future in both 18593fe97711SBrooks Davis.Fx 18603fe97711SBrooks Davisand downstream consumers. 18613fe97711SBrooks Davis.El 186290be798eSDimitry Andric.Sh FILES 186390be798eSDimitry Andric.Bl -tag -compact -width Pa 186490be798eSDimitry Andric.It Pa /etc/src.conf 18650a70ef02SBryan Drewery.It Pa /etc/src-env.conf 186690be798eSDimitry Andric.It Pa /usr/share/mk/bsd.own.mk 186790be798eSDimitry Andric.El 186890be798eSDimitry Andric.Sh SEE ALSO 186990be798eSDimitry Andric.Xr make 1 , 187090be798eSDimitry Andric.Xr make.conf 5 , 187190be798eSDimitry Andric.Xr build 7 , 187290be798eSDimitry Andric.Xr ports 7 187390be798eSDimitry Andric.Sh HISTORY 187490be798eSDimitry AndricThe 187590be798eSDimitry Andric.Nm 187690be798eSDimitry Andricfile appeared in 187790be798eSDimitry Andric.Fx 7.0 . 187890be798eSDimitry Andric.Sh AUTHORS 187988342134SEnji CooperThis manual page was autogenerated by 1880a121d3a8SEnji Cooper.An tools/build/options/makeman . 1881