xref: /freebsd/share/man/man5/make.conf.5 (revision a63d6c943d3e2e14007b20edc4446d8396f3ef0b)
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