1b1a0e564SEitan Adler.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. 2*ce37de8eSEd Maste.Dd October 29, 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. 47352fe961cSBaptiste Daroussin.It Va WITH_DIALOG 47452fe961cSBaptiste 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. 6443f9c1b2cSEd Maste.It Va WITHOUT_FDT 6453f9c1b2cSEd MasteDo not build Flattened Device Tree support as part of the base system. 6463f9c1b2cSEd MasteThis includes the device tree compiler (dtc) and libfdt support library. 6473f9c1b2cSEd Maste.Pp 6483f9c1b2cSEd MasteThis is a default setting on 6493f9c1b2cSEd Masteamd64/amd64 and i386/i386. 650a8af3aeeSEd Maste.It Va WITH_FDT 651a8af3aeeSEd MasteBuild Flattened Device Tree support as part of the base system. 65290be798eSDimitry AndricThis includes the device tree compiler (dtc) and libfdt support library. 6533f9c1b2cSEd Maste.Pp 6543f9c1b2cSEd MasteThis is a default setting on 655391e1f23SEd Mastearm/armv7, arm64/aarch64, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64. 6560e0e9604SEnji Cooper.It Va WITHOUT_FILE 657041c5049SEd MasteDo not build 6580e0e9604SEnji Cooper.Xr file 1 6590e0e9604SEnji Cooperand related programs. 6600e0e9604SEnji Cooper.It Va WITHOUT_FINGER 661041c5049SEd MasteDo not build or install 6620e0e9604SEnji Cooper.Xr finger 1 6630e0e9604SEnji Cooperand 6640e0e9604SEnji Cooper.Xr fingerd 8 . 66590be798eSDimitry Andric.It Va WITHOUT_FLOPPY 666041c5049SEd MasteDo not build or install programs 66790be798eSDimitry Andricfor operating floppy disk driver. 668a0f6423bSEd Maste.It Va WITHOUT_FORMAT_EXTENSIONS 669041c5049SEd MasteDo not enable 670a0f6423bSEd Maste.Fl fformat-extensions 671a0f6423bSEd Mastewhen compiling the kernel. 672a0f6423bSEd MasteAlso disables all format checking. 67390be798eSDimitry Andric.It Va WITHOUT_FORTH 674041c5049SEd MasteBuild bootloaders without Forth support. 67590be798eSDimitry Andric.It Va WITHOUT_FP_LIBC 676041c5049SEd MasteBuild 67790be798eSDimitry Andric.Nm libc 67890be798eSDimitry Andricwithout floating-point support. 67990be798eSDimitry Andric.It Va WITHOUT_FREEBSD_UPDATE 680041c5049SEd MasteDo not build 68190be798eSDimitry Andric.Xr freebsd-update 8 . 6820e0e9604SEnji Cooper.It Va WITHOUT_FTP 683041c5049SEd MasteDo not build or install 6840e0e9604SEnji Cooper.Xr ftp 1 6850e0e9604SEnji Cooperand 6860e0e9604SEnji Cooper.Xr ftpd 8 . 68790be798eSDimitry Andric.It Va WITHOUT_GAMES 688041c5049SEd MasteDo not build games. 689160ea953SStefan Eßer.It Va WITHOUT_GH_BC 690041c5049SEd MasteInstall the traditional FreeBSD 69168c8c1a7SStefan Eßer.Xr bc 1 692160ea953SStefan Eßerand 69368c8c1a7SStefan Eßer.Xr dc 1 694041c5049SEd Masteprograms instead of the enhanced versions. 69536e8c7bbSEd Maste.It Va WITHOUT_GNU_DIFF 696041c5049SEd MasteDo not build GNU 69736e8c7bbSEd Maste.Xr diff3 1 . 6987840b63aSEnji Cooper.It Va WITHOUT_GOOGLETEST 699041c5049SEd MasteNeither build nor install 7007840b63aSEnji Cooper.Lb libgmock , 7017840b63aSEnji Cooper.Lb libgtest , 7027840b63aSEnji Cooperand dependent tests. 70390be798eSDimitry Andric.It Va WITHOUT_GPIO 704041c5049SEd MasteDo not build 70590be798eSDimitry Andric.Xr gpioctl 8 70690be798eSDimitry Andricas part of the base system. 70790be798eSDimitry Andric.It Va WITHOUT_GSSAPI 708041c5049SEd MasteDo not build libgssapi. 70961940879SEnji Cooper.It Va WITHOUT_HAST 710041c5049SEd MasteDo not build 71161940879SEnji Cooper.Xr hastd 8 71261940879SEnji Cooperand related utilities. 71390be798eSDimitry Andric.It Va WITH_HESIOD 714041c5049SEd MasteBuild Hesiod support. 71590be798eSDimitry Andric.It Va WITHOUT_HTML 716041c5049SEd MasteDo not build HTML docs. 7172c4b4abcSXin LI.It Va WITHOUT_HYPERV 718041c5049SEd MasteDo not build or install HyperV utilities. 7190543ade3SBrooks Davis.Pp 7200543ade3SBrooks DavisThis is a default setting on 721391e1f23SEd Mastearm/armv7, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64. 7220543ade3SBrooks Davis.It Va WITH_HYPERV 723041c5049SEd MasteBuild or install HyperV utilities. 7240543ade3SBrooks Davis.Pp 7250543ade3SBrooks DavisThis is a default setting on 72607853c6cSEd Masteamd64/amd64, arm64/aarch64 and i386/i386. 72790be798eSDimitry Andric.It Va WITHOUT_ICONV 728041c5049SEd MasteDo not build iconv as part of libc. 729c5d09a87SGlen Barber.It Va WITHOUT_INCLUDES 730041c5049SEd MasteDo not install header files. 731c5d09a87SGlen BarberThis option used to be spelled 732c5d09a87SGlen Barber.Va NO_INCS . 733c5d09a87SGlen Barber.Bf -symbolic 734c5d09a87SGlen BarberThe option does not work for build targets. 735c5d09a87SGlen Barber.Ef 73690be798eSDimitry Andric.It Va WITHOUT_INET 737041c5049SEd MasteDo not build programs and libraries related to IPv4 networking. 738344e2bb9SEd MasteWhen set, it enforces these options: 73990be798eSDimitry Andric.Pp 74090be798eSDimitry Andric.Bl -item -compact 74190be798eSDimitry Andric.It 74290be798eSDimitry Andric.Va WITHOUT_INET_SUPPORT 74390be798eSDimitry Andric.El 74490be798eSDimitry Andric.It Va WITHOUT_INET6 745041c5049SEd MasteDo not build 74690be798eSDimitry Andricprograms and libraries related to IPv6 networking. 747344e2bb9SEd MasteWhen set, it enforces these options: 74890be798eSDimitry Andric.Pp 74990be798eSDimitry Andric.Bl -item -compact 75090be798eSDimitry Andric.It 75190be798eSDimitry Andric.Va WITHOUT_INET6_SUPPORT 75290be798eSDimitry Andric.El 75390be798eSDimitry Andric.It Va WITHOUT_INET6_SUPPORT 754041c5049SEd MasteBuild libraries, programs, and kernel modules without IPv6 support. 7550e0e9604SEnji Cooper.It Va WITHOUT_INETD 756041c5049SEd MasteDo not build 7570e0e9604SEnji Cooper.Xr inetd 8 . 75890be798eSDimitry Andric.It Va WITHOUT_INET_SUPPORT 759041c5049SEd MasteBuild libraries, programs, and kernel modules without IPv4 support. 76090be798eSDimitry Andric.It Va WITHOUT_INSTALLLIB 761344e2bb9SEd MasteSet this to not install optional libraries. 762344e2bb9SEd MasteFor example, when creating a 76390be798eSDimitry Andric.Xr nanobsd 8 76490be798eSDimitry Andricimage. 765f79bedf5SBryan Drewery.Bf -symbolic 766f79bedf5SBryan DreweryThe option does not work for build targets. 767f79bedf5SBryan Drewery.Ef 76890be798eSDimitry Andric.It Va WITH_INSTALL_AS_USER 769041c5049SEd MasteMake install targets succeed for non-root users by installing 77090be798eSDimitry Andricfiles with owner and group attributes set to that of the user running 77190be798eSDimitry Andricthe 77290be798eSDimitry Andric.Xr make 1 77390be798eSDimitry Andriccommand. 774344e2bb9SEd MasteThe user still must set the 77590be798eSDimitry Andric.Va DESTDIR 77690be798eSDimitry Andricvariable to point to a directory where the user has write permissions. 77790be798eSDimitry Andric.It Va WITHOUT_IPFILTER 778041c5049SEd MasteDo not build IP Filter package. 77990be798eSDimitry Andric.It Va WITHOUT_IPFW 780041c5049SEd MasteDo not build IPFW tools. 78188342134SEnji Cooper.It Va WITHOUT_IPSEC_SUPPORT 782041c5049SEd MasteDo not build the kernel with 78388342134SEnji Cooper.Xr ipsec 4 78488342134SEnji Coopersupport. 78588342134SEnji CooperThis option is needed for 78688342134SEnji Cooper.Xr ipsec 4 78788342134SEnji Cooperand 78888342134SEnji Cooper.Xr tcpmd5 4 . 78993da8366SEnji Cooper.It Va WITHOUT_ISCSI 790041c5049SEd MasteDo not build 79126d6bbfaSSevan Janiyan.Xr iscsid 8 79293da8366SEnji Cooperand related utilities. 79390be798eSDimitry Andric.It Va WITHOUT_JAIL 794041c5049SEd MasteDo not build tools for the support of jails; e.g., 79590be798eSDimitry Andric.Xr jail 8 . 79690be798eSDimitry Andric.It Va WITHOUT_KDUMP 797041c5049SEd MasteDo not build 79890be798eSDimitry Andric.Xr kdump 1 79990be798eSDimitry Andricand 80090be798eSDimitry Andric.Xr truss 1 . 80190be798eSDimitry Andric.It Va WITHOUT_KERBEROS 802344e2bb9SEd MasteSet this to not build Kerberos 5 (KTH Heimdal). 803344e2bb9SEd MasteWhen set, these options are also in effect: 80490be798eSDimitry Andric.Pp 80590be798eSDimitry Andric.Bl -inset -compact 80690be798eSDimitry Andric.It Va WITHOUT_GSSAPI 80790be798eSDimitry Andric(unless 80890be798eSDimitry Andric.Va WITH_GSSAPI 80990be798eSDimitry Andricis set explicitly) 810bf64e879SBryan Drewery.It Va WITHOUT_KERBEROS_SUPPORT 811bf64e879SBryan Drewery(unless 812bf64e879SBryan Drewery.Va WITH_KERBEROS_SUPPORT 813bf64e879SBryan Dreweryis set explicitly) 81490be798eSDimitry Andric.El 81590be798eSDimitry Andric.It Va WITHOUT_KERBEROS_SUPPORT 816041c5049SEd MasteBuild some programs without Kerberos support, like 81790be798eSDimitry Andric.Xr ssh 1 , 81890be798eSDimitry Andric.Xr telnet 1 , 81990be798eSDimitry Andricand 820b4cfdbfeSBrooks Davis.Xr sshd 8 . 821*ce37de8eSEd Maste.It Va WITH_KERNEL_BIN 822*ce37de8eSEd MasteGenerate and install kernel.bin from kernel as part of the normal build and 823*ce37de8eSEd Masteinstall processes for the kernel. Available only on arm and arm64. 824*ce37de8eSEd Maste 825*ce37de8eSEd MasteUsually this will be added to the kernel config file with: 826*ce37de8eSEd Maste 827*ce37de8eSEd Mastemakeoptions WITH_KERNEL_BIN=1 828*ce37de8eSEd Maste 829*ce37de8eSEd Mastethough it can also be used on the command line. 8306f7527f0SEd Maste.It Va WITH_KERNEL_RETPOLINE 831041c5049SEd MasteEnable the "retpoline" mitigation for CVE-2017-5715 in the kernel 8326f7527f0SEd Mastebuild. 833a0f6423bSEd Maste.It Va WITHOUT_KERNEL_SYMBOLS 834330b7dccSEd MasteDo not install standalone kernel debug symbol files. 835330b7dccSEd MasteThis option has no effect at build time. 83690be798eSDimitry Andric.It Va WITHOUT_KVM 837041c5049SEd MasteDo not build the 83890be798eSDimitry Andric.Nm libkvm 83990be798eSDimitry Andriclibrary as a part of the base system. 84090be798eSDimitry Andric.Bf -symbolic 84190be798eSDimitry AndricThe option has no effect yet. 84290be798eSDimitry Andric.Ef 843bf64e879SBryan DreweryWhen set, these options are also in effect: 84490be798eSDimitry Andric.Pp 845bf64e879SBryan Drewery.Bl -inset -compact 846bf64e879SBryan Drewery.It Va WITHOUT_KVM_SUPPORT 847bf64e879SBryan Drewery(unless 848bf64e879SBryan Drewery.Va WITH_KVM_SUPPORT 849bf64e879SBryan Dreweryis set explicitly) 85090be798eSDimitry Andric.El 85190be798eSDimitry Andric.It Va WITHOUT_KVM_SUPPORT 852041c5049SEd MasteBuild some programs without optional 85390be798eSDimitry Andric.Nm libkvm 85490be798eSDimitry Andricsupport. 85590be798eSDimitry Andric.It Va WITHOUT_LDNS 85690be798eSDimitry AndricSetting this variable will prevent the LDNS library from being built. 857344e2bb9SEd MasteWhen set, it enforces these options: 85890be798eSDimitry Andric.Pp 85990be798eSDimitry Andric.Bl -item -compact 86090be798eSDimitry Andric.It 86190be798eSDimitry Andric.Va WITHOUT_LDNS_UTILS 86290be798eSDimitry Andric.It 86390be798eSDimitry Andric.Va WITHOUT_UNBOUND 86490be798eSDimitry Andric.El 86590be798eSDimitry Andric.It Va WITHOUT_LDNS_UTILS 86690be798eSDimitry AndricSetting this variable will prevent building the LDNS utilities 86790be798eSDimitry Andric.Xr drill 1 86890be798eSDimitry Andricand 86990be798eSDimitry Andric.Xr host 1 . 87090be798eSDimitry Andric.It Va WITHOUT_LEGACY_CONSOLE 871041c5049SEd MasteDo not build programs that support a legacy PC console; e.g., 87223a6b49aSEdward Tomasz Napierala.Xr kbdcontrol 1 87390be798eSDimitry Andricand 87423a6b49aSEdward Tomasz Napierala.Xr vidcontrol 1 . 87590be798eSDimitry Andric.It Va WITHOUT_LIB32 876041c5049SEd MasteOn 64-bit platforms, do not build 32-bit library set and a 87790be798eSDimitry Andric.Nm ld-elf32.so.1 87890be798eSDimitry Andricruntime linker. 879f3cdc622SEd Maste.Pp 880f3cdc622SEd MasteThis is a default setting on 881391e1f23SEd Mastearm/armv7, i386/i386, powerpc/powerpc, powerpc/powerpc64le and riscv/riscv64. 882c5819624SEd Maste.It Va WITH_LIB32 883c5819624SEd MasteOn 64-bit platforms, build the 32-bit library set and a 884c5819624SEd Maste.Nm ld-elf32.so.1 885c5819624SEd Masteruntime linker. 886c5819624SEd Maste.Pp 887c5819624SEd MasteThis is a default setting on 88881a7ce44SJose Luis Duranamd64/amd64, arm64/aarch64 and powerpc/powerpc64. 88936e8c7bbSEd Maste.It Va WITHOUT_LLD 890041c5049SEd MasteDo not build LLVM's lld linker. 8911500eb21SEd Maste.It Va WITHOUT_LLDB 892041c5049SEd MasteDo not build the LLDB debugger. 8931500eb21SEd Maste.Pp 894344e2bb9SEd MasteThis is a default setting on 895391e1f23SEd Mastearm/armv7 and riscv/riscv64. 89690be798eSDimitry Andric.It Va WITH_LLDB 897041c5049SEd MasteBuild the LLDB debugger. 8981500eb21SEd Maste.Pp 899344e2bb9SEd MasteThis is a default setting on 9002ec9a427SPiotr Kubajamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le. 9016c2b7edaSEd Maste.It Va WITHOUT_LLD_BOOTSTRAP 902041c5049SEd MasteDo not build the LLD linker during the bootstrap phase of 9036c2b7edaSEd Mastethe build. 9047680431aSEd MasteTo be able to build the system an alternate linker must be provided via XLD. 905661cf9b6SYoshihiro Takahashi.It Va WITHOUT_LLD_IS_LD 9067680431aSEd MasteDo not install a 9077680431aSEd Maste.Pa /usr/bin/ld symlink 9087680431aSEd Masteto 9097680431aSEd Maste.Pa ld.lld . 9107680431aSEd MasteThe system will not have a usable tool chain unless a linker is provided 9117680431aSEd Mastesome other way. 912a870eaa4SKyle Evans.It Va WITHOUT_LLVM_ASSERTIONS 913041c5049SEd MasteDisable debugging assertions in LLVM. 914ac56b22fSEd Maste.It Va WITH_LLVM_BINUTILS 915a9d0665bSEd MasteInstall LLVM's binutils (without an llvm- prefix), 916a9d0665bSEd Masteinstead of ELF Tool Chain's tools. 917a9d0665bSEd MasteThis includes 918a9d0665bSEd Maste.Xr addr2line 1 , 919a9d0665bSEd Maste.Xr ar 1 , 920a9d0665bSEd Maste.Xr nm 1 , 921a9d0665bSEd Maste.Xr objcopy 1 , 922a9d0665bSEd Maste.Xr ranlib 1 , 923a9d0665bSEd Maste.Xr readelf 1 , 924a9d0665bSEd Maste.Xr size 1 , 925a9d0665bSEd Masteand 926a9d0665bSEd Maste.Xr strip 1 . 927a9d0665bSEd MasteRegardless of this setting, LLVM tools are used for 928a9d0665bSEd Maste.Xr c++filt 1 929a9d0665bSEd Masteand 930a9d0665bSEd Maste.Xr objdump 1 . 931a9d0665bSEd Maste.Xr strings 1 932a9d0665bSEd Masteis always provided by ELF Tool Chain. 9335b9c3654SEd Maste.It Va WITHOUT_LLVM_COV 934041c5049SEd MasteDo not build the 9355b9c3654SEd Maste.Xr llvm-cov 1 9365b9c3654SEd Mastetool. 9379fa94e1cSDimitry Andric.It Va WITHOUT_LLVM_CXXFILT 9389fa94e1cSDimitry AndricInstall ELF Tool Chain's cxxfilt as c++filt, instead of LLVM's llvm-cxxfilt. 939cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_AARCH64 940041c5049SEd MasteDo not build LLVM target support for AArch64. 941bf64e879SBryan DreweryThe 942bf64e879SBryan Drewery.Va LLVM_TARGET_ALL 943bf64e879SBryan Dreweryoption should be used rather than this in most cases. 944bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ALL 945041c5049SEd MasteOnly build the required LLVM target support. 946bf64e879SBryan DreweryThis option is preferred to specific target support options. 947bf64e879SBryan DreweryWhen set, these options are also in effect: 948bf64e879SBryan Drewery.Pp 949bf64e879SBryan Drewery.Bl -inset -compact 950bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_AARCH64 951bf64e879SBryan Drewery(unless 952bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_AARCH64 953bf64e879SBryan Dreweryis set explicitly) 954bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_ARM 955bf64e879SBryan Drewery(unless 956bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_ARM 957bf64e879SBryan Dreweryis set explicitly) 958bf64e879SBryan Drewery.It Va WITHOUT_LLVM_TARGET_POWERPC 959bf64e879SBryan Drewery(unless 960bf64e879SBryan Drewery.Va WITH_LLVM_TARGET_POWERPC 961bf64e879SBryan Dreweryis set explicitly) 962f3cdc622SEd Maste.It Va WITHOUT_LLVM_TARGET_RISCV 963f3cdc622SEd Maste(unless 964f3cdc622SEd Maste.Va WITH_LLVM_TARGET_RISCV 965f3cdc622SEd Masteis set explicitly) 966bf64e879SBryan Drewery.El 967cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_ARM 968041c5049SEd MasteDo not build LLVM target support for ARM. 969bf64e879SBryan DreweryThe 970bf64e879SBryan Drewery.Va LLVM_TARGET_ALL 971bf64e879SBryan Dreweryoption should be used rather than this in most cases. 97289edb881SDimitry Andric.It Va WITH_LLVM_TARGET_BPF 973041c5049SEd MasteBuild LLVM target support for BPF. 97489edb881SDimitry AndricThe 97589edb881SDimitry Andric.Va LLVM_TARGET_ALL 97689edb881SDimitry Andricoption should be used rather than this in most cases. 9776bdbfa49SPiotr Kubaj.It Va WITH_LLVM_TARGET_MIPS 9786bdbfa49SPiotr KubajBuild LLVM target support for MIPS. 979bf64e879SBryan DreweryThe 980bf64e879SBryan Drewery.Va LLVM_TARGET_ALL 981bf64e879SBryan Dreweryoption should be used rather than this in most cases. 982cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_POWERPC 983041c5049SEd MasteDo not build LLVM target support for PowerPC. 984bf64e879SBryan DreweryThe 985bf64e879SBryan Drewery.Va LLVM_TARGET_ALL 986bf64e879SBryan Dreweryoption should be used rather than this in most cases. 987f3cdc622SEd Maste.It Va WITHOUT_LLVM_TARGET_RISCV 988041c5049SEd MasteDo not build LLVM target support for RISC-V. 989f3cdc622SEd MasteThe 990f3cdc622SEd Maste.Va LLVM_TARGET_ALL 991f3cdc622SEd Masteoption should be used rather than this in most cases. 992cbafd263SDimitry Andric.It Va WITHOUT_LLVM_TARGET_X86 993041c5049SEd MasteDo not build LLVM target support for X86. 994bf64e879SBryan DreweryThe 995bf64e879SBryan Drewery.Va LLVM_TARGET_ALL 996bf64e879SBryan Dreweryoption should be used rather than this in most cases. 997bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT 998bfdf8aa9SJohn BaldwinEnable building 999bfdf8aa9SJohn Baldwin.Xr loader 8 1000bfdf8aa9SJohn Baldwinwith support for verification based on certificates obtained from UEFI. 1001782df3edSEd Maste.It Va WITHOUT_LOADER_GELI 1002782df3edSEd MasteDisable inclusion of GELI crypto support in the boot chain binaries. 100330323356SWarner Losh.Pp 100430323356SWarner LoshThis is a default setting on 10058cfd7a6aSPiotr Kubajpowerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le. 10068edab9cdSWarner Losh.It Va WITH_LOADER_GELI 1007041c5049SEd MasteBuild GELI bootloader support. 10088edab9cdSWarner Losh.Pp 10098edab9cdSWarner LoshThis is a default setting on 1010391e1f23SEd Masteamd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64. 10112ec9a427SPiotr Kubaj.It Va WITHOUT_LOADER_KBOOT 10122ec9a427SPiotr KubajDo not build kboot, a linuxboot environment loader 10132ec9a427SPiotr Kubaj.Pp 10142ec9a427SPiotr KubajThis is a default setting on 1015391e1f23SEd Mastearm/armv7, i386/i386, powerpc/powerpc, powerpc/powerpc64le and riscv/riscv64. 10162ec9a427SPiotr Kubaj.It Va WITH_LOADER_KBOOT 10172ec9a427SPiotr KubajBuild kboot, a linuxboot environment loader 10182ec9a427SPiotr Kubaj.Pp 10192ec9a427SPiotr KubajThis is a default setting on 1020cfe244cbSBrooks Davisamd64/amd64, arm64/aarch64 and powerpc/powerpc64. 10218edab9cdSWarner Losh.It Va WITHOUT_LOADER_LUA 1022041c5049SEd MasteDo not build LUA bindings for the boot loader. 10238edab9cdSWarner Losh.Pp 10248edab9cdSWarner LoshThis is a default setting on 10258cfd7a6aSPiotr Kubajpowerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le. 10266f7527f0SEd Maste.It Va WITH_LOADER_LUA 1027041c5049SEd MasteBuild LUA bindings for the boot loader. 102830323356SWarner Losh.Pp 102930323356SWarner LoshThis is a default setting on 1030391e1f23SEd Masteamd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64. 1031b8f3641fSKyle Evans.It Va WITHOUT_LOADER_OFW 1032b8f3641fSKyle EvansDisable building of openfirmware bootloader components. 1033b8f3641fSKyle Evans.Pp 1034b8f3641fSKyle EvansThis is a default setting on 1035391e1f23SEd Masteamd64/amd64, arm/armv7, arm64/aarch64, i386/i386 and riscv/riscv64. 1036b8f3641fSKyle Evans.It Va WITH_LOADER_OFW 1037041c5049SEd MasteBuild openfirmware bootloader components. 1038b8f3641fSKyle Evans.Pp 1039b8f3641fSKyle EvansThis is a default setting on 10408cfd7a6aSPiotr Kubajpowerpc/powerpc, powerpc/powerpc64 and powerpc/powerpc64le. 1041b8f3641fSKyle Evans.It Va WITHOUT_LOADER_UBOOT 1042b8f3641fSKyle EvansDisable building of ubldr. 1043b8f3641fSKyle Evans.Pp 1044b8f3641fSKyle EvansThis is a default setting on 1045d27cc068SJohn Baldwinamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64le and riscv/riscv64. 1046b8f3641fSKyle Evans.It Va WITH_LOADER_UBOOT 1047041c5049SEd MasteBuild ubldr. 1048b8f3641fSKyle Evans.Pp 1049b8f3641fSKyle EvansThis is a default setting on 1050391e1f23SEd Mastearm/armv7, powerpc/powerpc and powerpc/powerpc64. 10511f7d1483SEd Maste.It Va WITH_LOADER_VERBOSE 1052041c5049SEd MasteBuild with extra verbose debugging in the loader. 10531f7d1483SEd MasteMay explode already nearly too large loader over the limit. 10541f7d1483SEd MasteUse with care. 1055bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_VERIEXEC 1056bfdf8aa9SJohn BaldwinEnable building 1057bfdf8aa9SJohn Baldwin.Xr loader 8 1058de19b521SDimitry Andricwith support for verification similar to Verified Exec. 1059bfdf8aa9SJohn Baldwin.Pp 1060de19b521SDimitry AndricDepends on 1061de19b521SDimitry Andric.Va WITH_BEARSSL . 1062bfdf8aa9SJohn BaldwinWhen set, these options are also in effect: 1063bfdf8aa9SJohn Baldwin.Pp 1064bfdf8aa9SJohn Baldwin.Bl -inset -compact 1065bfdf8aa9SJohn Baldwin.It Va WITH_LOADER_EFI_SECUREBOOT 1066bfdf8aa9SJohn Baldwin(unless 1067bfdf8aa9SJohn Baldwin.Va WITHOUT_LOADER_EFI_SECUREBOOT 1068bfdf8aa9SJohn Baldwinis set explicitly) 1069f87a2082SEd Maste.It Va WITH_LOADER_VERIEXEC_VECTX 1070f87a2082SEd Maste(unless 1071f87a2082SEd Maste.Va WITHOUT_LOADER_VERIEXEC_VECTX 1072f87a2082SEd Masteis set explicitly) 1073bfdf8aa9SJohn Baldwin.El 1074de19b521SDimitry Andric.It Va WITH_LOADER_VERIEXEC_PASS_MANIFEST 1075de19b521SDimitry AndricEnable building 1076de19b521SDimitry Andric.Xr loader 8 1077de19b521SDimitry Andricwith support to pass a verified manifest to the kernel. 1078de19b521SDimitry AndricThe kernel has to be built with a module to parse the manifest. 1079de19b521SDimitry Andric.Pp 1080de19b521SDimitry AndricDepends on 1081de19b521SDimitry Andric.Va WITH_LOADER_VERIEXEC . 10823ac71149SBrooks Davis.It Va WITH_LOADER_VERIEXEC_VECTX 10833ac71149SBrooks DavisEnable building 10843ac71149SBrooks Davis.Xr loader 8 10853ac71149SBrooks Daviswith support for hashing and verifying kernel and modules as a side effect 10863ac71149SBrooks Davisof loading. 10873ac71149SBrooks Davis.Pp 10883ac71149SBrooks DavisDepends on 10893ac71149SBrooks Davis.Va WITH_LOADER_VERIEXEC . 10901f7d1483SEd Maste.It Va WITHOUT_LOADER_ZFS 1091041c5049SEd MasteDo not build ZFS file system boot loader support. 109290be798eSDimitry Andric.It Va WITHOUT_LOCALES 1093041c5049SEd MasteDo not build localization files; see 109490be798eSDimitry Andric.Xr locale 1 . 109590be798eSDimitry Andric.It Va WITHOUT_LOCATE 1096041c5049SEd MasteDo not build 109790be798eSDimitry Andric.Xr locate 1 109890be798eSDimitry Andricand related programs. 109990be798eSDimitry Andric.It Va WITHOUT_LPR 1100041c5049SEd MasteDo not build 110190be798eSDimitry Andric.Xr lpr 1 110290be798eSDimitry Andricand related programs. 110390be798eSDimitry Andric.It Va WITHOUT_LS_COLORS 1104041c5049SEd MasteBuild 110590be798eSDimitry Andric.Xr ls 1 110690be798eSDimitry Andricwithout support for colors to distinguish file types. 1107dcdf4c1aSGleb Popov.It Va WITHOUT_MACHDEP_OPTIMIZATIONS 1108dcdf4c1aSGleb PopovPrefer machine-independent non-assembler code in libc and libm. 110990be798eSDimitry Andric.It Va WITHOUT_MAIL 1110041c5049SEd MasteDo not build any mail support (MUA or MTA). 1111344e2bb9SEd MasteWhen set, it enforces these options: 111290be798eSDimitry Andric.Pp 111390be798eSDimitry Andric.Bl -item -compact 111490be798eSDimitry Andric.It 111590be798eSDimitry Andric.Va WITHOUT_DMAGENT 111690be798eSDimitry Andric.It 111790be798eSDimitry Andric.Va WITHOUT_MAILWRAPPER 111890be798eSDimitry Andric.It 111990be798eSDimitry Andric.Va WITHOUT_SENDMAIL 112090be798eSDimitry Andric.El 112190be798eSDimitry Andric.It Va WITHOUT_MAILWRAPPER 1122041c5049SEd MasteDo not build the 112390be798eSDimitry Andric.Xr mailwrapper 8 112490be798eSDimitry AndricMTA selector. 112590be798eSDimitry Andric.It Va WITHOUT_MAKE 1126041c5049SEd MasteDo not install 112790be798eSDimitry Andric.Xr make 1 112890be798eSDimitry Andricand related support files. 112974782f0eSEnji Cooper.It Va WITHOUT_MAKE_CHECK_USE_SANDBOX 1130041c5049SEd MasteDo not execute 113174782f0eSEnji Cooper.Dq Li "make check" 113274782f0eSEnji Cooperin limited sandbox mode. 113374782f0eSEnji CooperThis option should be paired with 113474782f0eSEnji Cooper.Va WITH_INSTALL_AS_USER 113574782f0eSEnji Cooperif executed as an unprivileged user. 113674782f0eSEnji CooperSee 113774782f0eSEnji Cooper.Xr tests 7 113874782f0eSEnji Cooperfor more details. 11397d4374f6SDimitry Andric.It Va WITH_MALLOC_PRODUCTION 1140041c5049SEd MasteDisable assertions and statistics gathering in 11417d4374f6SDimitry Andric.Xr malloc 3 . 11427d4374f6SDimitry AndricIt also defaults the A and J runtime options to off. 114390be798eSDimitry Andric.It Va WITHOUT_MAN 1144041c5049SEd MasteDo not build manual pages. 1145344e2bb9SEd MasteWhen set, these options are also in effect: 114690be798eSDimitry Andric.Pp 114790be798eSDimitry Andric.Bl -inset -compact 114890be798eSDimitry Andric.It Va WITHOUT_MAN_UTILS 114990be798eSDimitry Andric(unless 115090be798eSDimitry Andric.Va WITH_MAN_UTILS 115190be798eSDimitry Andricis set explicitly) 115290be798eSDimitry Andric.El 115390be798eSDimitry Andric.It Va WITHOUT_MANCOMPRESS 1154041c5049SEd MasteDo not install compressed man pages. 115590be798eSDimitry AndricOnly the uncompressed versions will be installed. 115674da9c39SDoug Rabson.It Va WITHOUT_MANSPLITPKG 115774da9c39SDoug RabsonDo not split man pages into their own packages during make package. 115890be798eSDimitry Andric.It Va WITHOUT_MAN_UTILS 1159041c5049SEd MasteDo not build utilities for manual pages, 116090be798eSDimitry Andric.Xr apropos 1 , 116190be798eSDimitry Andric.Xr makewhatis 1 , 116290be798eSDimitry Andric.Xr man 1 , 116390be798eSDimitry Andric.Xr whatis 1 , 116490be798eSDimitry Andric.Xr manctl 8 , 116590be798eSDimitry Andricand related support files. 1166b46d461dSEd Maste.It Va WITH_META_ERROR_TARGET 1167b46d461dSEd MasteEnable the META_MODE .ERROR target. 1168b46d461dSEd Maste.Pp 1169b46d461dSEd MasteThis target will copy the meta file of a failed target 1170b46d461dSEd Masteto 1171b46d461dSEd Maste.Va ERROR_LOGDIR 1172b46d461dSEd Maste(default is 1173b46d461dSEd Maste.Ql ${SRCTOP:H}/error ) 1174b46d461dSEd Masteto help with failure analysis. 1175b46d461dSEd MasteDepends on 1176b46d461dSEd Maste.Va WITH_META_MODE . 1177b46d461dSEd MasteThis default when 1178b46d461dSEd Maste.Va WITH_DIRDEPS_BUILD 1179b46d461dSEd Masteis set. 1180b46d461dSEd Maste.Pp 1181b46d461dSEd MasteThis must be set in the environment, make command line, or 1182b46d461dSEd Maste.Pa /etc/src-env.conf , 1183b46d461dSEd Mastenot 1184b46d461dSEd Maste.Pa /etc/src.conf . 1185cc2520d2SSimon J. Gerraty.It Va WITH_META_MODE 1186344e2bb9SEd MasteCreate 1187be894451SBryan Drewery.Xr make 1 1188be894451SBryan Drewerymeta files when building, which can provide a reliable incremental build when 1189be894451SBryan Dreweryusing 1190be894451SBryan Drewery.Xr filemon 4 . 1191344e2bb9SEd MasteThe meta file is created in OBJDIR as 1192be894451SBryan Drewery.Pa target.meta . 1193344e2bb9SEd MasteThese meta files track the command that was executed, its output, and the 1194344e2bb9SEd Mastecurrent directory. 11952710e62cSBryan DreweryThe 11967f76a95cSBryan Drewery.Xr filemon 4 11972710e62cSBryan Drewerymodule is required unless 11982710e62cSBryan Drewery.Va NO_FILEMON 11992710e62cSBryan Dreweryis defined. 1200344e2bb9SEd MasteWhen the module is loaded, any files used by the commands executed are 1201344e2bb9SEd Mastetracked as dependencies for the target in its meta file. 1202344e2bb9SEd MasteThe target is considered out-of-date and rebuilt if any of these 1203344e2bb9SEd Masteconditions are true compared to the last build: 1204be894451SBryan Drewery.Bl -bullet -compact 1205be894451SBryan Drewery.It 1206be894451SBryan DreweryThe command to execute changes. 1207be894451SBryan Drewery.It 1208be894451SBryan DreweryThe current working directory changes. 1209be894451SBryan Drewery.It 1210a4a2269eSBryan DreweryThe target's meta file is missing. 1211a4a2269eSBryan Drewery.It 1212a4a2269eSBryan DreweryThe target's meta file is missing filemon data when filemon is loaded 1213a4a2269eSBryan Dreweryand a previous run did not have it loaded. 1214be894451SBryan Drewery.It 1215be894451SBryan Drewery[requires 1216be894451SBryan Drewery.Xr filemon 4 ] 1217be894451SBryan DreweryFiles read, executed or linked to are newer than the target. 1218be894451SBryan Drewery.It 1219be894451SBryan Drewery[requires 1220be894451SBryan Drewery.Xr filemon 4 ] 1221be894451SBryan DreweryFiles read, written, executed or linked are missing. 1222be894451SBryan Drewery.El 12237f76a95cSBryan DreweryThe meta files can also be useful for debugging. 12247f76a95cSBryan Drewery.Pp 1225344e2bb9SEd MasteThe build hides commands that are executed unless 12267f76a95cSBryan Drewery.Va NO_SILENT 12277f76a95cSBryan Dreweryis defined. 1228344e2bb9SEd MasteErrors cause 12292710e62cSBryan Drewery.Xr make 1 12302710e62cSBryan Dreweryto show some of its environment for further debugging. 12310a70ef02SBryan Drewery.Pp 1232be894451SBryan DreweryThe build operates as it normally would otherwise. 1233be894451SBryan DreweryThis option originally invoked a different build system but that was renamed 1234be894451SBryan Dreweryto 1235be894451SBryan Drewery.Va WITH_DIRDEPS_BUILD . 1236be894451SBryan Drewery.Pp 1237ba852870SBryan DreweryThis must be set in the environment, make command line, or 12380a70ef02SBryan Drewery.Pa /etc/src-env.conf , 12390a70ef02SBryan Drewerynot 12400a70ef02SBryan Drewery.Pa /etc/src.conf . 1241912aad0fSKyle Evans.It Va WITHOUT_MLX5TOOL 1242041c5049SEd MasteDo not build 1243912aad0fSKyle Evans.Xr mlx5tool 8 1244912aad0fSKyle Evans.Pp 1245912aad0fSKyle EvansThis is a default setting on 1246391e1f23SEd Mastearm/armv7, powerpc/powerpc and riscv/riscv64. 1247912aad0fSKyle Evans.It Va WITH_MLX5TOOL 1248041c5049SEd MasteBuild 1249912aad0fSKyle Evans.Xr mlx5tool 8 1250912aad0fSKyle Evans.Pp 1251912aad0fSKyle EvansThis is a default setting on 1252ff5025d1SPiotr Kubajamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le. 125390be798eSDimitry Andric.It Va WITHOUT_NETCAT 1254041c5049SEd MasteDo not build 125590be798eSDimitry Andric.Xr nc 1 125690be798eSDimitry Andricutility. 125790be798eSDimitry Andric.It Va WITHOUT_NETGRAPH 1258041c5049SEd MasteDo not build applications to support 125990be798eSDimitry Andric.Xr netgraph 4 . 1260344e2bb9SEd MasteWhen set, it enforces these options: 126190be798eSDimitry Andric.Pp 126290be798eSDimitry Andric.Bl -item -compact 126390be798eSDimitry Andric.It 126490be798eSDimitry Andric.Va WITHOUT_BLUETOOTH 1265bf64e879SBryan Drewery.El 1266bf64e879SBryan Drewery.Pp 1267bf64e879SBryan DreweryWhen set, these options are also in effect: 1268bf64e879SBryan Drewery.Pp 1269bf64e879SBryan Drewery.Bl -inset -compact 1270bf64e879SBryan Drewery.It Va WITHOUT_NETGRAPH_SUPPORT 1271bf64e879SBryan Drewery(unless 1272bf64e879SBryan Drewery.Va WITH_NETGRAPH_SUPPORT 1273bf64e879SBryan Dreweryis set explicitly) 127490be798eSDimitry Andric.El 127590be798eSDimitry Andric.It Va WITHOUT_NETGRAPH_SUPPORT 1276041c5049SEd MasteBuild libraries, programs, and kernel modules without netgraph support. 1277153145efSBaptiste Daroussin.It Va WITHOUT_NETLINK 1278153145efSBaptiste DaroussinDo not build 1279153145efSBaptiste Daroussin.Xr genl 1 1280153145efSBaptiste Daroussinutility. 128196aedfd5SEd Maste.It Va WITHOUT_NETLINK_SUPPORT 128296aedfd5SEd MasteMake libraries and programs use rtsock and 128396aedfd5SEd Maste.Xr sysctl 3 128496aedfd5SEd Masteinterfaces instead of 128596aedfd5SEd Maste.Xr snl 3 . 128690be798eSDimitry Andric.It Va WITHOUT_NIS 1287dcdf4c1aSGleb PopovDo not build 1288dcdf4c1aSGleb Popov.Xr NIS 8 128990be798eSDimitry Andricsupport and related programs. 129090be798eSDimitry AndricIf set, you might need to adopt your 129190be798eSDimitry Andric.Xr nsswitch.conf 5 129290be798eSDimitry Andricand remove 129390be798eSDimitry Andric.Sq nis 129490be798eSDimitry Andricentries. 129590be798eSDimitry Andric.It Va WITHOUT_NLS 1296041c5049SEd MasteDo not build NLS catalogs. 129757a87b06SEnji CooperWhen set, it enforces these options: 129857a87b06SEnji Cooper.Pp 129957a87b06SEnji Cooper.Bl -item -compact 130057a87b06SEnji Cooper.It 130157a87b06SEnji Cooper.Va WITHOUT_NLS_CATALOGS 130257a87b06SEnji Cooper.El 130390be798eSDimitry Andric.It Va WITHOUT_NLS_CATALOGS 1304041c5049SEd MasteDo not build NLS catalog support for 130590be798eSDimitry Andric.Xr csh 1 . 130690be798eSDimitry Andric.It Va WITHOUT_NS_CACHING 1307041c5049SEd MasteDisable name caching in the 130890be798eSDimitry Andric.Pa nsswitch 130990be798eSDimitry Andricsubsystem. 131090be798eSDimitry AndricThe generic caching daemon, 131190be798eSDimitry Andric.Xr nscd 8 , 131290be798eSDimitry Andricwill not be built either if this option is set. 131390be798eSDimitry Andric.It Va WITHOUT_NTP 1314041c5049SEd MasteDo not build 131590be798eSDimitry Andric.Xr ntpd 8 131690be798eSDimitry Andricand related programs. 13178edab9cdSWarner Losh.It Va WITHOUT_NVME 1318041c5049SEd MasteDo not build nvme related tools and kernel modules. 13198edab9cdSWarner Losh.Pp 13208edab9cdSWarner LoshThis is a default setting on 1321391e1f23SEd Mastearm/armv7, powerpc/powerpc and riscv/riscv64. 13228edab9cdSWarner Losh.It Va WITH_NVME 1323041c5049SEd MasteBuild nvme related tools and kernel modules. 13248edab9cdSWarner Losh.Pp 13258edab9cdSWarner LoshThis is a default setting on 13268cfd7a6aSPiotr Kubajamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64 and powerpc/powerpc64le. 1327d0ca28d7SKonstantin Belousov.It Va WITHOUT_OFED 1328bd258f88SEd MasteDo not build the 132990be798eSDimitry Andric.Dq "OpenFabrics Enterprise Distribution" 1330bd258f88SEd MasteInfiniBand software stack, including kernel modules and userspace libraries. 13313f9c1b2cSEd Maste.Pp 13323f9c1b2cSEd MasteThis is a default setting on 1333391e1f23SEd Mastearm/armv7. 1334d0ca28d7SKonstantin BelousovWhen set, it enforces these options: 1335d0ca28d7SKonstantin Belousov.Pp 1336d0ca28d7SKonstantin Belousov.Bl -item -compact 1337d0ca28d7SKonstantin Belousov.It 1338d0ca28d7SKonstantin Belousov.Va WITHOUT_OFED_EXTRA 1339d0ca28d7SKonstantin Belousov.El 1340c5819624SEd Maste.It Va WITH_OFED 1341c5819624SEd MasteBuild the 1342c5819624SEd Maste.Dq "OpenFabrics Enterprise Distribution" 1343c5819624SEd MasteInfiniBand software stack, including kernel modules and userspace libraries. 1344c5819624SEd Maste.Pp 1345c5819624SEd MasteThis is a default setting on 1346d27cc068SJohn Baldwinamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64. 13474a3caf80SKonstantin Belousov.It Va WITH_OFED_EXTRA 1348041c5049SEd MasteBuild the non-essential components of the 13494a3caf80SKonstantin Belousov.Dq "OpenFabrics Enterprise Distribution" 13504a3caf80SKonstantin BelousovInfiniband software stack, mostly examples. 135190be798eSDimitry Andric.It Va WITH_OPENLDAP 13527587d982SKyle EvansEnable building LDAP support for kerberos using an openldap client from ports. 1353b0840a28SDimitry Andric.It Va WITHOUT_OPENMP 1354041c5049SEd MasteDo not build LLVM's OpenMP runtime. 1355b0840a28SDimitry Andric.Pp 1356b0840a28SDimitry AndricThis is a default setting on 1357391e1f23SEd Mastearm/armv7 and powerpc/powerpc. 1358b0840a28SDimitry Andric.It Va WITH_OPENMP 1359041c5049SEd MasteBuild LLVM's OpenMP runtime. 1360b0840a28SDimitry Andric.Pp 1361b0840a28SDimitry AndricThis is a default setting on 1362d27cc068SJohn Baldwinamd64/amd64, arm64/aarch64, i386/i386, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64. 136390be798eSDimitry Andric.It Va WITHOUT_OPENSSH 1364041c5049SEd MasteDo not build OpenSSH. 136590be798eSDimitry Andric.It Va WITHOUT_OPENSSL 1366041c5049SEd MasteDo not build OpenSSL. 1367344e2bb9SEd MasteWhen set, it enforces these options: 136890be798eSDimitry Andric.Pp 136990be798eSDimitry Andric.Bl -item -compact 137090be798eSDimitry Andric.It 13719f4e04c1SEd Maste.Va WITHOUT_DMAGENT 13729f4e04c1SEd Maste.It 137390be798eSDimitry Andric.Va WITHOUT_KERBEROS 137490be798eSDimitry Andric.It 1375fb27d7aeSEd Maste.Va WITHOUT_KERBEROS_SUPPORT 1376fb27d7aeSEd Maste.It 1377da39b3adSEd Maste.Va WITHOUT_LDNS 1378da39b3adSEd Maste.It 1379da39b3adSEd Maste.Va WITHOUT_LDNS_UTILS 1380da39b3adSEd Maste.It 1381379954d0SJessica Clarke.Va WITHOUT_LOADER_ZFS 1382379954d0SJessica Clarke.It 138390be798eSDimitry Andric.Va WITHOUT_OPENSSH 1384da39b3adSEd Maste.It 1385ac56b22fSEd Maste.Va WITHOUT_OPENSSL_KTLS 1386ac56b22fSEd Maste.It 1387116f7fccSEd Maste.Va WITHOUT_PKGBOOTSTRAP 1388116f7fccSEd Maste.It 1389da39b3adSEd Maste.Va WITHOUT_UNBOUND 1390243125c8SMitchell Horne.It 1391243125c8SMitchell Horne.Va WITHOUT_ZFS 139290be798eSDimitry Andric.El 139390be798eSDimitry Andric.Pp 1394344e2bb9SEd MasteWhen set, these options are also in effect: 139590be798eSDimitry Andric.Pp 139690be798eSDimitry Andric.Bl -inset -compact 139790be798eSDimitry Andric.It Va WITHOUT_GSSAPI 139890be798eSDimitry Andric(unless 139990be798eSDimitry Andric.Va WITH_GSSAPI 140090be798eSDimitry Andricis set explicitly) 140190be798eSDimitry Andric.El 1402ae257282SJohn Baldwin.It Va WITHOUT_OPENSSL_KTLS 1403041c5049SEd MasteDo not include kernel TLS support in OpenSSL. 1404ae257282SJohn Baldwin.Pp 1405ae257282SJohn BaldwinThis is a default setting on 1406391e1f23SEd Mastearm/armv7, i386/i386, powerpc/powerpc and riscv/riscv64. 1407ae257282SJohn Baldwin.It Va WITH_OPENSSL_KTLS 1408041c5049SEd MasteInclude kernel TLS support in OpenSSL. 1409ae257282SJohn Baldwin.Pp 1410ae257282SJohn BaldwinThis is a default setting on 1411cfe244cbSBrooks Davisamd64/amd64, arm64/aarch64, powerpc/powerpc64 and powerpc/powerpc64le. 141290be798eSDimitry Andric.It Va WITHOUT_PAM 1413041c5049SEd MasteDo not build PAM library and modules. 141490be798eSDimitry Andric.Bf -symbolic 141590be798eSDimitry AndricThis option is deprecated and does nothing. 141690be798eSDimitry Andric.Ef 1417bf64e879SBryan DreweryWhen set, these options are also in effect: 141890be798eSDimitry Andric.Pp 1419bf64e879SBryan Drewery.Bl -inset -compact 1420bf64e879SBryan Drewery.It Va WITHOUT_PAM_SUPPORT 1421bf64e879SBryan Drewery(unless 1422bf64e879SBryan Drewery.Va WITH_PAM_SUPPORT 1423bf64e879SBryan Dreweryis set explicitly) 142490be798eSDimitry Andric.El 142590be798eSDimitry Andric.It Va WITHOUT_PAM_SUPPORT 1426041c5049SEd MasteBuild some programs without PAM support, particularly 142790be798eSDimitry Andric.Xr ftpd 8 142890be798eSDimitry Andricand 142990be798eSDimitry Andric.Xr ppp 8 . 143090be798eSDimitry Andric.It Va WITHOUT_PF 1431041c5049SEd MasteDo not build PF firewall package. 1432344e2bb9SEd MasteWhen set, it enforces these options: 143390be798eSDimitry Andric.Pp 143490be798eSDimitry Andric.Bl -item -compact 143590be798eSDimitry Andric.It 143690be798eSDimitry Andric.Va WITHOUT_AUTHPF 143790be798eSDimitry Andric.El 1438ca4e1ea1SKyle Evans.It Va WITHOUT_PIE 1439ca4e1ea1SKyle EvansDo not build dynamically linked binaries as 1440b3a27c81SEd MastePosition-Independent Executable (PIE). 14413f9c1b2cSEd Maste.Pp 14423f9c1b2cSEd MasteThis is a default setting on 1443391e1f23SEd Mastearm/armv7, i386/i386 and powerpc/powerpc. 14443f9c1b2cSEd Maste.It Va WITH_PIE 14453f9c1b2cSEd MasteBuild dynamically linked binaries as 14463f9c1b2cSEd MastePosition-Independent Executable (PIE). 14473f9c1b2cSEd Maste.Pp 14483f9c1b2cSEd MasteThis is a default setting on 1449d27cc068SJohn Baldwinamd64/amd64, arm64/aarch64, powerpc/powerpc64, powerpc/powerpc64le and riscv/riscv64. 145090be798eSDimitry Andric.It Va WITHOUT_PKGBOOTSTRAP 1451041c5049SEd MasteDo not build 145290be798eSDimitry Andric.Xr pkg 7 145390be798eSDimitry Andricbootstrap tool. 145490be798eSDimitry Andric.It Va WITHOUT_PMC 1455041c5049SEd MasteDo not build 145690be798eSDimitry Andric.Xr pmccontrol 8 145790be798eSDimitry Andricand related programs. 145890be798eSDimitry Andric.It Va WITHOUT_PPP 1459041c5049SEd MasteDo not build 146090be798eSDimitry Andric.Xr ppp 8 146190be798eSDimitry Andricand related programs. 14624c033a73SEnji Cooper.It Va WITH_PROFILE 1463041c5049SEd MasteBuild profiled libraries for use with 14644c033a73SEnji Cooper.Xr gprof 8 . 146513cf4313SEd MasteThis option is deprecated and may not be present in a future version of 146613cf4313SEd Maste.Fx . 146797f14168SKonstantin Belousov.It Va WITHOUT_PTHREADS_ASSERTIONS 146897f14168SKonstantin BelousovDisable debugging assertions in pthreads library. 146990be798eSDimitry Andric.It Va WITHOUT_QUOTAS 1470041c5049SEd MasteDo not build 147123a6b49aSEdward Tomasz Napierala.Xr quota 1 147290be798eSDimitry Andricand related programs. 14730e0e9604SEnji Cooper.It Va WITHOUT_RADIUS_SUPPORT 1474041c5049SEd MasteDo not build radius support into various applications, like 14750e0e9604SEnji Cooper.Xr pam_radius 8 14760e0e9604SEnji Cooperand 14770e0e9604SEnji Cooper.Xr ppp 8 . 147888342134SEnji Cooper.It Va WITH_RATELIMIT 1479041c5049SEd MasteBuild the system with rate limit support. 148088342134SEnji Cooper.Pp 148188342134SEnji CooperThis makes 148288342134SEnji Cooper.Dv SO_MAX_PACING_RATE 148388342134SEnji Coopereffective in 148488342134SEnji Cooper.Xr getsockopt 2 , 148588342134SEnji Cooperand 148688342134SEnji Cooper.Ar txrlimit 148788342134SEnji Coopersupport in 148888342134SEnji Cooper.Xr ifconfig 8 , 148988342134SEnji Cooperby proxy. 14900e0e9604SEnji Cooper.It Va WITHOUT_RBOOTD 1491041c5049SEd MasteDo not build or install 14920e0e9604SEnji Cooper.Xr rbootd 8 . 1493a8af3aeeSEd Maste.It Va WITHOUT_RELRO 1494a8af3aeeSEd MasteDo not apply the Relocation Read-Only (RELRO) vulnerability mitigation. 1495a8af3aeeSEd MasteSee also the 1496a8af3aeeSEd Maste.Va BIND_NOW 1497a8af3aeeSEd Masteoption. 149885d55309SEd Maste.It Va WITH_REPRODUCIBLE_BUILD 1499041c5049SEd MasteExclude build metadata (such as the build time, user, or host) 150085d55309SEd Mastefrom the kernel, boot loaders, and uname output, so that builds produce 150185d55309SEd Mastebit-for-bit identical output. 150290be798eSDimitry Andric.It Va WITHOUT_RESCUE 1503041c5049SEd MasteDo not build 150490be798eSDimitry Andric.Xr rescue 8 . 15058ccac680SEd Maste.It Va WITH_RETPOLINE 1506041c5049SEd MasteBuild the base system with the retpoline speculative execution 15078ccac680SEd Mastevulnerability mitigation for CVE-2017-5715. 150890be798eSDimitry Andric.It Va WITHOUT_ROUTED 1509041c5049SEd MasteDo not build 151090be798eSDimitry Andric.Xr routed 8 151190be798eSDimitry Andricutility. 15124c033a73SEnji Cooper.It Va WITH_RPCBIND_WARMSTART_SUPPORT 1513041c5049SEd MasteBuild 15144c033a73SEnji Cooper.Xr rpcbind 8 15154c033a73SEnji Cooperwith warmstart support. 1516c5819624SEd Maste.It Va WITHOUT_SCTP_SUPPORT 1517c5819624SEd MasteDisable support in the kernel for the 1518c5819624SEd Maste.Xr sctp 4 1519c5819624SEd MasteStream Control Transmission Protocol 1520c5819624SEd Masteloadable kernel module. 152190be798eSDimitry Andric.It Va WITHOUT_SENDMAIL 1522041c5049SEd MasteDo not build 152390be798eSDimitry Andric.Xr sendmail 8 152490be798eSDimitry Andricand related programs. 1525e8788097SKonstantin Belousov.It Va WITHOUT_SERVICESDB 1526041c5049SEd MasteDo not install 1527e8788097SKonstantin Belousov.Pa /var/db/services.db . 152890be798eSDimitry Andric.It Va WITHOUT_SETUID_LOGIN 152990be798eSDimitry AndricSet this to disable the installation of 153090be798eSDimitry Andric.Xr login 1 153190be798eSDimitry Andricas a set-user-ID root program. 153290be798eSDimitry Andric.It Va WITHOUT_SHAREDOCS 1533041c5049SEd MasteDo not build the 153490be798eSDimitry Andric.Bx 4.4 153590be798eSDimitry Andriclegacy docs. 153690be798eSDimitry Andric.It Va WITH_SORT_THREADS 1537041c5049SEd MasteEnable threads in 153890be798eSDimitry Andric.Xr sort 1 . 153990be798eSDimitry Andric.It Va WITHOUT_SOURCELESS 1540041c5049SEd MasteDo not build kernel modules that include sourceless code (either microcode or native code for host CPU). 1541344e2bb9SEd MasteWhen set, it enforces these options: 154290be798eSDimitry Andric.Pp 154390be798eSDimitry Andric.Bl -item -compact 154490be798eSDimitry Andric.It 154590be798eSDimitry Andric.Va WITHOUT_SOURCELESS_HOST 154690be798eSDimitry Andric.It 154790be798eSDimitry Andric.Va WITHOUT_SOURCELESS_UCODE 154890be798eSDimitry Andric.El 154990be798eSDimitry Andric.It Va WITHOUT_SOURCELESS_HOST 1550041c5049SEd MasteDo not build kernel modules that include sourceless native code for host CPU. 155190be798eSDimitry Andric.It Va WITHOUT_SOURCELESS_UCODE 1552041c5049SEd MasteDo not build kernel modules that include sourceless microcode. 1553330b7dccSEd Maste.It Va WITHOUT_SPLIT_KERNEL_DEBUG 1554330b7dccSEd MasteDo not build standalone kernel debug files. 1555330b7dccSEd MasteDebug data (if enabled by the kernel configuration file) 1556330b7dccSEd Mastewill be included in the kernel and modules. 1557330b7dccSEd MasteWhen set, it enforces these options: 1558330b7dccSEd Maste.Pp 1559330b7dccSEd Maste.Bl -item -compact 1560330b7dccSEd Maste.It 1561330b7dccSEd Maste.Va WITHOUT_KERNEL_SYMBOLS 1562330b7dccSEd Maste.El 156390be798eSDimitry Andric.It Va WITHOUT_SSP 15645449d014SEd MasteDo not build world with stack smashing protection. 1565cc2520d2SSimon J. Gerraty.It Va WITH_STAGING 1566cc2520d2SSimon J. GerratyEnable staging of files to a stage tree. 1567cc2520d2SSimon J. GerratyThis can be best thought of as auto-install to 1568cc2520d2SSimon J. Gerraty.Va DESTDIR 1569cc2520d2SSimon J. Gerratywith some extra meta data to ensure dependencies can be tracked. 1570cc2520d2SSimon J. GerratyDepends on 157132b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD . 1572344e2bb9SEd MasteWhen set, these options are also in effect: 1573cc2520d2SSimon J. Gerraty.Pp 1574cc2520d2SSimon J. Gerraty.Bl -inset -compact 1575cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_MAN 1576cc2520d2SSimon J. Gerraty(unless 1577cc2520d2SSimon J. Gerraty.Va WITHOUT_STAGING_MAN 1578cc2520d2SSimon J. Gerratyis set explicitly) 1579cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_PROG 1580cc2520d2SSimon J. Gerraty(unless 1581cc2520d2SSimon J. Gerraty.Va WITHOUT_STAGING_PROG 1582cc2520d2SSimon J. Gerratyis set explicitly) 1583cc2520d2SSimon J. Gerraty.El 15840a70ef02SBryan Drewery.Pp 1585ba852870SBryan DreweryThis must be set in the environment, make command line, or 15860a70ef02SBryan Drewery.Pa /etc/src-env.conf , 15870a70ef02SBryan Drewerynot 15880a70ef02SBryan Drewery.Pa /etc/src.conf . 1589cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_MAN 1590344e2bb9SEd MasteEnable staging of man pages to stage tree. 1591cc2520d2SSimon J. Gerraty.It Va WITH_STAGING_PROG 1592cc2520d2SSimon J. GerratyEnable staging of PROGs to stage tree. 1593cc2520d2SSimon J. Gerraty.It Va WITH_STALE_STAGED 1594cc2520d2SSimon J. GerratyCheck staged files are not stale. 1595de19b521SDimitry Andric.It Va WITHOUT_STATS 1596041c5049SEd MasteNeither build nor install 1597de19b521SDimitry Andric.Lb libstats 1598de19b521SDimitry Andricand dependent binaries. 159990be798eSDimitry Andric.It Va WITHOUT_SYSCONS 1600041c5049SEd MasteDo not build 160190be798eSDimitry Andric.Xr syscons 4 160290be798eSDimitry Andricsupport files such as keyboard maps, fonts, and screen output maps. 1603cc2520d2SSimon J. Gerraty.It Va WITH_SYSROOT 1604cc2520d2SSimon J. GerratyEnable use of sysroot during build. 1605cc2520d2SSimon J. GerratyDepends on 160632b5dc9aSSimon J. Gerraty.Va WITH_DIRDEPS_BUILD . 16070a70ef02SBryan Drewery.Pp 1608ba852870SBryan DreweryThis must be set in the environment, make command line, or 16090a70ef02SBryan Drewery.Pa /etc/src-env.conf , 16100a70ef02SBryan Drewerynot 16110a70ef02SBryan Drewery.Pa /etc/src.conf . 16128095b3c2SBryan Drewery.It Va WITHOUT_SYSTEM_COMPILER 1613041c5049SEd MasteDo not opportunistically skip building a cross-compiler during the 1614a9da9b86SBryan Drewerybootstrap phase of the build. 16158095b3c2SBryan DreweryNormally, if the currently installed compiler matches the planned bootstrap 16168095b3c2SBryan Drewerycompiler type and revision, then it will not be built. 1617a9da9b86SBryan DreweryThis does not prevent a compiler from being built for installation though, 1618a9da9b86SBryan Dreweryonly for building one for the build itself. 1619a9da9b86SBryan DreweryThe 1620a9da9b86SBryan Drewery.Va WITHOUT_CLANG 1621a5798ec8SEd Masteoption controls that. 1622be9309deSBryan Drewery.It Va WITHOUT_SYSTEM_LINKER 1623041c5049SEd MasteDo not opportunistically skip building a cross-linker during the 1624be9309deSBryan Drewerybootstrap phase of the build. 1625be9309deSBryan DreweryNormally, if the currently installed linker matches the planned bootstrap 1626be9309deSBryan Drewerylinker type and revision, then it will not be built. 1627be9309deSBryan DreweryThis does not prevent a linker from being built for installation though, 1628be9309deSBryan Dreweryonly for building one for the build itself. 1629be9309deSBryan DreweryThe 1630be9309deSBryan Drewery.Va WITHOUT_LLD 16312ea16071SEd Masteoption controls that. 1632be9309deSBryan Drewery.Pp 1633be9309deSBryan DreweryThis option is only relevant when 1634be9309deSBryan Drewery.Va WITH_LLD_BOOTSTRAP 1635be9309deSBryan Dreweryis set. 163693da8366SEnji Cooper.It Va WITHOUT_TALK 1637041c5049SEd MasteDo not build or install 163893da8366SEnji Cooper.Xr talk 1 163993da8366SEnji Cooperand 164093da8366SEnji Cooper.Xr talkd 8 . 16410e0e9604SEnji Cooper.It Va WITHOUT_TCP_WRAPPERS 1642041c5049SEd MasteDo not build or install 16430e0e9604SEnji Cooper.Xr tcpd 8 , 16440e0e9604SEnji Cooperand related utilities. 164590be798eSDimitry Andric.It Va WITHOUT_TCSH 1646041c5049SEd MasteDo not build and install 164790be798eSDimitry Andric.Pa /bin/csh 164890be798eSDimitry Andric(which is 164990be798eSDimitry Andric.Xr tcsh 1 ) . 165090be798eSDimitry Andric.It Va WITHOUT_TELNET 1651041c5049SEd MasteDo not build 165223a6b49aSEdward Tomasz Napierala.Xr telnet 1 165390be798eSDimitry Andricand related programs. 165418c6fc4cSJulio Merino.It Va WITHOUT_TESTS 1655041c5049SEd MasteDo not build nor install the 165690be798eSDimitry Andric.Fx 165790be798eSDimitry AndricTest Suite in 165890be798eSDimitry Andric.Pa /usr/tests/ . 165990be798eSDimitry AndricSee 166090be798eSDimitry Andric.Xr tests 7 166190be798eSDimitry Andricfor more details. 166218c6fc4cSJulio MerinoThis also disables the build of all test-related dependencies, including ATF. 1663344e2bb9SEd MasteWhen set, it enforces these options: 1664c5d09a87SGlen Barber.Pp 1665c5d09a87SGlen Barber.Bl -item -compact 1666c5d09a87SGlen Barber.It 166716f3fdf5SMark Johnston.Va WITHOUT_DTRACE_TESTS 1668bf64e879SBryan Drewery.El 1669bf64e879SBryan Drewery.Pp 1670bf64e879SBryan DreweryWhen set, these options are also in effect: 1671bf64e879SBryan Drewery.Pp 1672bf64e879SBryan Drewery.Bl -inset -compact 16737840b63aSEnji Cooper.It Va WITHOUT_GOOGLETEST 16747840b63aSEnji Cooper(unless 16757840b63aSEnji Cooper.Va WITH_GOOGLETEST 16767840b63aSEnji Cooperis set explicitly) 1677bf64e879SBryan Drewery.It Va WITHOUT_TESTS_SUPPORT 1678bf64e879SBryan Drewery(unless 1679bf64e879SBryan Drewery.Va WITH_TESTS_SUPPORT 1680bf64e879SBryan Dreweryis set explicitly) 1681c5d09a87SGlen Barber.El 1682c5d09a87SGlen Barber.It Va WITHOUT_TESTS_SUPPORT 1683041c5049SEd MasteDisable the build of all test-related dependencies, including ATF. 16847840b63aSEnji CooperWhen set, it enforces these options: 16857840b63aSEnji Cooper.Pp 16867840b63aSEnji Cooper.Bl -item -compact 16877840b63aSEnji Cooper.It 16887840b63aSEnji Cooper.Va WITHOUT_GOOGLETEST 16897840b63aSEnji Cooper.El 169090be798eSDimitry Andric.It Va WITHOUT_TEXTPROC 1691041c5049SEd MasteDo not build 169290be798eSDimitry Andricprograms used for text processing. 16930e0e9604SEnji Cooper.It Va WITHOUT_TFTP 1694041c5049SEd MasteDo not build or install 16950e0e9604SEnji Cooper.Xr tftp 1 16960e0e9604SEnji Cooperand 16970e0e9604SEnji Cooper.Xr tftpd 8 . 169890be798eSDimitry Andric.It Va WITHOUT_TOOLCHAIN 169983d57250SEd MasteDo not install 170090be798eSDimitry Andricprograms used for program development, 170190be798eSDimitry Andriccompilers, debuggers etc. 1702344e2bb9SEd MasteWhen set, it enforces these options: 170390be798eSDimitry Andric.Pp 170490be798eSDimitry Andric.Bl -item -compact 170590be798eSDimitry Andric.It 170690be798eSDimitry Andric.Va WITHOUT_CLANG 170790be798eSDimitry Andric.It 170890be798eSDimitry Andric.Va WITHOUT_CLANG_EXTRAS 170990be798eSDimitry Andric.It 171019267656SConrad Meyer.Va WITHOUT_CLANG_FORMAT 171119267656SConrad Meyer.It 171290be798eSDimitry Andric.Va WITHOUT_CLANG_FULL 171390be798eSDimitry Andric.It 17146c2b7edaSEd Maste.Va WITHOUT_LLD 17156c2b7edaSEd Maste.It 17163d02549fSBryan Drewery.Va WITHOUT_LLDB 17175b9c3654SEd Maste.It 17185b9c3654SEd Maste.Va WITHOUT_LLVM_COV 171990be798eSDimitry Andric.El 17200ab89d72SEd Maste.It Va WITH_UBSAN 17210ab89d72SEd MasteBuild the base system with Undefined Behavior Sanitizer (UBSan) to detect 17220ab89d72SEd Mastevarious kinds of undefined behavior at runtime. 17230ab89d72SEd MasteRequires that Clang be used as the base system compiler 17240ab89d72SEd Masteand that the runtime support library is available 172590be798eSDimitry Andric.It Va WITHOUT_UNBOUND 1726041c5049SEd MasteDo not build 172790be798eSDimitry Andric.Xr unbound 8 172890be798eSDimitry Andricand related programs. 1729efb949a6SBryan Drewery.It Va WITHOUT_UNIFIED_OBJDIR 1730041c5049SEd MasteUse the historical object directory format for 1731efb949a6SBryan Drewery.Xr build 7 1732efb949a6SBryan Drewerytargets. 1733efb949a6SBryan DreweryFor native-builds and builds done directly in sub-directories the format of 1734efb949a6SBryan Drewery.Pa ${MAKEOBJDIRPREFIX}/${.CURDIR} 1735efb949a6SBryan Dreweryis used, 1736efb949a6SBryan Drewerywhile for cross-builds 1737efb949a6SBryan Drewery.Pa ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}/${.CURDIR} 1738efb949a6SBryan Dreweryis used. 1739efb949a6SBryan Drewery.Pp 1740b7f53cdcSEd MasteThis option is transitional and will be removed in a future version of 1741b7f53cdcSEd Maste.Fx , 1742efb949a6SBryan Dreweryat which time 174316ee5cd1SChristian Brueffer.Va WITH_UNIFIED_OBJDIR 1744efb949a6SBryan Drewerywill be enabled permanently. 1745efb949a6SBryan Drewery.Pp 1746efb949a6SBryan DreweryThis must be set in the environment, make command line, or 1747efb949a6SBryan Drewery.Pa /etc/src-env.conf , 1748efb949a6SBryan Drewerynot 1749efb949a6SBryan Drewery.Pa /etc/src.conf . 175090be798eSDimitry Andric.It Va WITHOUT_USB 1751041c5049SEd MasteDo not build USB-related programs and libraries. 1752c5d09a87SGlen Barber.It Va WITHOUT_USB_GADGET_EXAMPLES 1753041c5049SEd MasteDo not build USB gadget kernel modules. 175490be798eSDimitry Andric.It Va WITHOUT_UTMPX 1755041c5049SEd MasteDo not build user accounting tools such as 175690be798eSDimitry Andric.Xr last 1 , 175790be798eSDimitry Andric.Xr users 1 , 175890be798eSDimitry Andric.Xr who 1 , 175990be798eSDimitry Andric.Xr ac 8 , 176090be798eSDimitry Andric.Xr lastlogin 8 176190be798eSDimitry Andricand 176290be798eSDimitry Andric.Xr utx 8 . 1763bfdf8aa9SJohn Baldwin.It Va WITH_VERIEXEC 1764bfdf8aa9SJohn BaldwinEnable building 1765bfdf8aa9SJohn Baldwin.Xr veriexec 8 1766bfdf8aa9SJohn Baldwinwhich loads the contents of verified manifests into the kernel 1767bfdf8aa9SJohn Baldwinfor use by 1768bfdf8aa9SJohn Baldwin.Xr mac_veriexec 4 1769bfdf8aa9SJohn Baldwin.Pp 1770de19b521SDimitry AndricDepends on 1771de19b521SDimitry Andric.Va WITH_BEARSSL . 177290be798eSDimitry Andric.It Va WITHOUT_VI 1773041c5049SEd MasteDo not build and install vi, view, ex and related programs. 177490be798eSDimitry Andric.It Va WITHOUT_VT 1775041c5049SEd MasteDo not build 177690be798eSDimitry Andric.Xr vt 4 177790be798eSDimitry Andricsupport files (fonts and keymaps). 177890be798eSDimitry Andric.It Va WITHOUT_WARNS 177990be798eSDimitry AndricSet this to not add warning flags to the compiler invocations. 178090be798eSDimitry AndricUseful as a temporary workaround when code enters the tree 178190be798eSDimitry Andricwhich triggers warnings in environments that differ from the 1782559f9bfcSJens Schweikhardtoriginal developer. 1783f309bd63SAlex Richardson.It Va WITHOUT_WERROR 1784f309bd63SAlex RichardsonSet this to not treat compiler warnings as errors. 1785f309bd63SAlex RichardsonUseful as a temporary workaround when working on fixing compiler warnings. 1786f309bd63SAlex RichardsonWhen set, warnings are still printed in the build log but do not fail the build. 178790be798eSDimitry Andric.It Va WITHOUT_WIRELESS 1788041c5049SEd MasteDo not build programs used for 802.11 wireless networks; especially 178990be798eSDimitry Andric.Xr wpa_supplicant 8 179090be798eSDimitry Andricand 179190be798eSDimitry Andric.Xr hostapd 8 . 1792bf64e879SBryan DreweryWhen set, these options are also in effect: 179390be798eSDimitry Andric.Pp 1794bf64e879SBryan Drewery.Bl -inset -compact 1795bf64e879SBryan Drewery.It Va WITHOUT_WIRELESS_SUPPORT 1796bf64e879SBryan Drewery(unless 1797bf64e879SBryan Drewery.Va WITH_WIRELESS_SUPPORT 1798bf64e879SBryan Dreweryis set explicitly) 179990be798eSDimitry Andric.El 180090be798eSDimitry Andric.It Va WITHOUT_WIRELESS_SUPPORT 1801041c5049SEd MasteBuild libraries, programs, and kernel modules without 180290be798eSDimitry Andric802.11 wireless support. 180390be798eSDimitry Andric.It Va WITHOUT_WPA_SUPPLICANT_EAPOL 180490be798eSDimitry AndricBuild 180590be798eSDimitry Andric.Xr wpa_supplicant 8 180690be798eSDimitry Andricwithout support for the IEEE 802.1X protocol and without 180790be798eSDimitry Andricsupport for EAP-PEAP, EAP-TLS, EAP-LEAP, and EAP-TTLS 180890be798eSDimitry Andricprotocols (usable only via 802.1X). 180990be798eSDimitry Andric.It Va WITHOUT_ZFS 18104be63587SMark JohnstonDo not build the ZFS file system kernel module, libraries such as 18114be63587SMark Johnston.Xr libbe 3 , 18124be63587SMark Johnstonand user commands such as 18134be63587SMark Johnston.Xr zpool 8 18144be63587SMark Johnstonor 18154be63587SMark Johnston.Xr zfs 8 . 18164be63587SMark JohnstonAlso disable ZFS support in utilities and libraries which implement 18174be63587SMark JohnstonZFS-specific functionality. 181890be798eSDimitry Andric.It Va WITHOUT_ZONEINFO 1819041c5049SEd MasteDo not build the timezone database. 18205c021049SEnji CooperWhen set, it enforces these options: 18215c021049SEnji Cooper.Pp 18225c021049SEnji Cooper.Bl -item -compact 18235c021049SEnji Cooper.It 18245c021049SEnji Cooper.Va WITHOUT_ZONEINFO_LEAPSECONDS_SUPPORT 18255c021049SEnji Cooper.El 18265c021049SEnji Cooper.It Va WITH_ZONEINFO_LEAPSECONDS_SUPPORT 1827041c5049SEd MasteBuild leapsecond information in to the timezone database. 182890be798eSDimitry Andric.El 18293fe97711SBrooks Davis.Pp 18303fe97711SBrooks DavisThe following options accept a single value from a list of valid values. 18313fe97711SBrooks Davis.Bl -tag -width indent 18323fe97711SBrooks Davis.It Va INIT_ALL 18333fe97711SBrooks DavisControl default initialization of stack variables in C and C++ code. 18343fe97711SBrooks DavisOptions other than 18353fe97711SBrooks Davis.Li none 18363fe97711SBrooks Davisrequire the Clang compiler or GCC 12.0 or later. 18373fe97711SBrooks DavisThe default value is 18383fe97711SBrooks Davis.Li none . 18393fe97711SBrooks DavisValid values are: 18403fe97711SBrooks Davis.Bl -tag -width indent 18413fe97711SBrooks Davis.It Li none 18423fe97711SBrooks DavisDo not initialize stack variables (standard C/C++ behavior). 18433fe97711SBrooks Davis.It Li pattern 18443fe97711SBrooks DavisBuild the base system or kernel with stack variables initialized to 18453fe97711SBrooks Davis.Pq compiler defined 18463fe97711SBrooks Davisdebugging patterns on function entry. 18473fe97711SBrooks Davis.It Li zero 18483fe97711SBrooks DavisBuild the base system or kernel with stack variables initialized 18493fe97711SBrooks Davisto zero on function entry. 18503fe97711SBrooks DavisThis value is converted to 18513fe97711SBrooks Davis.Li none 18523fe97711SBrooks Davisfor amd64 kernel builds due to incompatability with ifunc memset. 18533fe97711SBrooks Davis.El 18543fe97711SBrooks Davis.It Va LIBC_MALLOC 18553fe97711SBrooks DavisSpecify the 18563fe97711SBrooks Davis.Xr malloc 3 1857a89e98ecSBrooks Davisimplementation used by libc. 18583fe97711SBrooks DavisThe default value is 18593fe97711SBrooks Davis.Li jemalloc . 18603fe97711SBrooks DavisValid values are: 18613fe97711SBrooks Davis.Bl -tag -width indent 18623fe97711SBrooks Davis.It Li jemalloc 18633fe97711SBrooks Davis.El 18643fe97711SBrooks Davis.Pp 18653fe97711SBrooks DavisOther implementations are expected in the future in both 18663fe97711SBrooks Davis.Fx 18673fe97711SBrooks Davisand downstream consumers. 18683fe97711SBrooks Davis.El 186990be798eSDimitry Andric.Sh FILES 187090be798eSDimitry Andric.Bl -tag -compact -width Pa 187190be798eSDimitry Andric.It Pa /etc/src.conf 18720a70ef02SBryan Drewery.It Pa /etc/src-env.conf 187390be798eSDimitry Andric.It Pa /usr/share/mk/bsd.own.mk 187490be798eSDimitry Andric.El 187590be798eSDimitry Andric.Sh SEE ALSO 187690be798eSDimitry Andric.Xr make 1 , 187790be798eSDimitry Andric.Xr make.conf 5 , 187890be798eSDimitry Andric.Xr build 7 , 187990be798eSDimitry Andric.Xr ports 7 188090be798eSDimitry Andric.Sh HISTORY 188190be798eSDimitry AndricThe 188290be798eSDimitry Andric.Nm 188390be798eSDimitry Andricfile appeared in 188490be798eSDimitry Andric.Fx 7.0 . 188590be798eSDimitry Andric.Sh AUTHORS 188688342134SEnji CooperThis manual page was autogenerated by 1887a121d3a8SEnji Cooper.An tools/build/options/makeman . 1888