Wed Jun 14 01:16:28 2023 UTC ()
Cite src/sys/rump/README.compileopts as a reference for MKRUMP.


(rin)
diff -r1.103 -r1.104 src/share/man/man5/mk.conf.5

cvs diff -r1.103 -r1.104 src/share/man/man5/mk.conf.5 (switch to unified diff)

--- src/share/man/man5/mk.conf.5 2023/06/11 20:33:46 1.103
+++ src/share/man/man5/mk.conf.5 2023/06/14 01:16:28 1.104
@@ -1,1768 +1,1780 @@ @@ -1,1768 +1,1780 @@
1.\" $NetBSD: mk.conf.5,v 1.103 2023/06/11 20:33:46 lukem Exp $ 1.\" $NetBSD: mk.conf.5,v 1.104 2023/06/14 01:16:28 rin Exp $
2.\" 2.\"
3.\" Copyright (c) 1999-2023 The NetBSD Foundation, Inc. 3.\" Copyright (c) 1999-2023 The NetBSD Foundation, Inc.
4.\" All rights reserved. 4.\" All rights reserved.
5.\" 5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation 6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Luke Mewburn. 7.\" by Luke Mewburn.
8.\" 8.\"
9.\" Redistribution and use in source and binary forms, with or without 9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions 10.\" modification, are permitted provided that the following conditions
11.\" are met: 11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright 12.\" 1. Redistributions of source code must retain the above copyright
13.\" notice, this list of conditions and the following disclaimer. 13.\" notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright 14.\" 2. Redistributions in binary form must reproduce the above copyright
15.\" notice, this list of conditions and the following disclaimer in the 15.\" notice, this list of conditions and the following disclaimer in the
16.\" documentation and/or other materials provided with the distribution. 16.\" documentation and/or other materials provided with the distribution.
17.\" 17.\"
18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 21.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE. 28.\" POSSIBILITY OF SUCH DAMAGE.
29.\" 29.\"
30.Dd June 11, 2023 30.Dd June 14, 2023
31.Dt MK.CONF 5 31.Dt MK.CONF 5
32.Os 32.Os
33.\" turn off hyphenation 33.\" turn off hyphenation
34.hym 999 34.hym 999
35. 35.
36.Sh NAME 36.Sh NAME
37.Nm mk.conf 37.Nm mk.conf
38.Nd make configuration file 38.Nd make configuration file
39. 39.
40.Sh DESCRIPTION 40.Sh DESCRIPTION
41The 41The
42.Nm 42.Nm
43file overrides various parameters used during the build of the system. 43file overrides various parameters used during the build of the system.
44. 44.
45.Sh NETBSD SYSTEM VARIABLES 45.Sh NETBSD SYSTEM VARIABLES
46. 46.
47Listed below are the 47Listed below are the
48.Nm 48.Nm
49variables that may be set that affect the 49variables that may be set that affect the
50.Nx NetBSD 50.Nx NetBSD
51system build, 51system build,
52the values to which each may be set, 52the values to which each may be set,
53a brief description of what each variable does, 53a brief description of what each variable does,
54references to relevant manual pages, 54references to relevant manual pages,
55notes (including any interaction with 55notes (including any interaction with
56.Sy build.sh ) , 56.Sy build.sh ) ,
57and the default value of each variable. 57and the default value of each variable.
58. 58.
59.de DFLT 59.de DFLT
60.Pp 60.Pp
61.Em Default : 61.Em Default :
62.. 62..
63.de DFLTn 63.de DFLTn
64.DFLT 64.DFLT
65.Dq no . 65.Dq no .
66.. 66..
67.de DFLTu 67.de DFLTu
68.DFLT 68.DFLT
69Unset. 69Unset.
70.. 70..
71.de DFLTy 71.de DFLTy
72.DFLT 72.DFLT
73.Dq yes . 73.Dq yes .
74.. 74..
75.de NODEF 75.de NODEF
76.Pp 76.Pp
77Forced to 77Forced to
78.Dq no 78.Dq no
79if 79if
80.Sy \\$* 80.Sy \\$*
81is defined, 81is defined,
82usually in the Makefile before any 82usually in the Makefile before any
83.Xr make 1 83.Xr make 1
84.Cm \&.include 84.Cm \&.include
85directives. 85directives.
86.. 86..
87.de NOVAR 87.de NOVAR
88.Pp 88.Pp
89Forced to 89Forced to
90.Dq no 90.Dq no
91if 91if
92.Sy \\$* . 92.Sy \\$* .
93.. 93..
94.de YorN 94.de YorN
95Can be set to 95Can be set to
96.Dq yes 96.Dq yes
97or 97or
98.Dq no . 98.Dq no .
99.. 99..
100. 100.
101.Bl -tag -width 14n 101.Bl -tag -width 14n
102. 102.
103.\" These entries are sorted alphabetically. 103.\" These entries are sorted alphabetically.
104. 104.
105.It Sy BSDOBJDIR 105.It Sy BSDOBJDIR
106The real path to the object directory tree for the 106The real path to the object directory tree for the
107.Nx 107.Nx
108source tree. 108source tree.
109.DFLT 109.DFLT
110.Dq Pa /usr/obj . 110.Dq Pa /usr/obj .
111. 111.
112.It Sy BSDSRCDIR 112.It Sy BSDSRCDIR
113The real path to the 113The real path to the
114.Nx 114.Nx
115source tree, if 115source tree, if
116.Sy NETBSDSRCDIR 116.Sy NETBSDSRCDIR
117isn't defined. 117isn't defined.
118.DFLT 118.DFLT
119.Dq Pa /usr/src . 119.Dq Pa /usr/src .
120. 120.
121.It Sy BUILD 121.It Sy BUILD
122If defined, 122If defined,
123.Sq "make install" 123.Sq "make install"
124checks that the 124checks that the
125.Xr make 1 125.Xr make 1
126targets in the source directories are up-to-date and 126targets in the source directories are up-to-date and
127re-makes them if they are out of date, instead of blindly trying to install 127re-makes them if they are out of date, instead of blindly trying to install
128out of date or non-existent 128out of date or non-existent
129.Xr make 1 129.Xr make 1
130targets. 130targets.
131.DFLTu 131.DFLTu
132. 132.
133.It Sy BUILDID 133.It Sy BUILDID
134Identifier for the build. 134Identifier for the build.
135If set, this should be a short string that is suitable for use as 135If set, this should be a short string that is suitable for use as
136part of a file or directory name. 136part of a file or directory name.
137The identifier will be appended to 137The identifier will be appended to
138object directory names, and can be consulted in the 138object directory names, and can be consulted in the
139.Xr make 1 139.Xr make 1
140configuration file in order to set additional build parameters, 140configuration file in order to set additional build parameters,
141such as compiler flags. 141such as compiler flags.
142It will also be used as part of the kernel version string, 142It will also be used as part of the kernel version string,
143which can be shown by 143which can be shown by
144.Dq Li uname \-v . 144.Dq Li uname \-v .
145.DFLTu 145.DFLTu
146. 146.
147.It Sy BUILDINFO 147.It Sy BUILDINFO
148Optional multi-line string containing information about the build. 148Optional multi-line string containing information about the build.
149This will appear in 149This will appear in
150.Sy DESTDIR Ns Pa /etc/release , 150.Sy DESTDIR Ns Pa /etc/release ,
151and it will be stored in the 151and it will be stored in the
152.Va buildinfo 152.Va buildinfo
153variable in any kernels that are built. 153variable in any kernels that are built.
154When such kernels are booted, the 154When such kernels are booted, the
155.Xr sysctl 7 155.Xr sysctl 7
156.Va kern.buildinfo 156.Va kern.buildinfo
157variable will report this value. 157variable will report this value.
158The string may contain backslash escape sequences, such as 158The string may contain backslash escape sequences, such as
159.Dq "\e\e" 159.Dq "\e\e"
160(representing a backslash character) 160(representing a backslash character)
161and 161and
162.Dq "\en" 162.Dq "\en"
163(representing a newline). 163(representing a newline).
164.DFLTu 164.DFLTu
165. 165.
166.It Sy BUILDSEED 166.It Sy BUILDSEED
167.Xr g++ 1 167.Xr g++ 1
168uses random numbers when compiling C++ code. 168uses random numbers when compiling C++ code.
169This variable seeds the 169This variable seeds the
170.Xr g++ 1 170.Xr g++ 1
171random number generator using 171random number generator using
172.Fl frandom-seed 172.Fl frandom-seed
173with this value. 173with this value.
174By default, it is set to 174By default, it is set to
175.Do NetBSD-( Ns Em majorversion ) Dc . 175.Do NetBSD-( Ns Em majorversion ) Dc .
176Using a fixed value causes C++ binaries to be the same when 176Using a fixed value causes C++ binaries to be the same when
177built from the same sources, resulting in identical (reproducible) builds. 177built from the same sources, resulting in identical (reproducible) builds.
178Additional information is available in the 178Additional information is available in the
179.Xr g++ 1 179.Xr g++ 1
180documentation of 180documentation of
181.Fl frandom-seed . 181.Fl frandom-seed .
182.DFLTu 182.DFLTu
183. 183.
184.It Sy CDEXTRA 184.It Sy CDEXTRA
185A space-separated list of files or directories that will be 185A space-separated list of files or directories that will be
186added to the CD-ROM image that may be create by the 186added to the CD-ROM image that may be create by the
187.Sy build.sh 187.Sy build.sh
188.Dq iso-image 188.Dq iso-image
189or 189or
190.Dq iso-image-source 190.Dq iso-image-source
191operations. 191operations.
192Files will be added to the root of the CD-ROM image, 192Files will be added to the root of the CD-ROM image,
193whereas directories will be copied recursively. 193whereas directories will be copied recursively.
194If relative paths are specified, they will be converted to 194If relative paths are specified, they will be converted to
195absolute paths before being used. 195absolute paths before being used.
196.Em Note : 196.Em Note :
197If using 197If using
198.Sy build.sh , 198.Sy build.sh ,
199multiple paths may be specified via multiple 199multiple paths may be specified via multiple
200.Fl C 200.Fl C
201options, or via a single option whose argument contains multiple 201options, or via a single option whose argument contains multiple
202space-separated paths. 202space-separated paths.
203.DFLTu 203.DFLTu
204. 204.
205.It Sy CONFIGOPTS 205.It Sy CONFIGOPTS
206Additional flags to 206Additional flags to
207.Xr config 1 207.Xr config 1
208when building kernels. 208when building kernels.
209.DFLTu 209.DFLTu
210. 210.
211.It Sy COPTS 211.It Sy COPTS
212Extra options for the C compiler. 212Extra options for the C compiler.
213Should be appended to (e.g., 213Should be appended to (e.g.,
214.Sy COPTS+=-g ) , 214.Sy COPTS+=-g ) ,
215rather than explicitly set. 215rather than explicitly set.
216.Pp 216.Pp
217.Em Note : 217.Em Note :
218.Sy CPUFLAGS , 218.Sy CPUFLAGS ,
219not 219not
220.Sy COPTS , 220.Sy COPTS ,
221should be used for 221should be used for
222compiler flags that select CPU-related options. 222compiler flags that select CPU-related options.
223.Pp 223.Pp
224.Em Note : 224.Em Note :
225.Sy CFLAGS 225.Sy CFLAGS
226should never be set in 226should never be set in
227.Nm . 227.Nm .
228. 228.
229.It Sy CPUFLAGS 229.It Sy CPUFLAGS
230Additional options passed to the compiler/assembler to select 230Additional options passed to the compiler/assembler to select
231CPU instruction set options, CPU tuning options, etc. 231CPU instruction set options, CPU tuning options, etc.
232.Pp 232.Pp
233.Em Note : 233.Em Note :
234Such options should not be specified in 234Such options should not be specified in
235.Sy COPTS , 235.Sy COPTS ,
236because some parts of the build process need to override 236because some parts of the build process need to override
237CPU-related compiler options. 237CPU-related compiler options.
238.DFLTu 238.DFLTu
239. 239.
240.It Sy DESTDIR 240.It Sy DESTDIR
241Directory to contain the built 241Directory to contain the built
242.Nx 242.Nx
243system. 243system.
244If set, special options are passed to the compilation tools to 244If set, special options are passed to the compilation tools to
245prevent their default use of the host system's 245prevent their default use of the host system's
246.Sy /usr/include , /usr/lib , 246.Sy /usr/include , /usr/lib ,
247and so forth. 247and so forth.
248This pathname must be an absolute path, and should 248This pathname must be an absolute path, and should
249.Em not 249.Em not
250end with a slash 250end with a slash
251.Pq / 251.Pq /
252character. 252character.
253(For installation into the system's root directory, set 253(For installation into the system's root directory, set
254.Sy DESTDIR 254.Sy DESTDIR
255to an empty string, not to 255to an empty string, not to
256.Dq / ) . 256.Dq / ) .
257The directory must reside on a file system which supports long file 257The directory must reside on a file system which supports long file
258names and hard links. 258names and hard links.
259.Pp 259.Pp
260.Em Note : 260.Em Note :
261.Sy build.sh 261.Sy build.sh
262will provide a default of 262will provide a default of
263.Dq Pa destdir . Ns Sy MACHINE 263.Dq Pa destdir . Ns Sy MACHINE
264(in the top-level 264(in the top-level
265.Sy .OBJDIR ) 265.Sy .OBJDIR )
266unless run in 266unless run in
267.Sq expert 267.Sq expert
268mode with the 268mode with the
269.Fl E 269.Fl E
270option. 270option.
271.DFLT 271.DFLT
272Empty string if 272Empty string if
273.Sy USETOOLS=yes ; 273.Sy USETOOLS=yes ;
274otherwise unset. 274otherwise unset.
275. 275.
276.It Sy EXTERNAL_TOOLCHAIN 276.It Sy EXTERNAL_TOOLCHAIN
277If defined, this variable indicates the root directory of 277If defined, this variable indicates the root directory of
278an external toolchain which will be used to build the tree. 278an external toolchain which will be used to build the tree.
279For example, if a platform is a 279For example, if a platform is a
280.Sy TOOLCHAIN_MISSING 280.Sy TOOLCHAIN_MISSING
281platform, 281platform,
282.Sy EXTERNAL_TOOLCHAIN 282.Sy EXTERNAL_TOOLCHAIN
283can be used to re-enable the cross-compile framework. 283can be used to re-enable the cross-compile framework.
284.Pp 284.Pp
285If 285If
286.Sy EXTERNAL_TOOLCHAIN 286.Sy EXTERNAL_TOOLCHAIN
287is defined, act as 287is defined, act as
288.Sy MKGCC=no , 288.Sy MKGCC=no ,
289since the external version of the compiler may not be 289since the external version of the compiler may not be
290able to build the library components of the in-tree compiler. 290able to build the library components of the in-tree compiler.
291.Pp 291.Pp
292This variable should be used in conjunction with an appropriate 292This variable should be used in conjunction with an appropriate
293.Sy HAVE_GCC 293.Sy HAVE_GCC
294or 294or
295.Sy HAVE_LLVM 295.Sy HAVE_LLVM
296setting to control the compiler flags. 296setting to control the compiler flags.
297.Pp 297.Pp
298.Em Note : 298.Em Note :
299This variable is not yet used in as many places as it should be. 299This variable is not yet used in as many places as it should be.
300Expect the exact semantics of this variable to change in the short 300Expect the exact semantics of this variable to change in the short
301term as parts of the cross-compile framework continue to be cleaned up. 301term as parts of the cross-compile framework continue to be cleaned up.
302.DFLTu 302.DFLTu
303. 303.
304.It Sy INSTALLBOOT_BOARDS 304.It Sy INSTALLBOOT_BOARDS
305A list of 305A list of
306.Sy evbarm 306.Sy evbarm
307boards to create bootable images for. 307boards to create bootable images for.
308If corresponding U-Boot packages are installed, 308If corresponding U-Boot packages are installed,
309bootable images are created as part of a release. 309bootable images are created as part of a release.
310See the 310See the
311.Bk -words 311.Bk -words
312.Fl o Sy board= Ns Ar name 312.Fl o Sy board= Ns Ar name
313.Ek 313.Ek
314option of 314option of
315.Xr installboot 8 . 315.Xr installboot 8 .
316.DFLTu 316.DFLTu
317. 317.
318.It Sy INSTALLWORLDDIR 318.It Sy INSTALLWORLDDIR
319Directory for the top-level 319Directory for the top-level
320.Xr make 1 320.Xr make 1
321.Dq installworld 321.Dq installworld
322target to install to. 322target to install to.
323If specified, must be an absolute path. 323If specified, must be an absolute path.
324.DFLT 324.DFLT
325.Dq Pa / . 325.Dq Pa / .
326. 326.
327.It Sy KERNARCHDIR 327.It Sy KERNARCHDIR
328Directory under 328Directory under
329.Sy KERNSRCDIR 329.Sy KERNSRCDIR
330containing the machine dependent kernel sources. 330containing the machine dependent kernel sources.
331.DFLT 331.DFLT
332.Dq Pa arch/ Ns Sy MACHINE . 332.Dq Pa arch/ Ns Sy MACHINE .
333. 333.
334.It Sy KERNCONFDIR 334.It Sy KERNCONFDIR
335Directory containing the kernel configuration files. 335Directory containing the kernel configuration files.
336.DFLT 336.DFLT
337.Dq Sy KERNSRCDIR Ns Pa / Ns Sy KERNARCHDIR Ns Pa /conf . 337.Dq Sy KERNSRCDIR Ns Pa / Ns Sy KERNARCHDIR Ns Pa /conf .
338. 338.
339.It Sy KERNEL_DIR Pq No experimental 339.It Sy KERNEL_DIR Pq No experimental
340.YorN 340.YorN
341Indicates if a top-level directory 341Indicates if a top-level directory
342.Sy /netbsd/ 342.Sy /netbsd/
343is created. 343is created.
344If 344If
345.Dq yes , 345.Dq yes ,
346the directory will contain a kernel file 346the directory will contain a kernel file
347.Pa /netbsd/kernel 347.Pa /netbsd/kernel
348and a corresponding modules directory 348and a corresponding modules directory
349.Pa /netbsd/modules/ . 349.Pa /netbsd/modules/ .
350System bootstrap procedures will be modified to search for the kernel 350System bootstrap procedures will be modified to search for the kernel
351and modules in the 351and modules in the
352.Pa /netbsd/ 352.Pa /netbsd/
353directory. 353directory.
354This is intended to simplify system upgrade and rollback procedures by 354This is intended to simplify system upgrade and rollback procedures by
355keeping the kernel and its associated modules together in one place. 355keeping the kernel and its associated modules together in one place.
356.Pp 356.Pp
357If 357If
358.Dq no , 358.Dq no ,
359the kernel file will be stored in 359the kernel file will be stored in
360.Pa /netbsd 360.Pa /netbsd
361and the modules will be stored within the 361and the modules will be stored within the
362.Pa /stand/${ARCH}/ 362.Pa /stand/${ARCH}/
363directory hierarchy. 363directory hierarchy.
364.Pp 364.Pp
365The 365The
366.Sy KERNEL_DIR 366.Sy KERNEL_DIR
367option is a work-in-progress, and is highly experimental. 367option is a work-in-progress, and is highly experimental.
368It is also subject to change without notice. 368It is also subject to change without notice.
369.DFLTn 369.DFLTn
370. 370.
371.It Sy KERNOBJDIR 371.It Sy KERNOBJDIR
372Directory for kernel builds. 372Directory for kernel builds.
373For example, the kernel 373For example, the kernel
374.Sy GENERIC 374.Sy GENERIC
375will be compiled in 375will be compiled in
376.Sy KERNOBJDIR Ns Pa /GENERIC . 376.Sy KERNOBJDIR Ns Pa /GENERIC .
377.DFLT 377.DFLT
378.Dq Sy MAKEOBJDIRPREFIX Ns Pa / Ns Sy KERNSRCDIR Ns Pa / Ns Sy KERNARCHDIR Ns Pa /compile 378.Dq Sy MAKEOBJDIRPREFIX Ns Pa / Ns Sy KERNSRCDIR Ns Pa / Ns Sy KERNARCHDIR Ns Pa /compile
379if it exists or the 379if it exists or the
380.Xr make 1 380.Xr make 1
381.Dq obj 381.Dq obj
382target is being made; 382target is being made;
383otherwise 383otherwise
384.Dq Sy KERNSRCDIR Ns Pa / Ns Sy KERNARCHDIR Ns Pa /compile . 384.Dq Sy KERNSRCDIR Ns Pa / Ns Sy KERNARCHDIR Ns Pa /compile .
385. 385.
386.It Sy KERNSRCDIR 386.It Sy KERNSRCDIR
387Directory at the top of the kernel source. 387Directory at the top of the kernel source.
388.DFLT 388.DFLT
389.Dq Sy NETBSDSRCDIR Ns Pa /sys . 389.Dq Sy NETBSDSRCDIR Ns Pa /sys .
390. 390.
391.It Sy LOCALTIME 391.It Sy LOCALTIME
392The name of the 392The name of the
393.Xr tzfile 5 393.Xr tzfile 5
394timezone file in the directory 394timezone file in the directory
395.Pa /usr/share/zoneinfo 395.Pa /usr/share/zoneinfo
396to symbolically link 396to symbolically link
397.Sy DESTDIR Ns Pa /etc/localtime 397.Sy DESTDIR Ns Pa /etc/localtime
398to. 398to.
399.DFLT 399.DFLT
400.Dq UTC . 400.Dq UTC .
401. 401.
402.It Sy MAKEVERBOSE 402.It Sy MAKEVERBOSE
403Level of verbosity of status messages. 403Level of verbosity of status messages.
404Supported values: 404Supported values:
405.Bl -tag -width 2n 405.Bl -tag -width 2n
406.It 0 406.It 0
407No descriptive messages or commands executed by 407No descriptive messages or commands executed by
408.Xr make 1 408.Xr make 1
409are shown. 409are shown.
410.It 1 410.It 1
411Brief messages are shown describing what is being done, 411Brief messages are shown describing what is being done,
412but the actual commands executed by 412but the actual commands executed by
413.Xr make 1 413.Xr make 1
414are not shown. 414are not shown.
415.It 2 415.It 2
416Descriptive messages are shown as above (prefixed with a 416Descriptive messages are shown as above (prefixed with a
417.Sq # ) , 417.Sq # ) ,
418and ordinary commands performed by 418and ordinary commands performed by
419.Xr make 1 419.Xr make 1
420are shown. 420are shown.
421.It 3 421.It 3
422In addition to the above, all commands performed by 422In addition to the above, all commands performed by
423.Xr make 1 423.Xr make 1
424are shown, even if they would ordinarily have been hidden 424are shown, even if they would ordinarily have been hidden
425through use of the 425through use of the
426.Dq \&@ 426.Dq \&@
427prefix in the relevant makefile. 427prefix in the relevant makefile.
428.It 4 428.It 4
429In addition to the above, commands executed by 429In addition to the above, commands executed by
430.Xr make 1 430.Xr make 1
431are traced through use of the 431are traced through use of the
432.Xr sh 1 432.Xr sh 1
433.Dq Fl x 433.Dq Fl x
434flag. 434flag.
435.El 435.El
436.DFLT 436.DFLT
437.Sy 2 . 437.Sy 2 .
438. 438.
439.It Sy MKAMDGPUFIRMWARE 439.It Sy MKAMDGPUFIRMWARE
440.YorN 440.YorN
441Indicates whether to install the 441Indicates whether to install the
442.Pa /libdata/firmware/amdgpu 442.Pa /libdata/firmware/amdgpu
443directory, which is necessary for the 443directory, which is necessary for the
444.Xr amdgpu 4 444.Xr amdgpu 4
445AMD RADEON GPU video driver. 445AMD RADEON GPU video driver.
446.DFLT 446.DFLT
447.Dq yes 447.Dq yes
448on 448on
449.Sy i386 449.Sy i386
450and 450and
451.Sy x86_64 ; 451.Sy x86_64 ;
452.Dq no 452.Dq no
453on other platforms. 453on other platforms.
454. 454.
455.It Sy MKARGON2 455.It Sy MKARGON2
456.YorN 456.YorN
457Indicates whether the Argon2 hash is enabled in libcrypt. 457Indicates whether the Argon2 hash is enabled in libcrypt.
458.DFLTy 458.DFLTy
459. 459.
460.It Sy MKARZERO 460.It Sy MKARZERO
461.YorN 461.YorN
462Indicates whether 462Indicates whether
463.Xr ar 1 463.Xr ar 1
464should zero the timestamp, uid, and gid in the archive 464should zero the timestamp, uid, and gid in the archive
465for reproducible builds. 465for reproducible builds.
466.DFLT 466.DFLT
467The value of 467The value of
468.Sy MKREPRO 468.Sy MKREPRO
469(if defined), otherwise 469(if defined), otherwise
470.Dq no . 470.Dq no .
471. 471.
472.It Sy MKATF 472.It Sy MKATF
473.YorN 473.YorN
474Indicates whether the Automated Testing Framework (ATF) 474Indicates whether the Automated Testing Framework (ATF)
475will be built and installed. 475will be built and installed.
476This also controls whether the 476This also controls whether the
477.Nx 477.Nx
478test suite will be built and installed, 478test suite will be built and installed,
479as the tests rely on ATF and cannot be built without it. 479as the tests rely on ATF and cannot be built without it.
480.NOVAR MKCXX=no 480.NOVAR MKCXX=no
481.DFLTy 481.DFLTy
482. 482.
483.It Sy MKBINUTILS 483.It Sy MKBINUTILS
484.YorN 484.YorN
485Indicates whether any of the binutils tools or libraries 485Indicates whether any of the binutils tools or libraries
486will be built and installed. 486will be built and installed.
487That is, the libraries 487That is, the libraries
488.Sy libbfd , 488.Sy libbfd ,
489.Sy libiberty , 489.Sy libiberty ,
490or any of the things that depend upon them, e.g. 490or any of the things that depend upon them, e.g.
491.Xr as 1 , 491.Xr as 1 ,
492.Xr ld 1 , 492.Xr ld 1 ,
493.Xr dbsym 8 , 493.Xr dbsym 8 ,
494or 494or
495.Xr mdsetimage 8 . 495.Xr mdsetimage 8 .
496.NOVAR TOOLCHAIN_MISSING!=no 496.NOVAR TOOLCHAIN_MISSING!=no
497.DFLTy 497.DFLTy
498. 498.
499.It Sy MKBSDGREP 499.It Sy MKBSDGREP
500.YorN 500.YorN
501Determines which implementation of 501Determines which implementation of
502.Xr grep 1 502.Xr grep 1
503will be built and installed. 503will be built and installed.
504If 504If
505.Dq yes , 505.Dq yes ,
506use the BSD implementation. 506use the BSD implementation.
507If 507If
508.Dq no , 508.Dq no ,
509use the GNU implementation. 509use the GNU implementation.
510.DFLTn 510.DFLTn
511. 511.
512.It Sy MKBSDTAR 512.It Sy MKBSDTAR
513.YorN 513.YorN
514Determines which implementation of 514Determines which implementation of
515.Xr cpio 1 515.Xr cpio 1
516and 516and
517.Xr tar 1 517.Xr tar 1
518will be built and installed. 518will be built and installed.
519If 519If
520.Dq yes , 520.Dq yes ,
521use the 521use the
522.Sy libarchive Ns - Ns 522.Sy libarchive Ns - Ns
523based implementations. 523based implementations.
524If 524If
525.Dq no , 525.Dq no ,
526use the 526use the
527.Xr pax 1 527.Xr pax 1
528based implementations. 528based implementations.
529.DFLTy 529.DFLTy
530. 530.
531.It Sy MKCATPAGES 531.It Sy MKCATPAGES
532.YorN 532.YorN
533Indicates whether preformatted plaintext manual pages will be created 533Indicates whether preformatted plaintext manual pages will be created
534and installed. 534and installed.
535.NOVAR MKMAN=no No or Sy MKSHARE=no 535.NOVAR MKMAN=no No or Sy MKSHARE=no
536.DFLTn 536.DFLTn
537. 537.
538.It Sy MKCLEANSRC 538.It Sy MKCLEANSRC
539.YorN 539.YorN
540Indicates whether 540Indicates whether
541.Sq "make clean" 541.Sq "make clean"
542and 542and
543.Sq "make cleandir" 543.Sq "make cleandir"
544will delete file names in 544will delete file names in
545.Sy CLEANFILES 545.Sy CLEANFILES
546or 546or
547.Sy CLEANDIRFILES 547.Sy CLEANDIRFILES
548from both the object directory, 548from both the object directory,
549.Sy .OBJDIR , 549.Sy .OBJDIR ,
550and the source directory, 550and the source directory,
551.Sy .SRCDIR . 551.Sy .SRCDIR .
552.Pp 552.Pp
553If 553If
554.Dq yes , 554.Dq yes ,
555then these file names will be deleted relative to both 555then these file names will be deleted relative to both
556.Sy .OBJDIR 556.Sy .OBJDIR
557and 557and
558.Sy .CURDIR . 558.Sy .CURDIR .
559If 559If
560.Dq no , 560.Dq no ,
561then the deletion will be performed relative to 561then the deletion will be performed relative to
562.Sy .OBJDIR 562.Sy .OBJDIR
563only. 563only.
564.DFLTy 564.DFLTy
565. 565.
566.It Sy MKCLEANVERIFY 566.It Sy MKCLEANVERIFY
567.YorN 567.YorN
568Controls whether 568Controls whether
569.Sq "make clean" 569.Sq "make clean"
570and 570and
571.Sq "make cleandir" 571.Sq "make cleandir"
572will verify that files have been deleted. 572will verify that files have been deleted.
573If 573If
574.Dq yes , 574.Dq yes ,
575then file deletions will be verified using 575then file deletions will be verified using
576.Xr ls 1 . 576.Xr ls 1 .
577If 577If
578.Dq no , 578.Dq no ,
579then file deletions will not be verified. 579then file deletions will not be verified.
580.DFLTy 580.DFLTy
581. 581.
582.It Sy MKCOMPAT 582.It Sy MKCOMPAT
583.YorN 583.YorN
584Indicates whether support for multiple ABIs is to be built and 584Indicates whether support for multiple ABIs is to be built and
585installed. 585installed.
586.NODEF NOCOMPAT 586.NODEF NOCOMPAT
587.DFLT 587.DFLT
588.Dq yes 588.Dq yes
589on 589on
590.Sy aarch64 590.Sy aarch64
591(without gcc), 591(without gcc),
592.Sy mips64 , 592.Sy mips64 ,
593.Sy powerpc64 , 593.Sy powerpc64 ,
594.Sy riscv64 , 594.Sy riscv64 ,
595.Sy sparc64 , 595.Sy sparc64 ,
596and 596and
597.Sy x86_64 ; 597.Sy x86_64 ;
598.Dq no 598.Dq no
599on other platforms. 599on other platforms.
600. 600.
601.It Sy MKCOMPATMODULES 601.It Sy MKCOMPATMODULES
602.YorN 602.YorN
603Indicates whether the compat kernel modules will be built and installed. 603Indicates whether the compat kernel modules will be built and installed.
604.NOVAR MKCOMPAT=no 604.NOVAR MKCOMPAT=no
605.DFLT 605.DFLT
606.Dq yes 606.Dq yes
607on 607on
608.Sy evbppc-powerpc 608.Sy evbppc-powerpc
609and 609and
610.Sy mips64 ; 610.Sy mips64 ;
611.Dq no 611.Dq no
612on other platforms. 612on other platforms.
613. 613.
614.It Sy MKCOMPATTESTS 614.It Sy MKCOMPATTESTS
615.YorN 615.YorN
616Indicates whether the 616Indicates whether the
617.Nx 617.Nx
618test suite for 618test suite for
619.Pa src/compat 619.Pa src/compat
620will be built and installed. 620will be built and installed.
621.NOVAR MKCOMPAT=no 621.NOVAR MKCOMPAT=no
622.DFLTn 622.DFLTn
623. 623.
624.It Sy MKCOMPATX11 624.It Sy MKCOMPATX11
625.YorN 625.YorN
626Indicates whether the X11 libraries will be built and installed. 626Indicates whether the X11 libraries will be built and installed.
627.NOVAR MKCOMPAT=no 627.NOVAR MKCOMPAT=no
628.DFLTn 628.DFLTn
629. 629.
630.It Sy MKCOMPLEX 630.It Sy MKCOMPLEX
631.YorN 631.YorN
632Indicates whether the 632Indicates whether the
633.Lb libm 633.Lb libm
634is compiled with support for 634is compiled with support for
635.In complex.h . 635.In complex.h .
636.DFLTy 636.DFLTy
637. 637.
638.It Sy MKCROSSGDB 638.It Sy MKCROSSGDB
639.YorN 639.YorN
640Create a cross-gdb as a host tool. 640Create a cross-gdb as a host tool.
641.DFLTn 641.DFLTn
642. 642.
643.It Sy MKCTF 643.It Sy MKCTF
644.YorN 644.YorN
645Indicates whether CTF tools are to be built and installed. 645Indicates whether CTF tools are to be built and installed.
646If 646If
647.Dq yes , 647.Dq yes ,
648the tools will be used to generate and manipulate 648the tools will be used to generate and manipulate
649CTF data of ELF binaries during build. 649CTF data of ELF binaries during build.
650.NODEF NOCTF 650.NODEF NOCTF
651.Pp 651.Pp
652This is disabled internally for standalone programs in 652This is disabled internally for standalone programs in
653.Pa /usr/mdec . 653.Pa /usr/mdec .
654.DFLT 654.DFLT
655.Dq yes 655.Dq yes
656on 656on
657.Sy aarch64 , 657.Sy aarch64 ,
658.Sy amd64 , 658.Sy amd64 ,
659and 659and
660.Sy i386 ; 660.Sy i386 ;
661.Dq no 661.Dq no
662on other platforms. 662on other platforms.
663. 663.
664.It Sy MKCVS 664.It Sy MKCVS
665.YorN 665.YorN
666Indicates whether 666Indicates whether
667.Xr cvs 1 667.Xr cvs 1
668will be built and installed. 668will be built and installed.
669.DFLTy 669.DFLTy
670. 670.
671.It Sy MKCXX 671.It Sy MKCXX
672.YorN 672.YorN
673Indicates whether C++ support is enabled. 673Indicates whether C++ support is enabled.
674.Pp 674.Pp
675If 675If
676.Dq no , 676.Dq no ,
677C++ compilers and software will not be built, 677C++ compilers and software will not be built,
678and acts as 678and acts as
679.Sy MKATF=no MKGCCCMDS=no MKGDB=no MKGROFF=no MKKYUA=no . 679.Sy MKATF=no MKGCCCMDS=no MKGDB=no MKGROFF=no MKKYUA=no .
680.DFLTy 680.DFLTy
681. 681.
682.It Sy MKDEBUG 682.It Sy MKDEBUG
683.YorN 683.YorN
684Indicates whether debug information should be generated for 684Indicates whether debug information should be generated for
685all userland binaries. 685all userland binaries.
686The result is collected as an additional 686The result is collected as an additional
687.Sy debug 687.Sy debug
688and 688and
689.Sy xdebug 689.Sy xdebug
690set and installed in 690set and installed in
691.Sy DESTDIR Ns Pa /usr/libdata/debug . 691.Sy DESTDIR Ns Pa /usr/libdata/debug .
692.NODEF NODEBUG 692.NODEF NODEBUG
693.DFLTn 693.DFLTn
694. 694.
695.It Sy MKDEBUGKERNEL 695.It Sy MKDEBUGKERNEL
696.YorN 696.YorN
697Indicates whether debugging symbols will be built for kernels 697Indicates whether debugging symbols will be built for kernels
698by default; pretend as if 698by default; pretend as if
699.Em makeoptions DEBUG="-g" 699.Em makeoptions DEBUG="-g"
700is specified in kernel configuration files. 700is specified in kernel configuration files.
701This will also put the debug kernel 701This will also put the debug kernel
702.Pa netbsd.gdb 702.Pa netbsd.gdb
703in the kernel sets. 703in the kernel sets.
704See 704See
705.Xr options 4 705.Xr options 4
706for details. 706for details.
707This is useful if a cross-gdb is built as well (see 707This is useful if a cross-gdb is built as well (see
708.Sy MKCROSSGDB ) . 708.Sy MKCROSSGDB ) .
709.DFLTn 709.DFLTn
710. 710.
711.It Sy MKDEBUGLIB 711.It Sy MKDEBUGLIB
712.YorN 712.YorN
713Indicates whether debug libraries 713Indicates whether debug libraries
714.Sy ( lib*_g.a ) 714.Sy ( lib*_g.a )
715will be built and installed. 715will be built and installed.
716Debug libraries are compiled with 716Debug libraries are compiled with
717.Dq Li -g -DDEBUG . 717.Dq Li -g -DDEBUG .
718.NODEF NODEBUGLIB 718.NODEF NODEBUGLIB
719.DFLTn 719.DFLTn
720. 720.
721.It Sy MKDEBUGTOOLS 721.It Sy MKDEBUGTOOLS
722.YorN 722.YorN
723Indicates whether debug information 723Indicates whether debug information
724.Sy ( lib*_g.a ) 724.Sy ( lib*_g.a )
725will be included in the build toolchain. 725will be included in the build toolchain.
726.DFLTn 726.DFLTn
727. 727.
728.It Sy MKDEPINCLUDES 728.It Sy MKDEPINCLUDES
729.YorN 729.YorN
730Indicates whether to add 730Indicates whether to add
731.Cm \&.include 731.Cm \&.include
732statements in the 732statements in the
733.Pa .depend 733.Pa .depend
734files instead of inlining the contents of the 734files instead of inlining the contents of the
735.Pa *.d 735.Pa *.d
736files. 736files.
737This is useful when stale dependencies are present, 737This is useful when stale dependencies are present,
738to list the exact files that need refreshing, but 738to list the exact files that need refreshing, but
739it is possibly slower than inlining. 739it is possibly slower than inlining.
740.DFLTn 740.DFLTn
741. 741.
742.It Sy MKDOC 742.It Sy MKDOC
743.YorN 743.YorN
744Indicates whether system documentation destined for 744Indicates whether system documentation destined for
745.Sy DESTDIR Ns Pa /usr/share/doc 745.Sy DESTDIR Ns Pa /usr/share/doc
746will be installed. 746will be installed.
747.NODEF NODOC 747.NODEF NODOC
748.NOVAR MKSHARE=no 748.NOVAR MKSHARE=no
749.DFLTy 749.DFLTy
 750.Pp
 751.Em Note :
 752see also
 753.Pa src/sys/rump/README.compileopts
 754for variables used during the build of the
 755.Xr rump 3 .
750. 756.
751.It Sy MKDTB 757.It Sy MKDTB
752.YorN 758.YorN
753Indicates whether the devicetree blobs will be built and installed. 759Indicates whether the devicetree blobs will be built and installed.
754.DFLT 760.DFLT
755.Dq yes 761.Dq yes
756on 762on
757.Sy aarch64 , 763.Sy aarch64 ,
758.Sy armv6 , 764.Sy armv6 ,
759.Sy armv7 , 765.Sy armv7 ,
760.Sy riscv32 , 766.Sy riscv32 ,
761and 767and
762.Sy riscv64 ; 768.Sy riscv64 ;
763.Dq no 769.Dq no
764on other platforms. 770on other platforms.
765. 771.
766.It Sy MKDTC 772.It Sy MKDTC
767.YorN 773.YorN
768Indicates whether the Device Tree Compiler (dtc) will be built and installed. 774Indicates whether the Device Tree Compiler (dtc) will be built and installed.
769.DFLTy 775.DFLTy
 776.Pp
 777.Em Note :
 778see also
 779.Pa src/sys/rump/README.compileopts
 780for variables used during the build of the
 781.Xr rump 3 .
770. 782.
771.It Sy MKDTRACE 783.It Sy MKDTRACE
772.YorN 784.YorN
773Indicates whether the kernel modules, utilities, and libraries for 785Indicates whether the kernel modules, utilities, and libraries for
774.Xr dtrace 1 786.Xr dtrace 1
775support are to be built and installed. 787support are to be built and installed.
776.DFLT 788.DFLT
777.Dq yes 789.Dq yes
778on 790on
779.Sy aarch64 , 791.Sy aarch64 ,
780.Sy amd64 , 792.Sy amd64 ,
781and 793and
782.Sy i386 ; 794.Sy i386 ;
783.Dq no 795.Dq no
784on other platforms. 796on other platforms.
785. 797.
786.It Sy MKDYNAMICROOT 798.It Sy MKDYNAMICROOT
787.YorN 799.YorN
788Indicates whether all programs should be dynamically linked, 800Indicates whether all programs should be dynamically linked,
789and to install shared libraries required by 801and to install shared libraries required by
790.Pa /bin 802.Pa /bin
791and 803and
792.Pa /sbin 804.Pa /sbin
793and the shared linker 805and the shared linker
794.Xr ld.elf_so 1 806.Xr ld.elf_so 1
795into 807into
796.Pa /lib . 808.Pa /lib .
797If 809If
798.Dq no , 810.Dq no ,
799link programs in 811link programs in
800.Pa /bin 812.Pa /bin
801and 813and
802.Pa /sbin 814.Pa /sbin
803statically. 815statically.
804.DFLT 816.DFLT
805.Dq no 817.Dq no
806on 818on
807.Sy ia64 ; 819.Sy ia64 ;
808.Dq yes 820.Dq yes
809on other platforms. 821on other platforms.
810. 822.
811.It Sy MKFIRMWARE 823.It Sy MKFIRMWARE
812.YorN 824.YorN
813Indicates whether to install the 825Indicates whether to install the
814.Pa /libdata/firmware 826.Pa /libdata/firmware
815directory, which is necessary for various drivers, including: 827directory, which is necessary for various drivers, including:
816.Xr athn 4 , 828.Xr athn 4 ,
817.Xr bcm43xx 4 , 829.Xr bcm43xx 4 ,
818.Xr bwfm 4 , 830.Xr bwfm 4 ,
819.Xr ipw 4 , 831.Xr ipw 4 ,
820.Xr iwi 4 , 832.Xr iwi 4 ,
821.Xr iwm 4 , 833.Xr iwm 4 ,
822.Xr iwn 4 , 834.Xr iwn 4 ,
823.Xr otus 4 , 835.Xr otus 4 ,
824.Xr ral 4 , 836.Xr ral 4 ,
825.Xr rtwn 4 , 837.Xr rtwn 4 ,
826.Xr rum 4 , 838.Xr rum 4 ,
827.Xr run 4 , 839.Xr run 4 ,
828.Xr urtwn 4 , 840.Xr urtwn 4 ,
829.Xr wpi 4 , 841.Xr wpi 4 ,
830.Xr zyd 4 , 842.Xr zyd 4 ,
831and the Tegra 124 SoC. 843and the Tegra 124 SoC.
832.DFLT 844.DFLT
833.Dq yes 845.Dq yes
834on 846on
835.Sy amd64 , 847.Sy amd64 ,
836.Sy cobalt , 848.Sy cobalt ,
837.Sy evbarm , 849.Sy evbarm ,
838.Sy evbmips , 850.Sy evbmips ,
839.Sy evbppc , 851.Sy evbppc ,
840.Sy hpcarm , 852.Sy hpcarm ,
841.Sy hppa , 853.Sy hppa ,
842.Sy i386 , 854.Sy i386 ,
843.Sy mac68k , 855.Sy mac68k ,
844.Sy macppc , 856.Sy macppc ,
845.Sy sandpoint , 857.Sy sandpoint ,
846and 858and
847.Sy sparc64 ; 859.Sy sparc64 ;
848.Dq no 860.Dq no
849on other platforms. 861on other platforms.
850. 862.
851.It Sy MKGCC 863.It Sy MKGCC
852.YorN 864.YorN
853Indicates whether 865Indicates whether
854.Xr gcc 1 866.Xr gcc 1
855or any related libraries 867or any related libraries
856.Pq Sy libg2c , libgcc , libobjc , libstdc++ 868.Pq Sy libg2c , libgcc , libobjc , libstdc++
857will be built and installed. 869will be built and installed.
858.NOVAR TOOLCHAIN_MISSING!=no No or Sy EXTERNAL_TOOLCHAIN No is defined 870.NOVAR TOOLCHAIN_MISSING!=no No or Sy EXTERNAL_TOOLCHAIN No is defined
859.DFLTy 871.DFLTy
860. 872.
861.It Sy MKGCCCMDS 873.It Sy MKGCCCMDS
862.YorN 874.YorN
863Indicates whether 875Indicates whether
864.Xr gcc 1 876.Xr gcc 1
865will be built and installed. 877will be built and installed.
866If 878If
867.Dq no , 879.Dq no ,
868then 880then
869.Sy MKGCC 881.Sy MKGCC
870controls if the 882controls if the
871GCC libraries will be built and installed. 883GCC libraries will be built and installed.
872.NOVAR MKCXX=no 884.NOVAR MKCXX=no
873.DFLT 885.DFLT
874.Dq no 886.Dq no
875on 887on
876.Sy m68000 ; 888.Sy m68000 ;
877.Dq yes 889.Dq yes
878on other platforms. 890on other platforms.
879. 891.
880.It Sy MKGDB 892.It Sy MKGDB
881.YorN 893.YorN
882Indicates whether 894Indicates whether
883.Xr gdb 1 895.Xr gdb 1
884will be built and installed. 896will be built and installed.
885.NOVAR MKCXX=no No or Sy TOOLCHAIN_MISSING!=no 897.NOVAR MKCXX=no No or Sy TOOLCHAIN_MISSING!=no
886.DFLT 898.DFLT
887.Dq no 899.Dq no
888on 900on
889.Sy ia64 901.Sy ia64
890and 902and
891.Sy or1k ; 903.Sy or1k ;
892.Dq yes 904.Dq yes
893on other platforms. 905on other platforms.
894. 906.
895.It Sy MKGROFF 907.It Sy MKGROFF
896.YorN 908.YorN
897Indicates whether 909Indicates whether
898.Xr groff 1 910.Xr groff 1
899will be built, installed, 911will be built, installed,
900and used to format some of the PostScript and PDF 912and used to format some of the PostScript and PDF
901documentation. 913documentation.
902.NOVAR MKCXX=no 914.NOVAR MKCXX=no
903.DFLTy 915.DFLTy
904. 916.
905.It Sy MKGROFFHTMLDOC 917.It Sy MKGROFFHTMLDOC
906.YorN 918.YorN
907Indicates whether to use 919Indicates whether to use
908.Xr groff 1 920.Xr groff 1
909to generate HTML for miscellaneous articles which 921to generate HTML for miscellaneous articles which
910sometimes requires software not in the base installation. 922sometimes requires software not in the base installation.
911Does not affect the generation of HTML man pages. 923Does not affect the generation of HTML man pages.
912.DFLTn 924.DFLTn
913. 925.
914.It Sy MKHESIOD 926.It Sy MKHESIOD
915.YorN 927.YorN
916Indicates whether the Hesiod infrastructure 928Indicates whether the Hesiod infrastructure
917(libraries and support programs) will be built and installed. 929(libraries and support programs) will be built and installed.
918.DFLTy 930.DFLTy
919. 931.
920.It Sy MKHOSTOBJ 932.It Sy MKHOSTOBJ
921.YorN 933.YorN
922If 934If
923.Dq yes , 935.Dq yes ,
924then for programs intended to be run on the compile host, 936then for programs intended to be run on the compile host,
925the name, release, and architecture of the host operating system 937the name, release, and architecture of the host operating system
926will be suffixed to the name of the object directory created by 938will be suffixed to the name of the object directory created by
927.Dq make obj . 939.Dq make obj .
928(This allows multiple host systems to compile 940(This allows multiple host systems to compile
929.Nx 941.Nx
930for a single target architecture.) 942for a single target architecture.)
931If 943If
932.Dq no , 944.Dq no ,
933then programs built to be run on the compile host will use the same 945then programs built to be run on the compile host will use the same
934object directory names as programs built to be run on the target 946object directory names as programs built to be run on the target
935architecture. 947architecture.
936.DFLTn 948.DFLTn
937. 949.
938.It Sy MKHTML 950.It Sy MKHTML
939.YorN 951.YorN
940Indicates whether the HTML manual pages are created and installed. 952Indicates whether the HTML manual pages are created and installed.
941.NODEF NOHTML 953.NODEF NOHTML
942.NOVAR MKMAN=no No or Sy MKSHARE=no 954.NOVAR MKMAN=no No or Sy MKSHARE=no
943.DFLTy 955.DFLTy
944. 956.
945.It Sy MKIEEEFP 957.It Sy MKIEEEFP
946.YorN 958.YorN
947Indicates whether code for IEEE754/IEC60559 conformance 959Indicates whether code for IEEE754/IEC60559 conformance
948will be built and installed. 960will be built and installed.
949Has no effect on most platforms. 961Has no effect on most platforms.
950.DFLTy 962.DFLTy
951. 963.
952.It Sy MKINET6 964.It Sy MKINET6
953.YorN 965.YorN
954Indicates whether INET6 (IPv6) infrastructure 966Indicates whether INET6 (IPv6) infrastructure
955(libraries and support programs) will be built and installed. 967(libraries and support programs) will be built and installed.
956.Pp 968.Pp
957.Em Note : 969.Em Note :
958.Sy MKINET6 970.Sy MKINET6
959must not be set to 971must not be set to
960.Dq no 972.Dq no
961if 973if
962.Sy MKX11!=no . 974.Sy MKX11!=no .
963.DFLTy 975.DFLTy
964. 976.
965.It Sy MKINFO 977.It Sy MKINFO
966.YorN 978.YorN
967Indicates whether GNU Info files, used for the documentation for 979Indicates whether GNU Info files, used for the documentation for
968most of the compilation tools, will be built and installed. 980most of the compilation tools, will be built and installed.
969.NODEF NOINFO 981.NODEF NOINFO
970.NOVAR MKSHARE=no 982.NOVAR MKSHARE=no
971.DFLTy 983.DFLTy
972. 984.
973.It Sy MKIPFILTER 985.It Sy MKIPFILTER
974.YorN 986.YorN
975Indicates whether the 987Indicates whether the
976.Xr ipf 4 988.Xr ipf 4
977programs, headers, and other components will be built and installed. 989programs, headers, and other components will be built and installed.
978.DFLTy 990.DFLTy
979. 991.
980.It Sy MKISCSI 992.It Sy MKISCSI
981.YorN 993.YorN
982Indicates whether the iSCSI library and applications are 994Indicates whether the iSCSI library and applications are
983built and installed. 995built and installed.
984.DFLT 996.DFLT
985.Dq no 997.Dq no
986on 998on
987.Sy m68000 ; 999.Sy m68000 ;
988.Dq yes 1000.Dq yes
989on other platforms. 1001on other platforms.
990. 1002.
991.It Sy MKKERBEROS 1003.It Sy MKKERBEROS
992.YorN 1004.YorN
993Indicates whether the Kerberos v5 infrastructure 1005Indicates whether the Kerberos v5 infrastructure
994(libraries and support programs) will be built and installed. 1006(libraries and support programs) will be built and installed.
995Caution: the default 1007Caution: the default
996.Xr pam 8 1008.Xr pam 8
997configuration requires that Kerberos be present even if not used. 1009configuration requires that Kerberos be present even if not used.
998Do not install a userland without Kerberos without also either 1010Do not install a userland without Kerberos without also either
999updating the 1011updating the
1000.Xr pam.conf 5 1012.Xr pam.conf 5
1001files or disabling PAM via 1013files or disabling PAM via
1002.Sy MKPAM . 1014.Sy MKPAM .
1003Otherwise all logins will fail. 1015Otherwise all logins will fail.
1004.DFLTy 1016.DFLTy
1005. 1017.
1006.It Sy MKKMOD 1018.It Sy MKKMOD
1007.YorN 1019.YorN
1008Indicates whether kernel modules will be built and installed. 1020Indicates whether kernel modules will be built and installed.
1009.DFLT 1021.DFLT
1010.Dq no 1022.Dq no
1011on 1023on
1012.Sy or1k ; 1024.Sy or1k ;
1013.Dq yes 1025.Dq yes
1014on other platforms. 1026on other platforms.
1015. 1027.
1016.It Sy MKKYUA 1028.It Sy MKKYUA
1017.YorN 1029.YorN
1018Indicates whether Kyua (the testing infrastructure used by 1030Indicates whether Kyua (the testing infrastructure used by
1019.Nx ) 1031.Nx )
1020will be built and installed. 1032will be built and installed.
1021.NOVAR MKCXX=no 1033.NOVAR MKCXX=no
1022.Pp 1034.Pp
1023.Em Note : 1035.Em Note :
1024This does not control the installation of the tests themselves. 1036This does not control the installation of the tests themselves.
1025The tests rely on the ATF libraries and therefore their build is controlled 1037The tests rely on the ATF libraries and therefore their build is controlled
1026by the 1038by the
1027.Sy MKATF 1039.Sy MKATF
1028variable. 1040variable.
1029.DFLT 1041.DFLT
1030.Dq no 1042.Dq no
1031until the import of Kyua is done and validated. 1043until the import of Kyua is done and validated.
1032. 1044.
1033.It Sy MKLDAP 1045.It Sy MKLDAP
1034.YorN 1046.YorN
1035Indicates whether the Lightweight Directory Access Protocol (LDAP) 1047Indicates whether the Lightweight Directory Access Protocol (LDAP)
1036infrastructure 1048infrastructure
1037(libraries and support programs) will be built and installed. 1049(libraries and support programs) will be built and installed.
1038.DFLTy 1050.DFLTy
1039. 1051.
1040.It Sy MKLIBCSANITIZER 1052.It Sy MKLIBCSANITIZER
1041.YorN 1053.YorN
1042Indicates whether to use the sanitizer for libc, 1054Indicates whether to use the sanitizer for libc,
1043using the sanitizer defined by 1055using the sanitizer defined by
1044.Sy USE_LIBCSANITIZER . 1056.Sy USE_LIBCSANITIZER .
1045.NODEF NOLIBCSANITIZER 1057.NODEF NOLIBCSANITIZER
1046.DFLTn 1058.DFLTn
1047. 1059.
1048.It Sy MKLIBCXX 1060.It Sy MKLIBCXX
1049.YorN 1061.YorN
1050Indicates if libc++ will be built and installed 1062Indicates if libc++ will be built and installed
1051(usually for 1063(usually for
1052.Xr clang++ 1 ) . 1064.Xr clang++ 1 ) .
1053.DFLT 1065.DFLT
1054.Dq yes 1066.Dq yes
1055if 1067if
1056.Sy MKLLVM=yes ; 1068.Sy MKLLVM=yes ;
1057otherwise 1069otherwise
1058.Dq no . 1070.Dq no .
1059. 1071.
1060.It Sy MKLIBSTDCXX 1072.It Sy MKLIBSTDCXX
1061.YorN 1073.YorN
1062Indicates if libstdc++ will be built and installed 1074Indicates if libstdc++ will be built and installed
1063(usually for 1075(usually for
1064.Xr g++ 1 ) . 1076.Xr g++ 1 ) .
1065.DFLTy 1077.DFLTy
1066. 1078.
1067.It Sy MKLINKLIB 1079.It Sy MKLINKLIB
1068.YorN 1080.YorN
1069Indicates whether all of the shared library infrastructure 1081Indicates whether all of the shared library infrastructure
1070will be built and installed. 1082will be built and installed.
1071.Pp 1083.Pp
1072If 1084If
1073.Dq no , 1085.Dq no ,
1074prevents: 1086prevents:
1075.Bl -dash -compact 1087.Bl -dash -compact
1076.It 1088.It
1077installation of the 1089installation of the
1078.Sy *.a 1090.Sy *.a
1079libraries 1091libraries
1080.It 1092.It
1081installation of the 1093installation of the
1082.Sy *_pic.a 1094.Sy *_pic.a
1083libraries on PIC systems 1095libraries on PIC systems
1084.It 1096.It
1085building of 1097building of
1086.Sy *.a 1098.Sy *.a
1087libraries on PIC systems 1099libraries on PIC systems
1088.It 1100.It
1089installation of 1101installation of
1090.Sy .so 1102.Sy .so
1091symlinks on ELF systems 1103symlinks on ELF systems
1092.El 1104.El
1093.Pp 1105.Pp
1094I.e, only install the shared library (and the 1106I.e, only install the shared library (and the
1095.Pa .so.major 1107.Pa .so.major
1096symlink on ELF). 1108symlink on ELF).
1097.NODEF NOLINKLIB 1109.NODEF NOLINKLIB
1098.Pp 1110.Pp
1099If 1111If
1100.Dq no , 1112.Dq no ,
1101acts as 1113acts as
1102.Sy MKLINT=no MKPICINSTALL=no MKPROFILE=no . 1114.Sy MKLINT=no MKPICINSTALL=no MKPROFILE=no .
1103.DFLTy 1115.DFLTy
1104. 1116.
1105.It Sy MKLINT 1117.It Sy MKLINT
1106.YorN 1118.YorN
1107Indicates whether 1119Indicates whether
1108.Xr lint 1 1120.Xr lint 1
1109will be run against portions of the 1121will be run against portions of the
1110.Nx 1122.Nx
1111source code during the build, and whether lint libraries will be 1123source code during the build, and whether lint libraries will be
1112installed into 1124installed into
1113.Sy DESTDIR Ns Pa /usr/libdata/lint . 1125.Sy DESTDIR Ns Pa /usr/libdata/lint .
1114.NODEF NOLINT 1126.NODEF NOLINT
1115.NOVAR MKLINKLIB=no 1127.NOVAR MKLINKLIB=no
1116.DFLTn 1128.DFLTn
1117. 1129.
1118.It Sy MKLLVM 1130.It Sy MKLLVM
1119.YorN 1131.YorN
1120Indicates whether 1132Indicates whether
1121.Xr clang 1 1133.Xr clang 1
1122is installed as a host tool and target compiler. 1134is installed as a host tool and target compiler.
1123.Pp 1135.Pp
1124If 1136If
1125.Dq yes , 1137.Dq yes ,
1126acts as 1138acts as
1127.Sy MKLIBCXX=yes . 1139.Sy MKLIBCXX=yes .
1128.Pp 1140.Pp
1129.Em Note : 1141.Em Note :
1130Use of 1142Use of
1131.Xr clang 1 1143.Xr clang 1
1132as the system compiler is controlled by 1144as the system compiler is controlled by
1133.Sy HAVE_LLVM . 1145.Sy HAVE_LLVM .
1134.DFLTn 1146.DFLTn
1135. 1147.
1136.It Sy MKLLVMRT 1148.It Sy MKLLVMRT
1137.YorN 1149.YorN
1138Indicates whether to build the LLVM PIC libraries necessary 1150Indicates whether to build the LLVM PIC libraries necessary
1139for the various Mesa backend and the native JIT of the target 1151for the various Mesa backend and the native JIT of the target
1140architecture, if supported. 1152architecture, if supported.
1141(Radeon R300 and newer, LLVMPIPE for most.) 1153(Radeon R300 and newer, LLVMPIPE for most.)
1142.DFLT 1154.DFLT
1143If 1155If
1144.Sy MKX11=yes 1156.Sy MKX11=yes
1145and 1157and
1146.Sy HAVE_MESA_VER>=19 , 1158.Sy HAVE_MESA_VER>=19 ,
1147.Dq yes 1159.Dq yes
1148on 1160on
1149.Sy aarch64 , 1161.Sy aarch64 ,
1150.Sy amd64 , 1162.Sy amd64 ,
1151and 1163and
1152.Sy i386 ; 1164.Sy i386 ;
1153otherwise 1165otherwise
1154.Dq no . 1166.Dq no .
1155. 1167.
1156.It Sy MKLVM 1168.It Sy MKLVM
1157.YorN 1169.YorN
1158If not 1170If not
1159.Dq no , 1171.Dq no ,
1160build and install the logical volume manager. 1172build and install the logical volume manager.
1161.DFLTy 1173.DFLTy
1162. 1174.
1163.It Sy MKMAKEMANDB 1175.It Sy MKMAKEMANDB
1164.YorN 1176.YorN
1165Indicates if the whatis tools 1177Indicates if the whatis tools
1166.Xr ( apropos 1 , 1178.Xr ( apropos 1 ,
1167.Xr whatis 1 , 1179.Xr whatis 1 ,
1168.Xr getNAME 8 , 1180.Xr getNAME 8 ,
1169.Xr makemandb 8 , 1181.Xr makemandb 8 ,
1170and 1182and
1171.Xr makewhatis 8 ) , 1183.Xr makewhatis 8 ) ,
1172should be built, installed, and used to 1184should be built, installed, and used to
1173create and install the 1185create and install the
1174.Pa whatis.db . 1186.Pa whatis.db .
1175.DFLTy 1187.DFLTy
1176. 1188.
1177.It Sy MKMAN 1189.It Sy MKMAN
1178.YorN 1190.YorN
1179Indicates whether manual pages will be installed. 1191Indicates whether manual pages will be installed.
1180.NODEF NOMAN 1192.NODEF NOMAN
1181.NOVAR MKSHARE=no 1193.NOVAR MKSHARE=no
1182.Pp 1194.Pp
1183If 1195If
1184.Dq no , 1196.Dq no ,
1185acts as 1197acts as
1186.Sy MKCATPAGES=no MKHTML=no . 1198.Sy MKCATPAGES=no MKHTML=no .
1187.DFLTy 1199.DFLTy
1188. 1200.
1189.It Sy MKMANDOC 1201.It Sy MKMANDOC
1190.YorN 1202.YorN
1191Indicates whether 1203Indicates whether
1192.Xr mandoc 1 1204.Xr mandoc 1
1193will be built and installed, and used to create and install 1205will be built and installed, and used to create and install
1194catman and HTML pages. 1206catman and HTML pages.
1195.Pp 1207.Pp
1196If 1208If
1197.Dq no , 1209.Dq no ,
1198use 1210use
1199.Xr groff 1 1211.Xr groff 1
1200instead of 1212instead of
1201.Xr mandoc 1 . 1213.Xr mandoc 1 .
1202.NODEF NOMANDOC No or Sy NOMANDOC . Ns Ar target No (for a given Xr make 1 target Ar target ) 1214.NODEF NOMANDOC No or Sy NOMANDOC . Ns Ar target No (for a given Xr make 1 target Ar target )
1203.Pp 1215.Pp
1204Only used if 1216Only used if
1205.Sy MKMAN=yes . 1217.Sy MKMAN=yes .
1206.DFLTy 1218.DFLTy
1207. 1219.
1208.It Sy MKMANZ 1220.It Sy MKMANZ
1209.YorN 1221.YorN
1210Indicates whether manual pages should be compressed with 1222Indicates whether manual pages should be compressed with
1211.Xr gzip 1 1223.Xr gzip 1
1212at installation time. 1224at installation time.
1213.Pp 1225.Pp
1214Only used if 1226Only used if
1215.Sy MKMAN=yes . 1227.Sy MKMAN=yes .
1216.DFLTn 1228.DFLTn
1217. 1229.
1218.It Sy MKMDNS 1230.It Sy MKMDNS
1219.YorN 1231.YorN
1220Indicates whether the mDNS (Multicast DNS) infrastructure 1232Indicates whether the mDNS (Multicast DNS) infrastructure
1221(libraries and support programs) will be built and installed. 1233(libraries and support programs) will be built and installed.
1222.DFLTy 1234.DFLTy
1223. 1235.
1224.It Sy MKNLS 1236.It Sy MKNLS
1225.YorN 1237.YorN
1226Indicates whether Native Language System (NLS) locale zone files will be 1238Indicates whether Native Language System (NLS) locale zone files will be
1227built and installed. 1239built and installed.
1228.NODEF NONLS 1240.NODEF NONLS
1229.NOVAR MKSHARE=no 1241.NOVAR MKSHARE=no
1230.DFLTy 1242.DFLTy
1231. 1243.
1232.It Sy MKNOUVEAUFIRMWARE 1244.It Sy MKNOUVEAUFIRMWARE
1233.YorN 1245.YorN
1234Indicates whether to install the 1246Indicates whether to install the
1235.Pa /libdata/firmware/nouveau 1247.Pa /libdata/firmware/nouveau
1236directory, which is necessary for the 1248directory, which is necessary for the
1237.Xr nouveau 4 1249.Xr nouveau 4
1238NVIDIA video driver. 1250NVIDIA video driver.
1239.DFLT 1251.DFLT
1240.Dq yes 1252.Dq yes
1241on 1253on
1242.Sy aarch64 , 1254.Sy aarch64 ,
1243.Sy i386 , 1255.Sy i386 ,
1244and 1256and
1245.Sy x86_64 , 1257.Sy x86_64 ,
1246.Dq no 1258.Dq no
1247on other platforms. 1259on other platforms.
1248. 1260.
1249.It Sy MKNPF 1261.It Sy MKNPF
1250.YorN 1262.YorN
1251Indicates whether the NPF packet filter is to be built and installed. 1263Indicates whether the NPF packet filter is to be built and installed.
1252.DFLTy 1264.DFLTy
1253. 1265.
1254.It Sy MKNSD 1266.It Sy MKNSD
1255.YorN 1267.YorN
1256Indicates whether the Name Server Daemon (NSD) is to be built and installed. 1268Indicates whether the Name Server Daemon (NSD) is to be built and installed.
1257.DFLTn 1269.DFLTn
1258. 1270.
1259.It Sy MKOBJ 1271.It Sy MKOBJ
1260.YorN 1272.YorN
1261Indicates whether object directories will be created when running 1273Indicates whether object directories will be created when running
1262.Dq make obj . 1274.Dq make obj .
1263If 1275If
1264.Dq no , 1276.Dq no ,
1265then all built files will be located inside the regular source tree. 1277then all built files will be located inside the regular source tree.
1266.NODEF NOOBJ 1278.NODEF NOOBJ
1267.Pp 1279.Pp
1268If 1280If
1269.Dq no , 1281.Dq no ,
1270acts as 1282acts as
1271.Sy MKOBJDIRS=no . 1283.Sy MKOBJDIRS=no .
1272.Pp 1284.Pp
1273.Em Note : 1285.Em Note :
1274Setting 1286Setting
1275.Sy MKOBJ 1287.Sy MKOBJ
1276to 1288to
1277.Dq no 1289.Dq no
1278is not recommended and may cause problems when updating the tree with 1290is not recommended and may cause problems when updating the tree with
1279.Xr cvs 1 . 1291.Xr cvs 1 .
1280.DFLTy 1292.DFLTy
1281. 1293.
1282.It Sy MKOBJDIRS 1294.It Sy MKOBJDIRS
1283.YorN 1295.YorN
1284Indicates whether object directories will be created automatically 1296Indicates whether object directories will be created automatically
1285(via a 1297(via a
1286.Dq make obj 1298.Dq make obj
1287pass) at the start of a build. 1299pass) at the start of a build.
1288.NOVAR MKOBJ=no 1300.NOVAR MKOBJ=no
1289.Pp 1301.Pp
1290.Em Note : 1302.Em Note :
1291If using 1303If using
1292.Sy build.sh , 1304.Sy build.sh ,
1293the default is 1305the default is
1294.Dq yes . 1306.Dq yes .
1295This may be set to 1307This may be set to
1296.Dq no 1308.Dq no
1297by giving 1309by giving
1298.Sy build.sh 1310.Sy build.sh
1299the 1311the
1300.Fl o 1312.Fl o
1301option. 1313option.
1302.DFLTn 1314.DFLTn
1303. 1315.
1304.It Sy MKPAM 1316.It Sy MKPAM
1305.YorN 1317.YorN
1306Indicates whether the 1318Indicates whether the
1307.Xr pam 8 1319.Xr pam 8
1308framework (libraries and support files) will be built and installed. 1320framework (libraries and support files) will be built and installed.
1309The pre-PAM code is not supported and may be removed in the future. 1321The pre-PAM code is not supported and may be removed in the future.
1310.DFLTy 1322.DFLTy
1311. 1323.
1312.It Sy MKPCC 1324.It Sy MKPCC
1313.YorN 1325.YorN
1314Indicates whether 1326Indicates whether
1315.Xr pcc 1 1327.Xr pcc 1
1316or any related libraries 1328or any related libraries
1317.Pq Sy libpcc , libpccsoftfloat 1329.Pq Sy libpcc , libpccsoftfloat
1318will be built and installed. 1330will be built and installed.
1319.DFLTn 1331.DFLTn
1320. 1332.
1321.It Sy MKPF 1333.It Sy MKPF
1322.YorN 1334.YorN
1323Indicates whether the 1335Indicates whether the
1324.Xr pf 4 1336.Xr pf 4
1325programs, headers, and LKM will be built and installed. 1337programs, headers, and LKM will be built and installed.
1326.DFLTy 1338.DFLTy
1327. 1339.
1328.It Sy MKPIC 1340.It Sy MKPIC
1329.YorN 1341.YorN
1330Indicates whether shared objects and libraries will be created and 1342Indicates whether shared objects and libraries will be created and
1331installed. 1343installed.
1332If 1344If
1333.Dq no , 1345.Dq no ,
1334the entire built system will be statically linked. 1346the entire built system will be statically linked.
1335.NODEF NOPIC 1347.NODEF NOPIC
1336.Pp 1348.Pp
1337If 1349If
1338.Dq no , 1350.Dq no ,
1339acts as 1351acts as
1340.Sy MKPICLIB=no . 1352.Sy MKPICLIB=no .
1341.DFLT 1353.DFLT
1342.Dq no 1354.Dq no
1343on 1355on
1344.Sy m68000 ; 1356.Sy m68000 ;
1345.Dq yes 1357.Dq yes
1346on other platforms. 1358on other platforms.
1347. 1359.
1348.It Sy MKPICINSTALL 1360.It Sy MKPICINSTALL
1349.YorN 1361.YorN
1350Indicates whether the 1362Indicates whether the
1351.Xr ar 1 1363.Xr ar 1
1352format libraries 1364format libraries
1353.Sy ( lib*_pic.a ) , 1365.Sy ( lib*_pic.a ) ,
1354used to generate shared libraries, are installed. 1366used to generate shared libraries, are installed.
1355.NODEF NOPICINSTALL 1367.NODEF NOPICINSTALL
1356.NOVAR MKLINKLIB=no 1368.NOVAR MKLINKLIB=no
1357.DFLTn 1369.DFLTn
1358. 1370.
1359.It Sy MKPICLIB 1371.It Sy MKPICLIB
1360.YorN 1372.YorN
1361Indicates whether the 1373Indicates whether the
1362.Xr ar 1 1374.Xr ar 1
1363format libraries 1375format libraries
1364.Sy ( lib*_pic.a ) , 1376.Sy ( lib*_pic.a ) ,
1365used to generate shared libraries. 1377used to generate shared libraries.
1366.NOVAR MKPIC=no 1378.NOVAR MKPIC=no
1367.DFLT 1379.DFLT
1368.Dq no 1380.Dq no
1369on 1381on
1370.Sy vax ; 1382.Sy vax ;
1371.Dq yes 1383.Dq yes
1372on other platforms. 1384on other platforms.
1373. 1385.
1374.It Sy MKPIE 1386.It Sy MKPIE
1375.YorN 1387.YorN
1376Indicates whether Position Independent Executables (PIE) 1388Indicates whether Position Independent Executables (PIE)
1377will be built and installed. 1389will be built and installed.
1378.NODEF NOPIE 1390.NODEF NOPIE
1379.NOVAR COVERITY_TOP_CONFIG No is defined 1391.NOVAR COVERITY_TOP_CONFIG No is defined
1380.Pp 1392.Pp
1381This is disabled internally for standalone programs in 1393This is disabled internally for standalone programs in
1382.Pa /usr/mdec . 1394.Pa /usr/mdec .
1383.DFLT 1395.DFLT
1384.Dq yes 1396.Dq yes
1385on 1397on
1386.Sy aarch64 , 1398.Sy aarch64 ,
1387.Sy arm , 1399.Sy arm ,
1388.Sy i386 , 1400.Sy i386 ,
1389.Sy m68k , 1401.Sy m68k ,
1390.Sy mips , 1402.Sy mips ,
1391.Sy sh3 , 1403.Sy sh3 ,
1392.Sy sparc64 , 1404.Sy sparc64 ,
1393and 1405and
1394.Sy x86_64 ; 1406.Sy x86_64 ;
1395.Dq no 1407.Dq no
1396on other platforms. 1408on other platforms.
1397. 1409.
1398.It Sy MKPIGZGZIP 1410.It Sy MKPIGZGZIP
1399.YorN 1411.YorN
1400If 1412If
1401.Dq no , 1413.Dq no ,
1402the 1414the
1403.Xr pigz 1 1415.Xr pigz 1
1404utility is not installed as 1416utility is not installed as
1405.Xr gzip 1 . 1417.Xr gzip 1 .
1406.DFLTn 1418.DFLTn
1407. 1419.
1408.It Sy MKPOSTFIX 1420.It Sy MKPOSTFIX
1409.YorN 1421.YorN
1410Indicates whether Postfix will be built and installed. 1422Indicates whether Postfix will be built and installed.
1411.DFLTy 1423.DFLTy
1412. 1424.
1413.It Sy MKPROFILE 1425.It Sy MKPROFILE
1414.YorN 1426.YorN
1415Indicates whether profiled libraries 1427Indicates whether profiled libraries
1416.Sy ( lib*_p.a ) 1428.Sy ( lib*_p.a )
1417will be built and installed. 1429will be built and installed.
1418.NODEF NOPROFILE 1430.NODEF NOPROFILE
1419.NOVAR MKLINKLIB=no 1431.NOVAR MKLINKLIB=no
1420.DFLT 1432.DFLT
1421.Dq no 1433.Dq no
1422on 1434on
1423.Sy or1k , 1435.Sy or1k ,
1424.Sy riscv32 , 1436.Sy riscv32 ,
1425and 1437and
1426.Sy riscv64 1438.Sy riscv64
1427(due to toolchain problems with profiled code); 1439(due to toolchain problems with profiled code);
1428.Dq yes 1440.Dq yes
1429on other platforms. 1441on other platforms.
1430. 1442.
1431.It Sy MKRADEONFIRMWARE 1443.It Sy MKRADEONFIRMWARE
1432.YorN 1444.YorN
1433Indicates whether to install the 1445Indicates whether to install the
1434.Pa /libdata/firmware/radeon 1446.Pa /libdata/firmware/radeon
1435directory, which is necessary for the 1447directory, which is necessary for the
1436.Xr radeon 4 1448.Xr radeon 4
1437AMD RADEON GPU video driver. 1449AMD RADEON GPU video driver.
1438.DFLT 1450.DFLT
1439.Dq yes 1451.Dq yes
1440on 1452on
1441.Sy aarch64 , 1453.Sy aarch64 ,
1442.Sy i386 , 1454.Sy i386 ,
1443and 1455and
1444.Sy x86_64 , 1456.Sy x86_64 ,
1445.Dq no 1457.Dq no
1446on other platforms. 1458on other platforms.
1447. 1459.
1448.It Sy MKRELRO 1460.It Sy MKRELRO
1449Indicates whether to enable support for Relocation Read-Only (RELRO). 1461Indicates whether to enable support for Relocation Read-Only (RELRO).
1450Supported values: 1462Supported values:
1451.Bl -tag -width partial 1463.Bl -tag -width partial
1452.It partial 1464.It partial
1453Set the non-PLT GOT to read-only. 1465Set the non-PLT GOT to read-only.
1454.It full 1466.It full
1455Set the non-PLT GOT to read-only and 1467Set the non-PLT GOT to read-only and
1456also force immediate symbol binding, 1468also force immediate symbol binding,
1457unless 1469unless
1458.Sy NOFULLRELRO 1470.Sy NOFULLRELRO
1459is defined and not 1471is defined and not
1460.Dq no 1472.Dq no
1461(usually in the Makefile before any 1473(usually in the Makefile before any
1462.Xr make 1 1474.Xr make 1
1463.Cm \&.include 1475.Cm \&.include
1464directives). 1476directives).
1465.It no 1477.It no
1466Disable RELRO. 1478Disable RELRO.
1467.El 1479.El
1468.NODEF NORELRO 1480.NODEF NORELRO
1469.DFLT 1481.DFLT
1470.Dq partial 1482.Dq partial
1471on 1483on
1472.Sy aarch64 , 1484.Sy aarch64 ,
1473.Sy i386 , 1485.Sy i386 ,
1474and 1486and
1475.Sy x86_64 ; 1487.Sy x86_64 ;
1476.Dq no 1488.Dq no
1477on other platforms. 1489on other platforms.
1478. 1490.
1479.It Sy MKREPRO 1491.It Sy MKREPRO
1480.YorN 1492.YorN
1481Indicates whether builds are to be reproducible. 1493Indicates whether builds are to be reproducible.
1482If 1494If
1483.Dq yes , 1495.Dq yes ,
1484two builds from the same source tree will produce the same build 1496two builds from the same source tree will produce the same build
1485results. 1497results.
1486.Pp 1498.Pp
1487Used as the default for 1499Used as the default for
1488.Sy MKARZERO . 1500.Sy MKARZERO .
1489.Pp 1501.Pp
1490.Em Note : 1502.Em Note :
1491This may be set to 1503This may be set to
1492.Dq yes 1504.Dq yes
1493by giving 1505by giving
1494.Sy build.sh 1506.Sy build.sh
1495the 1507the
1496.Fl P 1508.Fl P
1497option. 1509option.
1498.DFLTn 1510.DFLTn
1499. 1511.
1500.It Sy MKREPRO_TIMESTAMP 1512.It Sy MKREPRO_TIMESTAMP
1501Unix timestamp. 1513Unix timestamp.
1502When 1514When
1503.Sy MKREPRO 1515.Sy MKREPRO
1504is set, the timestamp of all files in the sets will be set 1516is set, the timestamp of all files in the sets will be set
1505to this value. 1517to this value.
1506.Pp 1518.Pp
1507.Em Note : 1519.Em Note :
1508This may be set automatically to the latest source tree timestamp 1520This may be set automatically to the latest source tree timestamp
1509using 1521using
1510.Xr cvslatest 1 1522.Xr cvslatest 1
1511by giving 1523by giving
1512.Sy build.sh 1524.Sy build.sh
1513the 1525the
1514.Fl P 1526.Fl P
1515option. 1527option.
1516.DFLTu 1528.DFLTu
1517. 1529.
1518.It Sy MKRUMP 1530.It Sy MKRUMP
1519.YorN 1531.YorN
1520Indicates whether the 1532Indicates whether the
1521.Xr rump 3 1533.Xr rump 3
1522headers, libraries, and programs are to be installed. 1534headers, libraries, and programs are to be installed.
1523.NOVAR COVERITY_TOP_CONFIG No is defined 1535.NOVAR COVERITY_TOP_CONFIG No is defined
1524.DFLTy 1536.DFLTy
1525. 1537.
1526.It Sy MKSANITIZER 1538.It Sy MKSANITIZER
1527.YorN 1539.YorN
1528Indicates whether to use the sanitizer to compile userland programs, 1540Indicates whether to use the sanitizer to compile userland programs,
1529using the sanitizer defined by 1541using the sanitizer defined by
1530.Sy USE_SANITIZER . 1542.Sy USE_SANITIZER .
1531.NODEF NOSANITIZER 1543.NODEF NOSANITIZER
1532.DFLTn 1544.DFLTn
1533. 1545.
1534.It Sy MKSHARE 1546.It Sy MKSHARE
1535.YorN 1547.YorN
1536Indicates whether files destined to reside in 1548Indicates whether files destined to reside in
1537.Sy DESTDIR Ns Pa /usr/share 1549.Sy DESTDIR Ns Pa /usr/share
1538will be built and installed. 1550will be built and installed.
1539.NODEF NOSHARE 1551.NODEF NOSHARE
1540.Pp 1552.Pp
1541If 1553If
1542.Dq no , 1554.Dq no ,
1543acts as 1555acts as
1544.Sy MKCATPAGES=no MKDOC=no MKINFO=no MKHTML=no MKMAN=no MKNLS=no . 1556.Sy MKCATPAGES=no MKDOC=no MKINFO=no MKHTML=no MKMAN=no MKNLS=no .
1545.DFLTy 1557.DFLTy
1546. 1558.
1547.It Sy MKSKEY 1559.It Sy MKSKEY
1548.YorN 1560.YorN
1549Indicates whether the S/key infrastructure 1561Indicates whether the S/key infrastructure
1550(libraries and support programs) will be built and installed. 1562(libraries and support programs) will be built and installed.
1551.DFLTy 1563.DFLTy
1552. 1564.
1553.It Sy MKSLJIT 1565.It Sy MKSLJIT
1554.YorN 1566.YorN
1555Indicates whether to enable support for sljit 1567Indicates whether to enable support for sljit
1556(stack-less platform-independent Just in Time (JIT) compiler) 1568(stack-less platform-independent Just in Time (JIT) compiler)
1557private library and tests. 1569private library and tests.
1558.DFLT 1570.DFLT
1559.Dq yes 1571.Dq yes
1560on 1572on
1561.Sy i386 , 1573.Sy i386 ,
1562.Sy sparc , 1574.Sy sparc ,
1563and 1575and
1564.Sy x86_64 ; 1576.Sy x86_64 ;
1565.Dq no 1577.Dq no
1566on other platforms. 1578on other platforms.
1567. 1579.
1568.It Sy MKSOFTFLOAT 1580.It Sy MKSOFTFLOAT
1569.YorN 1581.YorN
1570Indicates whether the compiler generates output containing 1582Indicates whether the compiler generates output containing
1571library calls for floating point and possibly soft-float library 1583library calls for floating point and possibly soft-float library
1572support. 1584support.
1573.Pp 1585.Pp
1574Forced to 1586Forced to
1575.Dq yes 1587.Dq yes
1576on 1588on
1577.Sy arm 1589.Sy arm
1578without 1590without
1579.Sq hf , 1591.Sq hf ,
1580.Sy coldfire , 1592.Sy coldfire ,
1581.Sy emips , 1593.Sy emips ,
1582.Sy or1k , 1594.Sy or1k ,
1583and 1595and
1584.Sy sh3 . 1596.Sy sh3 .
1585.DFLT 1597.DFLT
1586.Dq yes 1598.Dq yes
1587on 1599on
1588.Sy mips64 ; 1600.Sy mips64 ;
1589.Dq no 1601.Dq no
1590on other platforms. 1602on other platforms.
1591. 1603.
1592.It Sy MKSTATICLIB 1604.It Sy MKSTATICLIB
1593.YorN 1605.YorN
1594Indicates whether the normal static libraries 1606Indicates whether the normal static libraries
1595.Sy ( lib*_g.a ) 1607.Sy ( lib*_g.a )
1596will be built and installed. 1608will be built and installed.
1597.NODEF NOSTATICLIB 1609.NODEF NOSTATICLIB
1598.DFLTy 1610.DFLTy
1599. 1611.
1600.It Sy MKSTATICPIE 1612.It Sy MKSTATICPIE
1601.YorN 1613.YorN
1602Indicates whether support for static PIE binaries 1614Indicates whether support for static PIE binaries
1603will be built and installed. 1615will be built and installed.
1604These binaries use a special support in crt0.o for 1616These binaries use a special support in crt0.o for
1605resolving relative relocations and require linker support. 1617resolving relative relocations and require linker support.
1606.DFLT 1618.DFLT
1607.Dq yes 1619.Dq yes
1608on 1620on
1609.Sy i386 1621.Sy i386
1610and 1622and
1611.Sy x86_64 ; 1623.Sy x86_64 ;
1612.Dq no 1624.Dq no
1613on other platforms. 1625on other platforms.
1614. 1626.
1615.It Sy MKSTRIPIDENT 1627.It Sy MKSTRIPIDENT
1616.YorN 1628.YorN
1617Indicates whether RCS IDs, for use with 1629Indicates whether RCS IDs, for use with
1618.Xr ident 1 , 1630.Xr ident 1 ,
1619should be stripped from program binaries and shared libraries. 1631should be stripped from program binaries and shared libraries.
1620.DFLTn 1632.DFLTn
1621. 1633.
1622.It Sy MKSTRIPSYM 1634.It Sy MKSTRIPSYM
1623.YorN 1635.YorN
1624Indicates whether all local symbols should be stripped from shared libraries. 1636Indicates whether all local symbols should be stripped from shared libraries.
1625If 1637If
1626.Dq yes , 1638.Dq yes ,
1627strip all local symbols from shared libraries; 1639strip all local symbols from shared libraries;
1628the effect is equivalent to the 1640the effect is equivalent to the
1629.Fl x 1641.Fl x
1630option of 1642option of
1631.Xr ld 1 . 1643.Xr ld 1 .
1632If 1644If
1633.Dq no , 1645.Dq no ,
1634strip only temporary local symbols; the effect is equivalent 1646strip only temporary local symbols; the effect is equivalent
1635to the 1647to the
1636.Fl X 1648.Fl X
1637option of 1649option of
1638.Xr ld 1 . 1650.Xr ld 1 .
1639Keeping non-temporary local symbols 1651Keeping non-temporary local symbols
1640such as static function names is useful on using DTrace for 1652such as static function names is useful on using DTrace for
1641userland libraries and getting a backtrace from a rump kernel 1653userland libraries and getting a backtrace from a rump kernel
1642loading shared libraries. 1654loading shared libraries.
1643.DFLTy 1655.DFLTy
1644. 1656.
1645.It Sy MKTEGRAFIRMWARE 1657.It Sy MKTEGRAFIRMWARE
1646.YorN 1658.YorN
1647Indicates whether to install the 1659Indicates whether to install the
1648.Pa /libdata/firmware/nvidia 1660.Pa /libdata/firmware/nvidia
1649directory, which is necessary for the 1661directory, which is necessary for the
1650NVIDIA Tegra XHCI driver. 1662NVIDIA Tegra XHCI driver.
1651.DFLT 1663.DFLT
1652.Dq yes 1664.Dq yes
1653on 1665on
1654.Sy evbarm ; 1666.Sy evbarm ;
1655.Dq no 1667.Dq no
1656on other platforms. 1668on other platforms.
1657. 1669.
1658.It Sy MKTPM 1670.It Sy MKTPM
1659.YorN 1671.YorN
1660Indicates whether to install the Trusted Platform Module (TPM) 1672Indicates whether to install the Trusted Platform Module (TPM)
1661infrastructure. 1673infrastructure.
1662.DFLTn 1674.DFLTn
1663. 1675.
1664.It Sy MKUNBOUND 1676.It Sy MKUNBOUND
1665.YorN 1677.YorN
1666Indicates whether the 1678Indicates whether the
1667.Xr unbound 8 1679.Xr unbound 8
1668DNS resolver will be built and installed. 1680DNS resolver will be built and installed.
1669.DFLTy 1681.DFLTy
1670. 1682.
1671.It Sy MKUNPRIVED 1683.It Sy MKUNPRIVED
1672.YorN 1684.YorN
1673Indicates whether an unprivileged install will occur. 1685Indicates whether an unprivileged install will occur.
1674The user, group, permissions, and file flags, will not be set on 1686The user, group, permissions, and file flags, will not be set on
1675the installed items; instead the information will be appended to 1687the installed items; instead the information will be appended to
1676a file called 1688a file called
1677.Pa METALOG 1689.Pa METALOG
1678in 1690in
1679.Sy DESTDIR . 1691.Sy DESTDIR .
1680The 1692The
1681.Pa METALOG 1693.Pa METALOG
1682contents are used during the generation of the distribution 1694contents are used during the generation of the distribution
1683tar files to ensure that the appropriate file ownership is stored. 1695tar files to ensure that the appropriate file ownership is stored.
1684This allows a non-root 1696This allows a non-root
1685.Sq "make install" . 1697.Sq "make install" .
1686.DFLTn 1698.DFLTn
1687. 1699.
1688.It Sy MKUPDATE 1700.It Sy MKUPDATE
1689.YorN 1701.YorN
1690Indicates whether all install operations intended to write to 1702Indicates whether all install operations intended to write to
1691.Sy DESTDIR 1703.Sy DESTDIR
1692will compare file timestamps before installing, and skip the install 1704will compare file timestamps before installing, and skip the install
1693phase if the destination files are up-to-date. 1705phase if the destination files are up-to-date.
1694.Pp 1706.Pp
1695For top-level builds this this implies the effects of 1707For top-level builds this this implies the effects of
1696.Sy NOCLEANDIR 1708.Sy NOCLEANDIR
1697(i.e., 1709(i.e.,
1698.Dq make cleandir 1710.Dq make cleandir
1699is avoided). 1711is avoided).
1700.Pp 1712.Pp
1701.Em Note : 1713.Em Note :
1702This may be set to 1714This may be set to
1703.Dq yes 1715.Dq yes
1704by giving 1716by giving
1705.Sy build.sh 1717.Sy build.sh
1706the 1718the
1707.Fl u 1719.Fl u
1708option. 1720option.
1709.DFLTn 1721.DFLTn
1710. 1722.
1711.It Sy MKX11 1723.It Sy MKX11
1712.YorN 1724.YorN
1713Indicates whether X11 will be built and installed from 1725Indicates whether X11 will be built and installed from
1714.Sy X11SRCDIR , 1726.Sy X11SRCDIR ,
1715and whether the X sets will be created. 1727and whether the X sets will be created.
1716.Pp 1728.Pp
1717.Em Note : 1729.Em Note :
1718If 1730If
1719.Dq yes , 1731.Dq yes ,
1720requires 1732requires
1721.Sy MKINET6=yes . 1733.Sy MKINET6=yes .
1722.DFLTn 1734.DFLTn
1723. 1735.
1724.It Sy MKX11FONTS 1736.It Sy MKX11FONTS
1725.YorN 1737.YorN
1726If 1738If
1727.Dq no , 1739.Dq no ,
1728do not build and install the X fonts. 1740do not build and install the X fonts.
1729The xfont set is still created but will be empty. 1741The xfont set is still created but will be empty.
1730.Pp 1742.Pp
1731Only used if 1743Only used if
1732.Sy MKX11=yes . 1744.Sy MKX11=yes .
1733.DFLTy 1745.DFLTy
1734. 1746.
1735.It Sy MKX11MOTIF 1747.It Sy MKX11MOTIF
1736.YorN 1748.YorN
1737If 1749If
1738.Dq yes , 1750.Dq yes ,
1739build the native Xorg libGLw with Motif stubs. 1751build the native Xorg libGLw with Motif stubs.
1740Requires that Motif can be found via 1752Requires that Motif can be found via
1741.Sy X11MOTIFPATH . 1753.Sy X11MOTIFPATH .
1742.DFLTn 1754.DFLTn
1743. 1755.
1744.It Sy MKXORG_SERVER 1756.It Sy MKXORG_SERVER
1745.YorN 1757.YorN
1746Indicates whether the 1758Indicates whether the
1747.Xr Xorg 7 1759.Xr Xorg 7
1748X server and drivers will be built and installed. 1760X server and drivers will be built and installed.
1749.DFLT 1761.DFLT
1750.Dq yes 1762.Dq yes
1751on 1763on
1752.Sy alpha , 1764.Sy alpha ,
1753.Sy amd64 , 1765.Sy amd64 ,
1754.Sy amiga , 1766.Sy amiga ,
1755.Sy bebox , 1767.Sy bebox ,
1756.Sy cats , 1768.Sy cats ,
1757.Sy dreamcast , 1769.Sy dreamcast ,
1758.Sy ews4800mips , 1770.Sy ews4800mips ,
1759.Sy evbarm , 1771.Sy evbarm ,
1760.Sy evbmips , 1772.Sy evbmips ,
1761.Sy evbppc , 1773.Sy evbppc ,
1762.Sy hp300 , 1774.Sy hp300 ,
1763.Sy hpcarm , 1775.Sy hpcarm ,
1764.Sy hpcmips , 1776.Sy hpcmips ,
1765.Sy hpcsh , 1777.Sy hpcsh ,
1766.Sy hppa , 1778.Sy hppa ,
1767.Sy i386 , 1779.Sy i386 ,
1768.Sy ibmnws , 1780.Sy ibmnws ,