1786aa69aSBen Smithurst.\" Copyright (c) 2000 2786aa69aSBen Smithurst.\" Mike W. Meyer 3786aa69aSBen Smithurst.\" 4786aa69aSBen Smithurst.\" Redistribution and use in source and binary forms, with or without 5786aa69aSBen Smithurst.\" modification, are permitted provided that the following conditions 6786aa69aSBen Smithurst.\" are met: 7786aa69aSBen Smithurst.\" 1. Redistributions of source code must retain the above copyright 8786aa69aSBen Smithurst.\" notice, this list of conditions and the following disclaimer. 9786aa69aSBen Smithurst.\" 2. Redistributions in binary form must reproduce the above copyright 10786aa69aSBen Smithurst.\" notice, this list of conditions and the following disclaimer in the 11786aa69aSBen Smithurst.\" documentation and/or other materials provided with the distribution. 12786aa69aSBen Smithurst.\" 13786aa69aSBen Smithurst.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND 14786aa69aSBen Smithurst.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15786aa69aSBen Smithurst.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16786aa69aSBen Smithurst.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE 17786aa69aSBen Smithurst.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18786aa69aSBen Smithurst.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19786aa69aSBen Smithurst.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20786aa69aSBen Smithurst.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21786aa69aSBen Smithurst.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22786aa69aSBen Smithurst.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23786aa69aSBen Smithurst.\" SUCH DAMAGE. 24786aa69aSBen Smithurst.\" 25786aa69aSBen Smithurst.\" $FreeBSD$ 26786aa69aSBen Smithurst.\" 2759be36b0SBenjamin Kaduk.Dd May 17, 2014 28786aa69aSBen Smithurst.Dt MAKE.CONF 5 29786aa69aSBen Smithurst.Os 30786aa69aSBen Smithurst.Sh NAME 31786aa69aSBen Smithurst.Nm make.conf 329c488872SRuslan Ermilov.Nd system build information 33786aa69aSBen Smithurst.Sh DESCRIPTION 34786aa69aSBen SmithurstThe file 35786aa69aSBen Smithurst.Nm 36253c3c73SYaroslav Tykhiycontains system-wide settings that will apply to every build using 37253c3c73SYaroslav Tykhiy.Xr make 1 38253c3c73SYaroslav Tykhiyand the standard 39253c3c73SYaroslav Tykhiy.Pa sys.mk 40253c3c73SYaroslav Tykhiyfile. 41253c3c73SYaroslav TykhiyThis is achieved as follows: 42253c3c73SYaroslav Tykhiy.Xr make 1 43253c3c73SYaroslav Tykhiyprocesses the system makefile 44253c3c73SYaroslav Tykhiy.Pa sys.mk 45253c3c73SYaroslav Tykhiybefore any other file by default, and 46253c3c73SYaroslav Tykhiy.Pa sys.mk 47253c3c73SYaroslav Tykhiyincludes 48253c3c73SYaroslav Tykhiy.Nm . 49253c3c73SYaroslav Tykhiy.Pp 509c488872SRuslan ErmilovThe file 51786aa69aSBen Smithurst.Nm 52253c3c73SYaroslav Tykhiyuses the standard makefile syntax. 53253c3c73SYaroslav TykhiyHowever, 54786aa69aSBen Smithurst.Nm 55253c3c73SYaroslav Tykhiyshould not specify any dependencies to 56253c3c73SYaroslav Tykhiy.Xr make 1 . 57253c3c73SYaroslav TykhiyInstead, 58253c3c73SYaroslav Tykhiy.Nm 59253c3c73SYaroslav Tykhiyis to set 60253c3c73SYaroslav Tykhiy.Xr make 1 61253c3c73SYaroslav Tykhiyvariables that control the actions of other makefiles. 62253c3c73SYaroslav Tykhiy.Pp 63253c3c73SYaroslav TykhiyThe default location of 64253c3c73SYaroslav Tykhiy.Nm 65253c3c73SYaroslav Tykhiyis 66253c3c73SYaroslav Tykhiy.Pa /etc/make.conf , 67253c3c73SYaroslav Tykhiythough an alternative location can be specified in the 68253c3c73SYaroslav Tykhiy.Xr make 1 69253c3c73SYaroslav Tykhiyvariable 70253c3c73SYaroslav Tykhiy.Va __MAKE_CONF . 71253c3c73SYaroslav TykhiyYou may need to override the location of 72253c3c73SYaroslav Tykhiy.Nm 73253c3c73SYaroslav Tykhiyif the system-wide settings are not suitable for a particular build. 74253c3c73SYaroslav TykhiyFor instance, setting 75253c3c73SYaroslav Tykhiy.Va __MAKE_CONF 76253c3c73SYaroslav Tykhiyto 77253c3c73SYaroslav Tykhiy.Pa /dev/null 78253c3c73SYaroslav Tykhiyeffectively resets all build controls to their defaults. 79253c3c73SYaroslav Tykhiy.Pp 80253c3c73SYaroslav TykhiyThe primary purpose of 81253c3c73SYaroslav Tykhiy.Nm 82253c3c73SYaroslav Tykhiyis to control the compilation of the 83253c3c73SYaroslav Tykhiy.Fx 84253c3c73SYaroslav Tykhiysources, documentation, and ported applications, 85253c3c73SYaroslav Tykhiywhich are usually found in 86786aa69aSBen Smithurst.Pa /usr/src , 87253c3c73SYaroslav Tykhiy.Pa /usr/doc , 88786aa69aSBen Smithurstand 89253c3c73SYaroslav Tykhiy.Pa /usr/ports . 90253c3c73SYaroslav TykhiyAs a rule, the system administrator creates 91253c3c73SYaroslav Tykhiy.Nm 92253c3c73SYaroslav Tykhiywhen the values of certain control variables need to be changed 93253c3c73SYaroslav Tykhiyfrom their defaults. 94786aa69aSBen Smithurst.Pp 95253c3c73SYaroslav TykhiyThe system build procedures occur in four broad areas: 96253c3c73SYaroslav Tykhiythe world, the kernel, documentation and ports. 979c488872SRuslan ErmilovVariables set in 98786aa69aSBen Smithurst.Nm 99253c3c73SYaroslav Tykhiymay be applicable in one, two, or all four of these areas. 100253c3c73SYaroslav TykhiyIn addition, control variables can be specified 101253c3c73SYaroslav Tykhiyfor a particular build via the 1029c488872SRuslan Ermilov.Fl D 103786aa69aSBen Smithurstoption of 104253c3c73SYaroslav Tykhiy.Xr make 1 105253c3c73SYaroslav Tykhiyor in 106253c3c73SYaroslav Tykhiy.Xr environ 7 . 107786aa69aSBen Smithurst.Pp 1089c488872SRuslan ErmilovThe following lists provide a name and short description for each 1099c488872SRuslan Ermilovvariable you can use during the indicated builds. 1109c488872SRuslan ErmilovThe values of 111786aa69aSBen Smithurstvariables flagged as 1129c488872SRuslan Ermilov.Vt bool 113786aa69aSBen Smithurstare ignored; the variable being 114786aa69aSBen Smithurstset at all (even to 1159c488872SRuslan Ermilov.Dq Li FALSE 116786aa69aSBen Smithurstor 1179c488872SRuslan Ermilov.Dq Li NO ) 1187f86e53dSGiorgos Keramidascauses it to 119786aa69aSBen Smithurstbe treated as if it were set. 120786aa69aSBen Smithurst.Pp 121786aa69aSBen SmithurstThe following list provides a name and short description for variables 122786aa69aSBen Smithurstthat are used for all builds, or are used by the 1239c488872SRuslan Ermilov.Pa makefiles 1249c488872SRuslan Ermilovfor things other than builds. 125786aa69aSBen Smithurst.Bl -tag -width Ar 126d911f786SMarcel Moolenaar.It Va ALWAYS_CHECK_MAKE 127d911f786SMarcel Moolenaar.Pq Vt bool 128d911f786SMarcel MoolenaarInstructs the top-level makefile in the source tree (normally 129d911f786SMarcel Moolenaar.Pa /usr/src ) 130d911f786SMarcel Moolenaarto always check if 131d911f786SMarcel Moolenaar.Xr make 1 132d911f786SMarcel Moolenaaris up-to-date. 133d911f786SMarcel MoolenaarNormally this is only done for the world and buildworld targets to handle 134d911f786SMarcel Moolenaarupgrades from older versions of 135d911f786SMarcel Moolenaar.Fx . 1369c488872SRuslan Ermilov.It Va CFLAGS 13734455342SDima Dorfman.Pq Vt str 1389c488872SRuslan ErmilovControls the compiler setting when compiling C code. 1392410103cSRuslan ErmilovOptimization levels other than 140d489ec12SDima Dorfman.Fl O 141dca80b3cSDag-Erling Smørgravand 142dca80b3cSDag-Erling Smørgrav.Fl O2 1439c488872SRuslan Ermilovare not supported. 1449c488872SRuslan Ermilov.Va BDECFLAGS 1459c488872SRuslan Ermilovis provided as a set of 146169d1075SEitan Adler.Xr cc 1 1479c488872SRuslan Ermilovsettings suggested by 148*a63d6c94SBaptiste Daroussin.An Bruce Evans Aq Mt bde@FreeBSD.org 1499c488872SRuslan Ermilovfor developing and testing changes. 150d33a962dSAlexander LangerThey can be used, if set, by: 151786aa69aSBen Smithurst.Bd -literal -offset indent 152146b8183SDima DorfmanCFLAGS+=${BDECFLAGS} 153786aa69aSBen Smithurst.Ed 154a19f1419STom Rhodes.It Va CPUTYPE 155a19f1419STom Rhodes.Pq Vt str 156a19f1419STom RhodesControls which processor should be targeted for generated 157d962d52aSRuslan Ermilovcode. 158d962d52aSRuslan ErmilovThis controls processor-specific optimizations in 159a19f1419STom Rhodescertain code (currently only OpenSSL) as well as modifying 160a19f1419STom Rhodesthe value of 161a19f1419STom Rhodes.Va CFLAGS 162a19f1419STom Rhodesand 163a19f1419STom Rhodes.Va COPTFLAGS 164a19f1419STom Rhodesto contain the appropriate optimization directive to 165169d1075SEitan Adler.Xr cc 1 . 166a19f1419STom RhodesThe automatic setting of 167a19f1419STom Rhodes.Va CFLAGS 168a19f1419STom Rhodesand 169a19f1419STom Rhodes.Va COPTFLAGS 170a19f1419STom Rhodesmay be overridden using the 171a19f1419STom Rhodes.Va NO_CPU_CFLAGS 172a19f1419STom Rhodesand 173a19f1419STom Rhodes.Va NO_CPU_COPTFLAGS 174d962d52aSRuslan Ermilovvariables, respectively. 175d962d52aSRuslan ErmilovRefer to 176a19f1419STom Rhodes.Pa /usr/share/examples/etc/make.conf 177a19f1419STom Rhodesfor a list of recognized 178a19f1419STom Rhodes.Va CPUTYPE 179a19f1419STom Rhodesoptions. 1809c488872SRuslan Ermilov.It Va CXXFLAGS 18134455342SDima Dorfman.Pq Vt str 1829c488872SRuslan ErmilovControls the compiler settings when compiling C++ code. 1839c488872SRuslan Ermilov.Va CXXFLAGS 1849c488872SRuslan Ermilovis initially set to the value of 1859c488872SRuslan Ermilov.Va CFLAGS . 1869c488872SRuslan ErmilovIf you want to 1879c488872SRuslan Ermilovadd to the 1889c488872SRuslan Ermilov.Va CXXFLAGS 1899c488872SRuslan Ermilovvalue, use 190786aa69aSBen Smithurst.Dq Li += 191786aa69aSBen Smithurstinstead of 192786aa69aSBen Smithurst.Dq Li = . 1939c488872SRuslan Ermilov.It Va INSTALL 19434455342SDima Dorfman.Pq Vt str 1959c488872SRuslan Ermilovthe default install command. 196192858e8SSheldon HearnTo install only files for which the target differs or does not exist, use 197786aa69aSBen Smithurst.Bd -literal -offset indent 198fdcb6453SBryan DreweryINSTALL+= -C 199786aa69aSBen Smithurst.Ed 200192858e8SSheldon HearnNote that some makefiles (including those in 201192858e8SSheldon Hearn.Pa /usr/share/mk ) 202192858e8SSheldon Hearnmay hardcode options for the supplied install command. 2039c488872SRuslan Ermilov.It Va LOCAL_DIRS 20434455342SDima Dorfman.Pq Vt str 2059c488872SRuslan ErmilovList any directories that should be entered when doing 206786aa69aSBen Smithurstmake's in 207786aa69aSBen Smithurst.Pa /usr/src 208786aa69aSBen Smithurstin this variable. 209a19f1419STom Rhodes.It Va MAKE_SHELL 210a19f1419STom Rhodes.Pq Vt str 211a19f1419STom RhodesControls the shell used internally by 212a19f1419STom Rhodes.Xr make 1 213a19f1419STom Rhodesto process the command scripts in makefiles. 214a19f1419STom Rhodes.Xr sh 1 , 215a19f1419STom Rhodes.Xr ksh 1 , 216a19f1419STom Rhodesand 217a19f1419STom Rhodes.Xr csh 1 218a19f1419STom Rhodesall currently supported. 219d962d52aSRuslan Ermilov.Pp 220d962d52aSRuslan Ermilov.Dl "MAKE_SHELL?=sh" 2219c488872SRuslan Ermilov.It Va MTREE_FOLLOWS_SYMLINKS 22234455342SDima Dorfman.Pq Vt str 2239c488872SRuslan ErmilovSet this to 2249c488872SRuslan Ermilov.Dq Fl L 2259c488872SRuslan Ermilovto cause 2269c488872SRuslan Ermilov.Xr mtree 8 2279c488872SRuslan Ermilovto follow symlinks. 2286614d157SJoseph Koshy.It Va NO_CPU_CFLAGS 2296614d157SJoseph Koshy.Pq Vt str 2306614d157SJoseph KoshySetting this variable will prevent CPU specific compiler flags 2316614d157SJoseph Koshyfrom being automatically added to 2326614d157SJoseph Koshy.Va CFLAGS 2336614d157SJoseph Koshyduring compile time. 2346614d157SJoseph Koshy.It Va NO_CPU_COPTFLAGS 2356614d157SJoseph Koshy.Pq Vt str 2366614d157SJoseph KoshySetting this variable will prevent CPU specific compiler flags 2376614d157SJoseph Koshyfrom being automatically added to 2386614d157SJoseph Koshy.Va COPTFLAGS 2396614d157SJoseph Koshyduring compile time. 2409c488872SRuslan Ermilov.It Va NO_DOCUPDATE 24134455342SDima Dorfman.Pq Vt bool 2429c488872SRuslan ErmilovSet this to not update the doc tree during 2439c488872SRuslan Ermilov.Dq Li "make update" . 2449c488872SRuslan Ermilov.It Va NO_PORTSUPDATE 24534455342SDima Dorfman.Pq Vt bool 2469c488872SRuslan ErmilovSet this to not update the ports tree during 2479c488872SRuslan Ermilov.Dq Li "make update" . 24869c488cdSRuslan Ermilov.It Va SVN_UPDATE 24969c488cdSRuslan Ermilov.Pq Vt bool 25069c488cdSRuslan ErmilovSet this to use 25169c488cdSRuslan Ermilov.Xr svn 1 25269c488cdSRuslan Ermilovto update your 25369c488cdSRuslan Ermilov.Pa src 25469c488cdSRuslan Ermilovtree with 2556614d157SJoseph Koshy.Dq Li "make update" . 2560445deadSGlen BarberNote that since a subversion client is not included in the base system, 2570445deadSGlen Barberyou will need to set 2580445deadSGlen Barber.Va SVN 2590445deadSGlen Barberto the full path of a 2600445deadSGlen Barber.Xr svn 1 2610445deadSGlen Barberbinary. 262786aa69aSBen Smithurst.El 263addbe0bcSJoseph Koshy.Ss "BUILDING THE KERNEL" 264786aa69aSBen SmithurstThe following list provides a name and short description for variables 265786aa69aSBen Smithurstthat are only used doing a kernel build: 266786aa69aSBen Smithurst.Bl -tag -width Ar 2679c488872SRuslan Ermilov.It Va BOOTWAIT 26834455342SDima Dorfman.Pq Vt int 2699c488872SRuslan ErmilovControls the amount of time the kernel waits for a console keypress 2709c488872SRuslan Ermilovbefore booting the default kernel. 2719c488872SRuslan ErmilovThe value is approximately milliseconds. 2729c488872SRuslan ErmilovKeypresses are accepted by the BIOS before booting from disk, 273786aa69aSBen Smithurstmaking it possible to give custom boot parameters even when this is 274786aa69aSBen Smithurstset to 0. 2759c488872SRuslan Ermilov.It Va COPTFLAGS 27634455342SDima Dorfman.Pq Vt str 2779c488872SRuslan ErmilovControls the compiler settings when building the 2789c488872SRuslan Ermilovkernel. 2799c488872SRuslan ErmilovOptimization levels above 2809c488872SRuslan Ermilov.Oo Fl O ( O2 , No ...\& ) Oc 281d5499896SDavid E. O'Brienare not guaranteed to work. 282061cae1bSJordan K. Hubbard.It Va KERNCONF 28334455342SDima Dorfman.Pq Vt str 2849c488872SRuslan ErmilovControls which kernel configurations will be 2856164dd81SBen Smithurstbuilt by 2869c488872SRuslan Ermilov.Dq Li "${MAKE} buildkernel" 2876164dd81SBen Smithurstand installed by 2889c488872SRuslan Ermilov.Dq Li "${MAKE} installkernel" . 2896164dd81SBen SmithurstFor example, 2906164dd81SBen Smithurst.Bd -literal -offset indent 291e52710beSDima DorfmanKERNCONF=MINE DEBUG GENERIC OTHERMACHINE 2926164dd81SBen Smithurst.Ed 2939c488872SRuslan Ermilov.Pp 294a910f192SDima Dorfmanwill build the kernels specified by the config files 2956164dd81SBen Smithurst.Pa MINE , DEBUG , GENERIC , 2966164dd81SBen Smithurstand 2976164dd81SBen Smithurst.Pa OTHERMACHINE , 2986164dd81SBen Smithurstand install the kernel specified by the config file 2996164dd81SBen Smithurst.Pa MINE . 3006164dd81SBen SmithurstIt defaults to 3016164dd81SBen Smithurst.Pa GENERIC . 302a19f1419STom Rhodes.It Va MODULES_OVERRIDE 303a19f1419STom Rhodes.Pq Vt str 304a19f1419STom RhodesSet to a list of modules to build instead of all of them. 3056d50d5e4SWarner Losh.It Va NO_KERNELCLEAN 3066d50d5e4SWarner Losh.Pq Vt bool 3076d50d5e4SWarner LoshSet this to skip running 3086d50d5e4SWarner Losh.Dq Li "${MAKE} clean" 3096d50d5e4SWarner Loshduring 3106d50d5e4SWarner Losh.Dq Li "${MAKE} buildkernel" . 3119c488872SRuslan Ermilov.It Va NO_KERNELCONFIG 31234455342SDima Dorfman.Pq Vt bool 3139c488872SRuslan ErmilovSet this to skip running 314786aa69aSBen Smithurst.Xr config 8 315786aa69aSBen Smithurstduring 3169c488872SRuslan Ermilov.Dq Li "${MAKE} buildkernel" . 3179c488872SRuslan Ermilov.It Va NO_KERNELDEPEND 31834455342SDima Dorfman.Pq Vt bool 3199c488872SRuslan ErmilovSet this to skip running 3209c488872SRuslan Ermilov.Dq Li "${MAKE} depend" 321786aa69aSBen Smithurstduring 3229c488872SRuslan Ermilov.Dq Li "${MAKE} buildkernel" . 3236d50d5e4SWarner Losh.It Va NO_KERNELOBJ 3246d50d5e4SWarner Losh.Pq Vt bool 3256d50d5e4SWarner LoshSet this to skip running 3266d50d5e4SWarner Losh.Dq Li "${MAKE} obj" 3276d50d5e4SWarner Loshduring 3286d50d5e4SWarner Losh.Dq Li "${MAKE} buildkernel" . 3299c488872SRuslan Ermilov.It Va NO_MODULES 33034455342SDima Dorfman.Pq Vt bool 3319c488872SRuslan ErmilovSet to not build modules with the kernel. 3326614d157SJoseph Koshy.It Va PORTS_MODULES 3336614d157SJoseph KoshySet this to the list of ports you wish to rebuild every time the kernel 3346614d157SJoseph Koshyis built. 3356614d157SJoseph Koshy.It Va WITHOUT_MODULES 3366614d157SJoseph Koshy.Pq Vt str 3376614d157SJoseph KoshySet to a list of modules to exclude from the build. 3386614d157SJoseph KoshyThis provides a 3396614d157SJoseph Koshysomewhat easier way to exclude modules you are certain you will never 3406614d157SJoseph Koshyneed than specifying 3416614d157SJoseph Koshy.Va MODULES_OVERRIDE . 3426614d157SJoseph KoshyThis is applied 3436614d157SJoseph Koshy.Em after 3446614d157SJoseph Koshy.Va MODULES_OVERRIDE . 345786aa69aSBen Smithurst.El 346addbe0bcSJoseph Koshy.Ss "BUILDING THE WORLD" 347786aa69aSBen SmithurstThe following list provides a name and short description for variables 348786aa69aSBen Smithurstthat are used during the world build: 349786aa69aSBen Smithurst.Bl -tag -width Ar 35026acbcd1SRuslan Ermilov.It Va BOOT_COMCONSOLE_PORT 35126acbcd1SRuslan Ermilov.Pq Vt str 35226acbcd1SRuslan ErmilovThe port address to use for the console if the boot blocks have 35326acbcd1SRuslan Ermilovbeen configured to use a serial console instead of the keyboard/video card. 35426acbcd1SRuslan Ermilov.It Va BOOT_COMCONSOLE_SPEED 35526acbcd1SRuslan Ermilov.Pq Vt int 35626acbcd1SRuslan ErmilovThe baud rate to use for the console if the boot blocks have 35726acbcd1SRuslan Ermilovbeen configured to use a serial console instead of the keyboard/video card. 35826acbcd1SRuslan Ermilov.It Va BOOT_PXELDR_ALWAYS_SERIAL 35926acbcd1SRuslan Ermilov.Pq Vt bool 36026acbcd1SRuslan ErmilovCompile in the code into 36126acbcd1SRuslan Ermilov.Xr pxeboot 8 36226acbcd1SRuslan Ermilovthat forces the use of a serial console. 36326acbcd1SRuslan ErmilovThis is analogous to the 36426acbcd1SRuslan Ermilov.Fl h 36526acbcd1SRuslan Ermilovoption in 36626acbcd1SRuslan Ermilov.Xr boot 8 36726acbcd1SRuslan Ermilovblocks. 36826acbcd1SRuslan Ermilov.It Va BOOT_PXELDR_PROBE_KEYBOARD 36926acbcd1SRuslan Ermilov.Pq Vt bool 37026acbcd1SRuslan ErmilovCompile in the code into 37126acbcd1SRuslan Ermilov.Xr pxeboot 8 37226acbcd1SRuslan Ermilovthat probes the keyboard. 37326acbcd1SRuslan ErmilovIf no keyboard is found, boot with the dual console configuration. 37426acbcd1SRuslan ErmilovThis is analogous to the 37526acbcd1SRuslan Ermilov.Fl D 37626acbcd1SRuslan Ermilovoption in 37726acbcd1SRuslan Ermilov.Xr boot 8 37826acbcd1SRuslan Ermilovblocks. 37995ba4330SJacques Vidrine.It Va ENABLE_SUID_K5SU 38095ba4330SJacques Vidrine.Pq Vt bool 381aab6741fSMark MurraySet this if you wish to use the ksu utility. 382dca8ad69SRuslan ErmilovOtherwise, it will be 38395ba4330SJacques Vidrineinstalled without the set-user-ID bit set. 3847cc8320aSTim J. Robbins.It Va ENABLE_SUID_NEWGRP 3857cc8320aSTim J. Robbins.Pq Vt bool 3867cc8320aSTim J. RobbinsSet this to install 3877cc8320aSTim J. Robbins.Xr newgrp 1 3887cc8320aSTim J. Robbinswith the set-user-ID bit set. 3897cc8320aSTim J. RobbinsOtherwise, 3907cc8320aSTim J. Robbins.Xr newgrp 1 3917cc8320aSTim J. Robbinswill not be able to change users' groups. 39226acbcd1SRuslan Ermilov.It Va LOADER_TFTP_SUPPORT 39326acbcd1SRuslan Ermilov.Pq Vt bool 39426acbcd1SRuslan ErmilovBy default the 39526acbcd1SRuslan Ermilov.Xr pxeboot 8 39626acbcd1SRuslan Ermilovloader retrieves the kernel via NFS. 39726acbcd1SRuslan ErmilovDefining this and recompiling 39826acbcd1SRuslan Ermilov.Pa /usr/src/sys/boot 39926acbcd1SRuslan Ermilovwill cause it to retrieve the kernel via TFTP. 40026acbcd1SRuslan ErmilovThis allows 40126acbcd1SRuslan Ermilov.Xr pxeboot 8 40226acbcd1SRuslan Ermilovto load a custom BOOTP diskless kernel yet 40326acbcd1SRuslan Ermilovstill mount the server's 40426acbcd1SRuslan Ermilov.Pa / 40526acbcd1SRuslan Ermilovrather than load the server's kernel. 40689c1ee78SHidetoshi Shimokawa.It Va LOADER_FIREWIRE_SUPPORT 40789c1ee78SHidetoshi Shimokawa.Pq Vt bool 40889c1ee78SHidetoshi ShimokawaDefining this and recompiling 40989c1ee78SHidetoshi Shimokawa.Pa /usr/src/sys/boot/i386 41089c1ee78SHidetoshi Shimokawawill add 41189c1ee78SHidetoshi Shimokawa.Xr dcons 4 41289c1ee78SHidetoshi Shimokawaconsole driver to 41389c1ee78SHidetoshi Shimokawa.Xr loader 8 41489c1ee78SHidetoshi Shimokawaand allow access over FireWire(IEEE1394) using 41589c1ee78SHidetoshi Shimokawa.Xr dconschat 8 . 41689c1ee78SHidetoshi ShimokawaCurrently, only i386 and amd64 are supported. 417fcae0ffdSMaxim Konovalov.It Va MALLOC_PRODUCTION 418fcae0ffdSMaxim Konovalov.Pq Vt bool 419fcae0ffdSMaxim KonovalovSet this to disable assertions and statistics gathering in 420fcae0ffdSMaxim Konovalov.Xr malloc 3 . 421fcae0ffdSMaxim KonovalovIt also defaults the A and J runtime options to off. 422fcae0ffdSMaxim KonovalovDisabled by default on -CURRENT. 4239c488872SRuslan Ermilov.It Va MODULES_WITH_WORLD 42434455342SDima Dorfman.Pq Vt bool 4259c488872SRuslan ErmilovSet to build modules with the system instead of the kernel. 4266614d157SJoseph Koshy.It Va NO_CLEAN 4276614d157SJoseph Koshy.Pq Vt bool 4286614d157SJoseph KoshySet this to disable cleaning during 4296614d157SJoseph Koshy.Dq Li "make buildworld" . 4306614d157SJoseph KoshyThis should not be set unless you know what you are doing. 4316614d157SJoseph Koshy.It Va NO_CLEANDIR 4326614d157SJoseph Koshy.Pq Vt bool 4336614d157SJoseph KoshySet this to run 4346614d157SJoseph Koshy.Dq Li "${MAKE} clean" 4356614d157SJoseph Koshyinstead of 4366614d157SJoseph Koshy.Dq Li "${MAKE} cleandir" . 4370abe2561SWarner Losh.It Va WITH_MANCOMPRESS 4380abe2561SWarner Losh.Pq Vt defined 4390abe2561SWarner LoshSet to install manual pages compressed. 4400abe2561SWarner Losh.It Va WITHOUT_MANCOMPRESS 4410abe2561SWarner Losh.Pq Vt defined 4426614d157SJoseph KoshySet to install manual pages uncompressed. 4436614d157SJoseph Koshy.It Va NO_SHARE 4446614d157SJoseph Koshy.Pq Vt bool 4456614d157SJoseph KoshySet to not build in the 4466614d157SJoseph Koshy.Pa share 4476614d157SJoseph Koshysubdir. 4486614d157SJoseph Koshy.It Va NO_SHARED 4496614d157SJoseph Koshy.Pq Vt bool 450d54a903aSChristian BruefferSet to build 4516614d157SJoseph Koshy.Pa /bin 4526614d157SJoseph Koshyand 4536614d157SJoseph Koshy.Pa /sbin 4546614d157SJoseph Koshystatically linked, this can be bad. 4556614d157SJoseph KoshyIf set, every utility that uses 4566614d157SJoseph Koshy.Pa bsd.prog.mk 4576614d157SJoseph Koshywill be linked statically. 458dd991de0SRuslan Ermilov.It Va PPP_NO_NAT 459dd991de0SRuslan Ermilov.Pq Vt bool 460dd991de0SRuslan ErmilovBuild 461dd991de0SRuslan Ermilov.Xr ppp 8 462dd991de0SRuslan Ermilovwithout support for network address translation (NAT). 463dd991de0SRuslan Ermilov.It Va PPP_NO_NETGRAPH 464368e43f7STom Rhodes.Pq Vt bool 465368e43f7STom RhodesSet to build 466368e43f7STom Rhodes.Xr ppp 8 467dd991de0SRuslan Ermilovwithout support for Netgraph. 468dd991de0SRuslan Ermilov.It Va PPP_NO_RADIUS 469dd991de0SRuslan Ermilov.Pq Vt bool 470368e43f7STom RhodesSet to build 471368e43f7STom Rhodes.Xr ppp 8 472dd991de0SRuslan Ermilovwithout support for RADIUS. 473dd991de0SRuslan Ermilov.It Va PPP_NO_SUID 47434455342SDima Dorfman.Pq Vt bool 4759c488872SRuslan ErmilovSet to disable the installation of 4769c488872SRuslan Ermilov.Xr ppp 8 477dd991de0SRuslan Ermilovas a set-user-ID root program. 4786614d157SJoseph Koshy.It Va SENDMAIL_ADDITIONAL_MC 4796614d157SJoseph Koshy.Pq Vt str 4806614d157SJoseph KoshyAdditional 4816614d157SJoseph Koshy.Pa .mc 4826614d157SJoseph Koshyfiles which should be built into 4836614d157SJoseph Koshy.Pa .cf 4846614d157SJoseph Koshyfiles at build time. 4856614d157SJoseph KoshyThe value should include the full path to the 4866614d157SJoseph Koshy.Pa .mc 4876614d157SJoseph Koshyfile(s), e.g., 4887b1d17a1SGlen Barber.Pa /etc/mail/foo.mc , 4896614d157SJoseph Koshy.Pa /etc/mail/bar.mc . 490f3cb22fcSGregory Neil Shapiro.It Va SENDMAIL_ALIASES 491f3cb22fcSGregory Neil Shapiro.Pq Vt str 492f3cb22fcSGregory Neil ShapiroList of 493f3cb22fcSGregory Neil Shapiro.Xr aliases 5 494f3cb22fcSGregory Neil Shapirofiles to rebuild when using 495f3cb22fcSGregory Neil Shapiro.Pa /etc/mail/Makefile . 496f3cb22fcSGregory Neil ShapiroThe default value is 497f3cb22fcSGregory Neil Shapiro.Pa /etc/mail/aliases . 4986614d157SJoseph Koshy.It Va SENDMAIL_CFLAGS 4996614d157SJoseph Koshy.Pq Vt str 5006614d157SJoseph KoshyFlags to pass to the compile command when building 5016614d157SJoseph Koshy.Xr sendmail 8 . 5026614d157SJoseph KoshyThe 5036614d157SJoseph Koshy.Va SENDMAIL_* 5046614d157SJoseph Koshyflags can be used to provide SASL support with setting such as: 5056614d157SJoseph Koshy.Bd -literal -offset indent 5066614d157SJoseph KoshySENDMAIL_CFLAGS=-I/usr/local/include -DSASL 5076614d157SJoseph KoshySENDMAIL_LDFLAGS=-L/usr/local/lib 5086614d157SJoseph KoshySENDMAIL_LDADD=-lsasl 5096614d157SJoseph Koshy.Ed 5106614d157SJoseph Koshy.It Va SENDMAIL_CF_DIR 5116614d157SJoseph Koshy.Pq Vt str 5126614d157SJoseph KoshyOverride the default location for the 5136614d157SJoseph Koshy.Xr m4 1 5146614d157SJoseph Koshyconfiguration files used to build a 5156614d157SJoseph Koshy.Pa .cf 5166614d157SJoseph Koshyfile from a 5176614d157SJoseph Koshy.Pa .mc 5186614d157SJoseph Koshyfile. 5196614d157SJoseph Koshy.It Va SENDMAIL_DPADD 5206614d157SJoseph Koshy.Pq Vt str 5216614d157SJoseph KoshyExtra dependencies to add when building 5226614d157SJoseph Koshy.Xr sendmail 8 . 5236614d157SJoseph Koshy.It Va SENDMAIL_LDADD 5246614d157SJoseph Koshy.Pq Vt str 5256614d157SJoseph KoshyFlags to add to the end of the 5266614d157SJoseph Koshy.Xr ld 1 5276614d157SJoseph Koshycommand when building 5286614d157SJoseph Koshy.Xr sendmail 8 . 5296614d157SJoseph Koshy.It Va SENDMAIL_LDFLAGS 5306614d157SJoseph Koshy.Pq Vt str 5316614d157SJoseph KoshyFlags to pass to the 5326614d157SJoseph Koshy.Xr ld 1 5336614d157SJoseph Koshycommand when building 5346614d157SJoseph Koshy.Xr sendmail 8 . 5356614d157SJoseph Koshy.It Va SENDMAIL_M4_FLAGS 5366614d157SJoseph Koshy.Pq Vt str 5376614d157SJoseph KoshyFlags passed to 5386614d157SJoseph Koshy.Xr m4 1 5396614d157SJoseph Koshywhen building a 5406614d157SJoseph Koshy.Pa .cf 5416614d157SJoseph Koshyfile from a 5426614d157SJoseph Koshy.Pa .mc 5436614d157SJoseph Koshyfile. 5446614d157SJoseph Koshy.It Va SENDMAIL_MAP_PERMS 5456614d157SJoseph Koshy.Pq Vt str 5466614d157SJoseph KoshyMode to use when generating alias and map database files using 5476614d157SJoseph Koshy.Pa /etc/mail/Makefile . 5486614d157SJoseph KoshyThe default value is 0640. 549f3cb22fcSGregory Neil Shapiro.It Va SENDMAIL_MAP_SRC 550f3cb22fcSGregory Neil Shapiro.Pq Vt str 551f3cb22fcSGregory Neil ShapiroAdditional maps to rebuild when using 552f3cb22fcSGregory Neil Shapiro.Pa /etc/mail/Makefile . 553f3cb22fcSGregory Neil ShapiroThe 554f3cb22fcSGregory Neil Shapiro.Pa access , 555f3cb22fcSGregory Neil Shapiro.Pa bitdomain , 556f3cb22fcSGregory Neil Shapiro.Pa domaintable , 557f3cb22fcSGregory Neil Shapiro.Pa genericstable , 558f3cb22fcSGregory Neil Shapiro.Pa mailertable , 559f3cb22fcSGregory Neil Shapiro.Pa uucpdomain , 560f3cb22fcSGregory Neil Shapiroand 561f3cb22fcSGregory Neil Shapiro.Pa virtusertable 562f3cb22fcSGregory Neil Shapiromaps are always rebuilt if they exist. 563f3cb22fcSGregory Neil Shapiro.It Va SENDMAIL_MAP_TYPE 564f3cb22fcSGregory Neil Shapiro.Pq Vt str 565f3cb22fcSGregory Neil ShapiroDatabase map type to use when generating map database files using 566f3cb22fcSGregory Neil Shapiro.Pa /etc/mail/Makefile . 567f3cb22fcSGregory Neil ShapiroThe default value is hash. 568f3cb22fcSGregory Neil ShapiroThe alternative is btree. 56925219d25SGregory Neil Shapiro.It Va SENDMAIL_MC 57034455342SDima Dorfman.Pq Vt str 571bf7f20c2SRuslan ErmilovThe default 572bf7f20c2SRuslan Ermilov.Xr m4 1 573bf7f20c2SRuslan Ermilovconfiguration file to use at install time. 57401f72632SRuslan ErmilovThe value should include the full path to the 57501f72632SRuslan Ermilov.Pa .mc 57601f72632SRuslan Ermilovfile, e.g., 577d1885c41SGregory Neil Shapiro.Pa /etc/mail/myconfig.mc . 57825219d25SGregory Neil ShapiroUse with caution as a make install will overwrite any existing 57925219d25SGregory Neil Shapiro.Pa /etc/mail/sendmail.cf . 58025219d25SGregory Neil ShapiroNote that 58125219d25SGregory Neil Shapiro.Va SENDMAIL_CF 58225219d25SGregory Neil Shapirois now deprecated. 5836614d157SJoseph Koshy.It Va SENDMAIL_SET_USER_ID 5846614d157SJoseph Koshy.Pq Vt bool 5856614d157SJoseph KoshyIf set, install 5866614d157SJoseph Koshy.Xr sendmail 8 5876614d157SJoseph Koshyas a set-user-ID root binary instead of a set-group-ID binary 5886614d157SJoseph Koshyand do not install 5896614d157SJoseph Koshy.Pa /etc/mail/submit.{cf,mc} . 5906614d157SJoseph KoshyUse of this flag is not recommended and the alternative advice in 5916614d157SJoseph Koshy.Pa /etc/mail/README 5926614d157SJoseph Koshyshould be followed instead if at all possible. 593f3cb22fcSGregory Neil Shapiro.It Va SENDMAIL_START_SCRIPT 594f3cb22fcSGregory Neil Shapiro.Pq Vt str 595f3cb22fcSGregory Neil ShapiroThe script used by 596f3cb22fcSGregory Neil Shapiro.Pa /etc/mail/Makefile 597f3cb22fcSGregory Neil Shapiroto start, stop, and restart 598f3cb22fcSGregory Neil Shapiro.Xr sendmail 8 . 599f3cb22fcSGregory Neil ShapiroThe default value is 600f3cb22fcSGregory Neil Shapiro.Pa /etc/rc.sendmail . 601f3cb22fcSGregory Neil ShapiroThis value should match the 602f3cb22fcSGregory Neil Shapiro.Dq Li mta_start_script 603f3cb22fcSGregory Neil Shapirosetting in 604f3cb22fcSGregory Neil Shapiro.Xr rc.conf 5 . 60514d6d765SGregory Neil Shapiro.It Va SENDMAIL_SUBMIT_MC 60614d6d765SGregory Neil Shapiro.Pq Vt str 607bf7f20c2SRuslan ErmilovThe default 608bf7f20c2SRuslan Ermilov.Xr m4 1 609bf7f20c2SRuslan Ermilovconfiguration file for mail submission 61014d6d765SGregory Neil Shapiroto use at install time. 61114d6d765SGregory Neil ShapiroThe value should include the full path to the 61214d6d765SGregory Neil Shapiro.Pa .mc 61314d6d765SGregory Neil Shapirofile, e.g., 61414d6d765SGregory Neil Shapiro.Pa /etc/mail/mysubmit.mc . 61514d6d765SGregory Neil ShapiroUse with caution as a make install will overwrite any existing 61614d6d765SGregory Neil Shapiro.Pa /etc/mail/submit.cf . 617a19f1419STom Rhodes.It Va TOP_TABLE_SIZE 618a19f1419STom Rhodes.Pq Vt int 619a19f1419STom Rhodes.Xr top 1 620d962d52aSRuslan Ermilovuses a hash table for the user names. 621d962d52aSRuslan ErmilovThe size of this hash can be tuned to match the number of local users. 622d962d52aSRuslan ErmilovThe table size should be a prime number 623a19f1419STom Rhodesapproximately twice as large as the number of lines in 624a19f1419STom Rhodes.Pa /etc/passwd . 625a19f1419STom RhodesThe default number is 20011. 626d5499896SDavid E. O'Brien.It Va WANT_FORCE_OPTIMIZATION_DOWNGRADE 627d5499896SDavid E. O'Brien.Pq Vt int 628d5499896SDavid E. O'BrienCauses the system compiler to be built such that it forces high optimization 629d5499896SDavid E. O'Brienlevels to a lower one. 630169d1075SEitan Adler.Xr cc 1 63130b39270SRuslan Ermilov.Fl O2 63230b39270SRuslan Ermilovand above is known to trigger known optimizer bugs at various 63354711151SWilko Bultetimes. 634d5499896SDavid E. O'BrienThe value assigned is the highest optimization value used. 635786aa69aSBen Smithurst.El 636addbe0bcSJoseph Koshy.Ss "BUILDING DOCUMENTATION" 637786aa69aSBen SmithurstThe following list provides a name and short description for variables 638786aa69aSBen Smithurstthat are used when building documentation. 639addbe0bcSJoseph Koshy.Bl -tag -width ".Va PRINTERDEVICE" 6409c488872SRuslan Ermilov.It Va DISTDIR 64134455342SDima Dorfman.Pq Vt str 6429c488872SRuslan ErmilovWhere distfiles are kept. 6439c488872SRuslan ErmilovNormally, this is 644786aa69aSBen Smithurst.Pa distfiles 645786aa69aSBen Smithurstin 6469c488872SRuslan Ermilov.Va PORTSDIR . 6479c488872SRuslan Ermilov.It Va DOC_LANG 64834455342SDima Dorfman.Pq Vt str 6499c488872SRuslan ErmilovThe list of languages and encodings to build and install. 6509c488872SRuslan Ermilov.It Va PRINTERDEVICE 65134455342SDima Dorfman.Pq Vt str 6529c488872SRuslan ErmilovThe default format for system documentation, depends on your 6539c488872SRuslan Ermilovprinter. 6549c488872SRuslan ErmilovThis can be set to 655786aa69aSBen Smithurst.Dq Li ascii 656e5f3fe8cSRuslan Ermilovfor simple printers, or 657786aa69aSBen Smithurst.Dq Li ps 658786aa69aSBen Smithurstfor postscript or graphics printers with a ghostscript 659e5f3fe8cSRuslan Ermilovfilter, or both. 660786aa69aSBen Smithurst.El 66159be36b0SBenjamin Kaduk.Ss "BUILDING PORTS" 66259be36b0SBenjamin KadukSeveral make variables can be set that affect the building of ports. 66359be36b0SBenjamin KadukThese variables and their effects are documented in 66459be36b0SBenjamin Kaduk.Xr ports 7 , 66559be36b0SBenjamin Kaduk.Pa ${PORTSDIR}/Mk/* 66659be36b0SBenjamin Kadukand the 66759be36b0SBenjamin Kaduk.Fx 66859be36b0SBenjamin KadukPorter's Handbook. 669786aa69aSBen Smithurst.Sh FILES 6701ca805f2SRuslan Ermilov.Bl -tag -width ".Pa /usr/share/examples/etc/make.conf" -compact 671786aa69aSBen Smithurst.It Pa /etc/make.conf 672786aa69aSBen Smithurst.It Pa /usr/doc/Makefile 67369c488cdSRuslan Ermilov.It Pa /usr/ports/Makefile 6741ca805f2SRuslan Ermilov.It Pa /usr/share/examples/etc/make.conf 675253c3c73SYaroslav Tykhiy.It Pa /usr/share/mk/sys.mk 676786aa69aSBen Smithurst.It Pa /usr/src/Makefile 677786aa69aSBen Smithurst.It Pa /usr/src/Makefile.inc1 6783136363fSRuslan Ermilov.El 679786aa69aSBen Smithurst.Sh SEE ALSO 680169d1075SEitan Adler.Xr cc 1 , 681786aa69aSBen Smithurst.Xr install 1 , 682786aa69aSBen Smithurst.Xr make 1 , 683862aa05fSRuslan Ermilov.Xr src.conf 5 , 684253c3c73SYaroslav Tykhiy.Xr environ 7 , 685786aa69aSBen Smithurst.Xr ports 7 , 686862aa05fSRuslan Ermilov.Xr sendmail 8 687786aa69aSBen Smithurst.Sh HISTORY 688786aa69aSBen SmithurstThe 689786aa69aSBen Smithurst.Nm 690786aa69aSBen Smithurstfile appeared sometime before 691786aa69aSBen Smithurst.Fx 4.0 . 692786aa69aSBen Smithurst.Sh AUTHORS 6939c488872SRuslan ErmilovThis 6949c488872SRuslan Ermilovmanual page was written by 695*a63d6c94SBaptiste Daroussin.An Mike W. Meyer Aq Mt mwm@mired.org . 6962f29b444SHartmut Brandt.Sh CAVEATS 6972f29b444SHartmut BrandtNote, that 6982f29b444SHartmut Brandt.Ev MAKEOBJDIRPREFIX 6992f29b444SHartmut Brandtand 7002f29b444SHartmut Brandt.Ev MAKEOBJDIR 7012f29b444SHartmut Brandtare environment variables and should not be set in 7022f29b444SHartmut Brandt.Nm 703c16bac23SGlen Barberor as command line arguments to 704c16bac23SGlen Barber.Xr make 1 , 7052f29b444SHartmut Brandtbut in make's environment. 7060afc94c1SUlrich Spörlein.Sh BUGS 7070afc94c1SUlrich SpörleinThis manual page may occasionally be out of date with respect to 7080afc94c1SUlrich Spörleinthe options currently available for use in 7090afc94c1SUlrich Spörlein.Nm . 7100afc94c1SUlrich SpörleinPlease check the 7110afc94c1SUlrich Spörlein.Pa /usr/share/examples/etc/make.conf 7120afc94c1SUlrich Spörleinfile for the latest options which are available. 713