1162 lines
22 KiB
Groff
1162 lines
22 KiB
Groff
.\" $NetBSD: mk.conf.5,v 1.97 2022/07/09 08:27:35 nia Exp $
|
|
.\"
|
|
.\" Copyright (c) 1999-2003 The NetBSD Foundation, Inc.
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" This code is derived from software contributed to The NetBSD Foundation
|
|
.\" by Luke Mewburn.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
|
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
|
.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
|
.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
|
.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
.\" POSSIBILITY OF SUCH DAMAGE.
|
|
.\"
|
|
.Dd July 9, 2022
|
|
.Dt MK.CONF 5
|
|
.Os
|
|
.\" turn off hyphenation
|
|
.hym 999
|
|
.
|
|
.Sh NAME
|
|
.Nm mk.conf
|
|
.Nd make configuration file
|
|
.
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
file overrides various parameters used during the build of the system.
|
|
.Pp
|
|
Listed below are the
|
|
.Nm
|
|
variables that may be set, the values to which each may be set,
|
|
a brief description of what each variable does, and a reference to
|
|
relevant manual pages.
|
|
.
|
|
.Ss NetBSD System variables
|
|
.
|
|
.de YorN
|
|
Can be set to
|
|
.Dq yes
|
|
or
|
|
.Dq no .
|
|
..
|
|
.de DFLT
|
|
.Pp
|
|
.Em Default :
|
|
..
|
|
.de DFLTu
|
|
.DFLT
|
|
Unset.
|
|
..
|
|
.de DFLTy
|
|
.DFLT
|
|
.Dq yes
|
|
..
|
|
.de DFLTn
|
|
.DFLT
|
|
.Dq no
|
|
..
|
|
.Bl -tag -width MKDYNAMICROOT
|
|
.
|
|
.It Sy NETBSDSRCDIR
|
|
The path to the top level of the
|
|
.Nx
|
|
sources.
|
|
If
|
|
.Xr make 1
|
|
is run from within the
|
|
.Nx
|
|
source tree, the default is the top
|
|
level of that tree (as determined by the presence of
|
|
.Pa build.sh
|
|
and
|
|
.Pa tools/ ) ,
|
|
otherwise
|
|
.Sy BSDSRCDIR
|
|
will be used.
|
|
.
|
|
.It Sy BSDOBJDIR
|
|
The real path to the
|
|
.Sq obj
|
|
tree for the
|
|
.Nx
|
|
source tree.
|
|
.DFLT
|
|
.Pa /usr/obj
|
|
.
|
|
.It Sy BSDSRCDIR
|
|
The real path to the
|
|
.Nx
|
|
source tree.
|
|
.DFLT
|
|
.Pa /usr/src
|
|
.
|
|
.It Sy BUILD
|
|
If defined,
|
|
.Sq "make install"
|
|
checks that the targets in the source directories are up-to-date and
|
|
re-makes them if they are out of date, instead of blindly trying to install
|
|
out of date or non-existent targets.
|
|
.DFLTu
|
|
.
|
|
.It Sy BUILDID
|
|
Identifier for the build.
|
|
The identifier will be appended to
|
|
object directory names, and can be consulted in the
|
|
.Xr make 1
|
|
configuration file in order to set additional build parameters,
|
|
such as compiler flags.
|
|
.DFLTu
|
|
.
|
|
.It Sy COPTS
|
|
Extra options for the C compiler.
|
|
Should be appended to (e.g.,
|
|
.Sy COPTS+=-g ) ,
|
|
rather than explicitly set.
|
|
Note that
|
|
.Sy CPUFLAGS ,
|
|
not
|
|
.Sy COPTS ,
|
|
should be used for
|
|
compiler flags that select CPU-related options.
|
|
Also note that
|
|
.Sy CFLAGS
|
|
should never be set in
|
|
.Nm .
|
|
.
|
|
.It Sy CPUFLAGS
|
|
Additional flags passed to the compiler/assembler to select
|
|
CPU instruction set options, CPU tuning options, etc.
|
|
Such options should not be specified in
|
|
.Sy COPTS ,
|
|
because some parts of the build process need to override
|
|
CPU-related compiler options.
|
|
.
|
|
.It Sy DESTDIR
|
|
Directory to contain the built
|
|
.Nx
|
|
system.
|
|
If set, special options are passed to the compilation tools to
|
|
prevent their default use of the host system's
|
|
.Sy /usr/include , /usr/lib ,
|
|
and so forth.
|
|
This pathname should
|
|
.Em not
|
|
end with a slash
|
|
.Pq /
|
|
character (for installation into the system's root directory, set
|
|
.Sy DESTDIR
|
|
to an empty string).
|
|
The directory must reside on a file system which supports long file
|
|
names and hard links.
|
|
.DFLT
|
|
Empty string if
|
|
.Sy USETOOLS
|
|
is
|
|
.Dq yes ;
|
|
unset otherwise.
|
|
.Pp
|
|
.Em Note :
|
|
.Sy build.sh
|
|
will provide a default of
|
|
.Pa destdir. Ns Sy MACHINE
|
|
(in the top-level
|
|
.Sy .OBJDIR )
|
|
unless run in
|
|
.Sq expert
|
|
mode
|
|
.
|
|
.It Sy KERNEL_DIR No Pq experimental
|
|
.YorN
|
|
Indicates if a top-level directory
|
|
.Sy /netbsd/
|
|
is created.
|
|
If
|
|
.Dq yes ,
|
|
the directory will contain a kernel file
|
|
.Pa /netbsd/kernel
|
|
and a corresponding modules directory
|
|
.Pa /netbsd/modules/ .
|
|
System bootstrap procedures will be modified to search for the kernel
|
|
and modules in the
|
|
.Pa /netbsd/
|
|
directory.
|
|
This is intended to simplify system upgrade and rollback procedures by
|
|
keeping the kernel and its associated modules together in one place.
|
|
.Pp
|
|
If
|
|
.Dq no ,
|
|
the kernel file will be stored in
|
|
.Pa /netbsd
|
|
and the modules will be stored within the
|
|
.Pa /stand/${ARCH}/
|
|
directory hierarchy.
|
|
.Pp
|
|
The
|
|
.Sy KERNEL_DIR
|
|
option is a work-in-progress, and is highly experimental.
|
|
It is also subject to change without notice.
|
|
.DFLTn
|
|
.It Sy MAKEVERBOSE
|
|
Level of verbosity of status messages.
|
|
Supported values:
|
|
.Bl -tag -width xxx
|
|
.It 0
|
|
No descriptive messages or commands executed by
|
|
.Xr make 1
|
|
are shown.
|
|
.It 1
|
|
Brief messages are shown describing what is being done,
|
|
but the actual commands executed by
|
|
.Xr make 1
|
|
are not displayed.
|
|
.It 2
|
|
Descriptive messages are shown as above (prefixed with a
|
|
.Sq # ) ,
|
|
and ordinary commands performed by
|
|
.Xr make 1
|
|
are displayed.
|
|
.It 3
|
|
In addition to the above, all commands performed by
|
|
.Xr make 1
|
|
are displayed, even if they would ordinarily have been hidden
|
|
through use of the
|
|
.Dq \&@
|
|
prefix in the relevant makefile.
|
|
.It 4
|
|
In addition to the above, commands executed by
|
|
.Xr make 1
|
|
are traced through use of the
|
|
.Xr sh 1
|
|
.Dq Fl x
|
|
flag.
|
|
.El
|
|
.DFLT
|
|
2
|
|
.
|
|
.It Sy MKATF
|
|
.YorN
|
|
Indicates whether the Automated Testing Framework is built and installed.
|
|
This also controls whether the
|
|
.Nx
|
|
test suite is built and installed,
|
|
as the tests rely on ATF and cannot be built without it.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKBINUTILS
|
|
.YorN
|
|
Indicates whether any of the binutils tools or libraries should be built.
|
|
That is, the libraries
|
|
.Sy libbfd ,
|
|
.Sy libiberty ,
|
|
or any of the things that depend upon them, e.g.
|
|
.Xr as 1 ,
|
|
.Xr ld 1 ,
|
|
.Xr dbsym 8 ,
|
|
or
|
|
.Xr mdsetimage 8 .
|
|
.DFLTy
|
|
.
|
|
.It Sy MKBSDTAR
|
|
.YorN
|
|
If
|
|
.Dq yes ,
|
|
.Sy libarchive Ns - Ns
|
|
based implementations of
|
|
.Xr cpio 1
|
|
and
|
|
.Xr tar 1
|
|
are built and installed.
|
|
If
|
|
.Dq no ,
|
|
.Xr pax 1
|
|
based frontends are used.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKCATPAGES
|
|
.YorN
|
|
Indicates whether preformatted plaintext manual pages will be created
|
|
and installed.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKCLEANSRC
|
|
.YorN
|
|
Indicates whether
|
|
.Sq "make clean"
|
|
and
|
|
.Sq "make cleandir"
|
|
will delete file names in
|
|
.Sy CLEANFILES
|
|
or
|
|
.Sy CLEANDIRFILES
|
|
from both the object directory,
|
|
.Sy .OBJDIR ,
|
|
and the source directory,
|
|
.Sy .SRCDIR .
|
|
.Pp
|
|
If
|
|
.Dq yes ,
|
|
then these file names will be deleted relative to both
|
|
.Sy .OBJDIR
|
|
and
|
|
.Sy .CURDIR .
|
|
If
|
|
.Dq no ,
|
|
then the deletion will be performed relative to
|
|
.Sy .OBJDIR
|
|
only.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKCLEANVERIFY
|
|
.YorN
|
|
Controls whether
|
|
.Sq "make clean"
|
|
and
|
|
.Sq "make cleandir"
|
|
will verify that files have been deleted.
|
|
If
|
|
.Dq yes ,
|
|
then file deletions will be verified using
|
|
.Xr ls 1 .
|
|
If
|
|
.Dq no ,
|
|
then file deletions will not be verified.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKCOMPAT
|
|
.YorN
|
|
Indicates whether support for multiple ABIs is to be built and
|
|
installed.
|
|
.DFLTy
|
|
on amd64, mips64 and sparc64,
|
|
.Dq no
|
|
on other architectures.
|
|
.
|
|
.It Sy MKCOMPLEX
|
|
.YorN
|
|
Indicates whether the
|
|
.Lb libm
|
|
is compiled with support for
|
|
.In complex.h .
|
|
.DFLTy
|
|
.
|
|
.It Sy MKCTF
|
|
.YorN
|
|
Indicates whether CTF tools are to be built and installed.
|
|
If yes, the tools will be used to generate and manipulate
|
|
CTF data of ELF binaries during build.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKCVS
|
|
.YorN
|
|
Indicates whether
|
|
.Xr cvs 1
|
|
is built.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKDEBUG
|
|
.YorN
|
|
Indicates whether separate debugging symbols should be installed into
|
|
.Sy DESTDIR Ns Pa /usr/libdata/debug .
|
|
.DFLTn
|
|
.
|
|
.It Sy MKDEBUGKERNEL
|
|
.YorN
|
|
Indicates whether debugging symbols will be built for kernels
|
|
by default; pretend as if
|
|
.Em makeoptions DEBUG="-g"
|
|
is specified in kernel configuration files.
|
|
This will also put the debug kernel in the kernel sets.
|
|
See
|
|
.Xr options 4
|
|
for details.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKDEBUGLIB
|
|
.YorN
|
|
Indicates whether debug libraries
|
|
.Sy ( lib*_g.a )
|
|
will be built and installed.
|
|
Debug libraries are compiled with
|
|
.Dq Li -g -DDEBUG .
|
|
.DFLTn
|
|
.
|
|
.It Sy MKDEBUGTOOLS
|
|
.YorN
|
|
Indicates whether debug information
|
|
.Sy ( lib*_g.a )
|
|
will be included in the build toolchain.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKDOC
|
|
.YorN
|
|
Indicates whether system documentation destined for
|
|
.Sy DESTDIR Ns Pa /usr/share/doc
|
|
will be installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKDTRACE
|
|
.YorN
|
|
Indicates whether the kernel modules, utilities and libraries for
|
|
.Xr dtrace 1
|
|
support are to be built and installed.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKDYNAMICROOT
|
|
.YorN
|
|
Indicates whether all programs should be dynamically linked,
|
|
and to install shared libraries required by
|
|
.Pa /bin
|
|
and
|
|
.Pa /sbin
|
|
and the shared linker
|
|
.Xr ld.elf_so 1
|
|
into
|
|
.Pa /lib .
|
|
If
|
|
.Sq no ,
|
|
link programs in
|
|
.Pa /bin
|
|
and
|
|
.Pa /sbin
|
|
statically.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKGCC
|
|
.YorN
|
|
Indicates whether
|
|
.Xr gcc 1
|
|
or any related libraries
|
|
.Pq Sy libg2c , libgcc , libobjc , libstdc++
|
|
are built.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKGCCCMDS
|
|
.YorN
|
|
Indicates whether
|
|
.Xr gcc 1
|
|
is built.
|
|
If
|
|
.Dq no ,
|
|
then
|
|
.Sy MKGCC
|
|
controls if the
|
|
GCC libraries are built.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKGDB
|
|
.YorN
|
|
Indicates whether
|
|
.Xr gdb 1
|
|
is built.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKHESIOD
|
|
.YorN
|
|
Indicates whether the Hesiod infrastructure
|
|
(libraries and support programs) is built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKHOSTOBJ
|
|
.YorN
|
|
If set to
|
|
.Dq yes ,
|
|
then for programs intended to be run on the compile host,
|
|
the name, release, and architecture of the host operating system
|
|
will be suffixed to the name of the object directory created by
|
|
.Dq make obj .
|
|
(This allows multiple host systems to compile
|
|
.Nx
|
|
for a single target.)
|
|
If set to
|
|
.Dq no ,
|
|
then programs built to be run on the compile host will use the same
|
|
object directory names as programs built to be run on the target.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKHTML
|
|
.YorN
|
|
Indicates whether the HTML manual pages are created and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKIEEEFP
|
|
.YorN
|
|
Indicates whether code for IEEE754/IEC60559 conformance is built.
|
|
Has no effect on most platforms.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKINET6
|
|
Indicates whether INET6 (IPv6) infrastructure
|
|
(libraries and support programs) is built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKINFO
|
|
.YorN
|
|
Indicates whether GNU Info files, used for the documentation for
|
|
most of the compilation tools, will be built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKIPFILTER
|
|
.YorN
|
|
Indicates whether the
|
|
.Xr ipf 4
|
|
programs, headers and other components will be built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKISCSI
|
|
.YorN
|
|
Indicates whether the iSCSI library and applications are
|
|
built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKKERBEROS
|
|
.YorN
|
|
Indicates whether the Kerberos v5 infrastructure
|
|
(libraries and support programs) is built and installed.
|
|
Caution: the default
|
|
.Xr pam 8
|
|
configuration requires that Kerberos be present even if not used.
|
|
Do not install a userland without Kerberos without also either
|
|
updating the
|
|
.Xr pam.conf 5
|
|
files or disabling PAM via
|
|
.Sy MKPAM .
|
|
Otherwise all logins will fail.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKKMOD
|
|
.YorN
|
|
Indicates whether kernel modules are built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKKYUA
|
|
.YorN
|
|
Indicates whether Kyua (the testing infrastructure used by
|
|
.Nx )
|
|
is built and installed.
|
|
Note that
|
|
.Em this does not control the installation of the tests themselves .
|
|
The tests rely on the ATF libraries and therefore their build is controlled
|
|
by the
|
|
.Sy MKATF
|
|
knob.
|
|
.DFLTn
|
|
until the import of Kyua is done and validated.
|
|
.
|
|
.It Sy MKLDAP
|
|
.YorN
|
|
Indicates whether the Lightweight Directory Access Protocol (LDAP)
|
|
infrastructure
|
|
(libraries and support programs) is built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKLINKLIB
|
|
.YorN
|
|
Indicates whether all of the shared library infrastructure is built.
|
|
If
|
|
.Sq no ,
|
|
prevents:
|
|
installation of the
|
|
.Sy *.a
|
|
libraries,
|
|
installation of the
|
|
.Sy *_pic.a
|
|
libraries on PIC systems,
|
|
building of
|
|
.Sy *.a
|
|
libraries on PIC systems,
|
|
or
|
|
installation of
|
|
.Sy .so
|
|
symlinks on ELF systems.
|
|
.DFLTy
|
|
.Pp
|
|
If
|
|
.Dq no ,
|
|
acts as
|
|
.Sy MKPICINSTALL=no MKPROFILE=no .
|
|
.
|
|
.It Sy MKLINT
|
|
.YorN
|
|
Indicates whether
|
|
.Xr lint 1
|
|
will be run against portions of the
|
|
.Nx
|
|
source code during the build, and whether lint libraries will be
|
|
installed into
|
|
.Sy DESTDIR Ns Pa /usr/libdata/lint .
|
|
.DFLTy
|
|
.
|
|
.It Sy MKLVM
|
|
.YorN
|
|
If not
|
|
.Dq no ,
|
|
build and install the logical volume manager.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKMAN
|
|
.YorN
|
|
Indicates whether manual pages will be installed.
|
|
.DFLTy
|
|
.Pp
|
|
If
|
|
.Dq no ,
|
|
acts as
|
|
.Sy MKCATPAGES=no MKHTML=no .
|
|
.
|
|
.It Sy MKMANZ
|
|
.YorN
|
|
Indicates whether manual pages should be compressed with
|
|
.Xr gzip 1
|
|
at installation time.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKMDNS
|
|
.YorN
|
|
Indicates whether the mDNS (Multicast DNS) infrastructure
|
|
(libraries and support programs) is built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKNLS
|
|
.YorN
|
|
Indicates whether Native Language System (NLS) locale zone files will be
|
|
built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKNOUVEAUFIRMWARE
|
|
.YorN
|
|
Indicates whether to install the
|
|
.Pa /libdata/firmware/nouveau
|
|
directory, which is necessary for the nvidia DRM driver.
|
|
.DFLT
|
|
Platform dependent.
|
|
.
|
|
.It Sy MKNPF
|
|
.YorN
|
|
Indicates whether the NPF packet filter is to be built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKOBJ
|
|
.YorN
|
|
Indicates whether object directories will be created when running
|
|
.Dq make obj .
|
|
If set to
|
|
.Dq no ,
|
|
then all built files will be located inside the regular source tree.
|
|
.DFLTy
|
|
.Pp
|
|
If
|
|
.Dq no ,
|
|
acts as
|
|
.Sy MKOBJDIRS=no .
|
|
.
|
|
.It Sy MKOBJDIRS
|
|
.YorN
|
|
Indicates whether object directories will be created automatically
|
|
(via a
|
|
.Dq make obj
|
|
pass) at the start of a build.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKPAM
|
|
.YorN
|
|
Indicates whether the
|
|
.Xr pam 8
|
|
framework (libraries and support files) is built.
|
|
The pre-PAM code is not supported and may be removed in the future.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKPCC
|
|
.YorN
|
|
Indicates whether
|
|
.Xr pcc 1
|
|
or any related libraries
|
|
.Pq Sy libpcc , libpccsoftfloat
|
|
are built.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKPF
|
|
.YorN
|
|
Indicates whether the
|
|
.Xr pf 4
|
|
programs, headers and LKM will be built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKPIC
|
|
.YorN
|
|
Indicates whether shared objects and libraries will be created and
|
|
installed.
|
|
If set to
|
|
.Dq no ,
|
|
the entire built system will be statically linked.
|
|
.DFLT
|
|
Platform dependent.
|
|
As of this writing, all platforms except
|
|
.Sy m68000
|
|
default to
|
|
.Dq yes .
|
|
.Pp
|
|
If
|
|
.Dq no ,
|
|
acts as
|
|
.Sy MKPICLIB=no .
|
|
.
|
|
.It Sy MKPICINSTALL
|
|
.YorN
|
|
Indicates whether the
|
|
.Xr ar 1
|
|
format libraries
|
|
.Sy ( lib*_pic.a ) ,
|
|
used to generate shared libraries, are installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKPICLIB
|
|
.YorN
|
|
Indicates whether the
|
|
.Xr ar 1
|
|
format libraries
|
|
.Sy ( lib*_pic.a ) ,
|
|
used to generate shared libraries.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKPIE
|
|
Indicates whether Position Independent Executables (PIE)
|
|
are built and installed.
|
|
.DFLT
|
|
Platform dependent.
|
|
.
|
|
.It Sy MKPIGZGZIP
|
|
.YorN
|
|
If
|
|
.Dq no ,
|
|
the
|
|
.Xr pigz 1
|
|
utility is not installed as
|
|
.Xr gzip 1 .
|
|
.DFLTn
|
|
.
|
|
.It Sy MKPOSTFIX
|
|
.YorN
|
|
Indicates whether Postfix is built.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKPROFILE
|
|
.YorN
|
|
Indicates whether profiled libraries
|
|
.Sy ( lib*_p.a )
|
|
will be built and installed.
|
|
.DFLT
|
|
.Dq yes ;
|
|
however, some platforms turn off
|
|
.Sy MKPROFILE
|
|
by default at times due to toolchain problems with profiled code.
|
|
.
|
|
.It Sy MKREPRO
|
|
.YorN
|
|
Indicates whether builds are to be reproducible.
|
|
If
|
|
.Dq yes ,
|
|
two builds from the same source tree will produce the same build
|
|
results.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKRADEONFIRMWARE
|
|
.YorN
|
|
Indicates whether to install the
|
|
.Pa /libdata/firmware/radeon
|
|
directory, which is necessary for the radeon DRM driver.
|
|
.DFLT
|
|
Platform dependent.
|
|
.
|
|
.It Sy MKRELRO
|
|
If
|
|
.Dq partial ,
|
|
set the non-PLT GOT to read-only.
|
|
If
|
|
.Dq full ,
|
|
also force immediate symbol binding.
|
|
.DFLT
|
|
Platform dependent.
|
|
.
|
|
.It Sy MKRUMP
|
|
.YorN
|
|
Indicates whether the
|
|
.Xr rump 3
|
|
headers, libraries and programs are to be installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKSHARE
|
|
.YorN
|
|
Indicates whether files destined to reside in
|
|
.Sy DESTDIR Ns Pa /usr/share
|
|
will be built and installed.
|
|
.DFLTy
|
|
.Pp
|
|
If
|
|
.Dq no ,
|
|
acts as
|
|
.Sy MKCATPAGES=no MKDOC=no MKINFO=no MKHTML=no MKMAN=no MKNLS=no .
|
|
.
|
|
.It Sy MKSKEY
|
|
.YorN
|
|
Indicates whether the S/key infrastructure
|
|
(libraries and support programs) is built.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKSOFTFLOAT
|
|
.YorN
|
|
Indicates whether the compiler generates output containing
|
|
library calls for floating point and possibly soft-float library
|
|
support.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKSTATICLIB
|
|
.YorN
|
|
Indicates whether the normal static libraries
|
|
.Sy ( lib*_g.a )
|
|
will be built and installed.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKSTRIPIDENT
|
|
.YorN
|
|
Indicates whether RCS IDs, for use with
|
|
.Xr ident 1 ,
|
|
should be stripped from program binaries and shared libraries.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKSTRIPSYM
|
|
.YorN
|
|
Indicates whether all local symbols should be stripped from shared libraries.
|
|
If
|
|
.Dq yes ,
|
|
strip all local symbols from shared libraries;
|
|
the affect is equivalent to the
|
|
.Fl x
|
|
option of
|
|
.Xr ld 1 .
|
|
If
|
|
.Dq no ,
|
|
strip only temporary local symbols; the affect is equivalent
|
|
to the
|
|
.Fl X
|
|
option of
|
|
.Xr ld 1 .
|
|
Keeping non-temporary local symbols
|
|
such as static function names is useful on using DTrace for
|
|
userland libraries and getting a backtrace from a rump kernel
|
|
loading shared libraries.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKUNPRIVED
|
|
.YorN
|
|
Indicates whether an unprivileged install will occur.
|
|
The user, group, permissions, and file flags, will not be set on
|
|
the installed item; instead the information will be appended to
|
|
a file called
|
|
.Pa METALOG
|
|
in
|
|
.Sy DESTDIR .
|
|
The contents of
|
|
.Pa METALOG
|
|
is used during the generation of the distribution tar files to ensure
|
|
that the appropriate file ownership is stored.
|
|
.DFLTn
|
|
.
|
|
.It Sy MKUPDATE
|
|
.YorN
|
|
Indicates whether all install operations intended to write to
|
|
.Sy DESTDIR
|
|
will compare file timestamps before installing, and skip the install
|
|
phase if the destination files are up-to-date.
|
|
This also has implications on full builds (see next subsection).
|
|
.DFLTn
|
|
.
|
|
.It Sy MKX11
|
|
.YorN
|
|
Indicates whether X11 is built and installed
|
|
(by descending into
|
|
.Pa src/external/mit/xorg ) .
|
|
.DFLTn
|
|
.
|
|
.It Sy MKX11FONTS
|
|
.YorN
|
|
If
|
|
.Dq no ,
|
|
do not build and install the X fonts.
|
|
.DFLTy
|
|
.
|
|
.It Sy X11MOTIFPATH
|
|
Location of the Motif installation to use if setting
|
|
.Sy MKX11MOTIF
|
|
to
|
|
.Dq yes .
|
|
.DFLT
|
|
.Pa /usr/pkg
|
|
.
|
|
.It Sy MKX11MOTIF
|
|
.YorN
|
|
If
|
|
.Dq yes ,
|
|
build the native Xorg libGLw with Motif stubs.
|
|
Requires that Motif can be found via
|
|
.Sy X11MOTIFPATH .
|
|
.DFLTn
|
|
.
|
|
.It Sy MKYP
|
|
.YorN
|
|
Indicates whether the YP (NIS) infrastructure
|
|
(libraries and support programs) is built.
|
|
.DFLTy
|
|
.
|
|
.It Sy MKZFS
|
|
.YorN
|
|
Indicates whether the ZFS kernel module and the utilities and
|
|
libraries used to manage the ZFS system are to be built.
|
|
.DFLTy
|
|
on amd64,
|
|
.Dq no
|
|
on other architectures.
|
|
.
|
|
.It Sy OBJMACHINE
|
|
If defined, creates objdirs of the form
|
|
.Pa obj. Ns Sy MACHINE ,
|
|
where
|
|
.Sy MACHINE
|
|
is the current architecture (as per
|
|
.Sq "uname -m" ) .
|
|
.
|
|
.It Sy RELEASEDIR
|
|
If set, specifies the directory to which a
|
|
.Xr release 7
|
|
layout will be written at the end of a
|
|
.Dq make release .
|
|
.DFLTu
|
|
.Pp
|
|
.Em Note :
|
|
.Sy build.sh
|
|
will provide a default of
|
|
.Pa releasedir
|
|
(in the top-level
|
|
.Sy .OBJDIR )
|
|
unless run in
|
|
.Sq expert
|
|
mode
|
|
.
|
|
.It Sy TOOLDIR
|
|
Directory to hold the host tools, once built.
|
|
This directory should be unique to a given host system and
|
|
.Nx
|
|
source tree.
|
|
(However, multiple targets may share the same
|
|
.Sy TOOLDIR ;
|
|
the target-dependent files have unique names.)
|
|
If unset, a default based
|
|
on the
|
|
.Xr uname 1
|
|
information of the host platform will be created in the
|
|
.Sy .OBJDIR
|
|
of
|
|
.Pa src .
|
|
.DFLTu
|
|
.
|
|
.It Sy USE_FORT
|
|
Indicates whether the so-called
|
|
.Dq FORTIFY_SOURCE
|
|
.Xr security 7
|
|
extensions are enabled; see
|
|
.Xr ssp 3
|
|
for details.
|
|
This imposes some performance penalty.
|
|
.DFLTn
|
|
.
|
|
.It Sy USE_HESIOD
|
|
.YorN
|
|
Indicates whether Hesiod support is
|
|
enabled in the various applications that support it.
|
|
If
|
|
.Sy MKHESIOD=no ,
|
|
.Sy USE_HESIOD
|
|
will also be forced to
|
|
.Dq no .
|
|
.DFLTy
|
|
.
|
|
.It Sy USE_INET6
|
|
.YorN
|
|
Indicates whether INET6 (IPv6) support is
|
|
enabled in the various applications that support it.
|
|
If
|
|
.Sy MKINET6=no ,
|
|
.Sy USE_INET6
|
|
will also be forced to
|
|
.Dq no .
|
|
.DFLTy
|
|
.
|
|
.It Sy USE_JEMALLOC
|
|
.YorN
|
|
Indicates whether the
|
|
.Em jemalloc
|
|
allocator
|
|
.Pq which is designed for improved performance with threaded applications
|
|
is used instead of the
|
|
.Em phkmalloc
|
|
allocator
|
|
.Pq that was the default until Nx 5.0 .
|
|
.DFLTy
|
|
.
|
|
.It Sy USE_KERBEROS
|
|
.YorN
|
|
Indicates whether Kerberos v5 support is
|
|
enabled in the various applications that support it.
|
|
If
|
|
.Sy MKKERBEROS=no ,
|
|
.Sy USE_KERBEROS
|
|
will also be forced to
|
|
.Dq no .
|
|
.DFLTy
|
|
.
|
|
.It Sy USE_LDAP
|
|
.YorN
|
|
Indicates whether LDAP support is
|
|
enabled in the various applications that support it.
|
|
If
|
|
.Sy MKLDAP=no ,
|
|
.Sy USE_LDAP
|
|
will also be forced to
|
|
.Dq no .
|
|
.DFLTy
|
|
.
|
|
.It Sy USE_PAM
|
|
.YorN
|
|
Indicates whether
|
|
.Xr pam 8
|
|
support is enabled in the various applications that support it.
|
|
If
|
|
.Sy MKPAM=no ,
|
|
.Sy USE_PAM
|
|
will also be forced to
|
|
.Dq no .
|
|
.DFLTy
|
|
.
|
|
.It Sy USE_SKEY
|
|
.YorN
|
|
Indicates whether S/key support is
|
|
enabled in the various applications that support it.
|
|
If
|
|
.Sy MKSKEY=no ,
|
|
.Sy USE_SKEY
|
|
will also be forced to
|
|
.Dq no .
|
|
.DFLTy
|
|
.Pp
|
|
This is mutually exclusive to
|
|
.Sy USE_PAM!=no .
|
|
.
|
|
.It Sy USE_SSP
|
|
.YorN
|
|
Indicates whether GCC stack-smashing protection (SSP) support,
|
|
which detects stack overflows and aborts the program,
|
|
is enabled.
|
|
This imposes some performance penalty.
|
|
.DFLTy
|
|
.
|
|
.It Sy USE_YP
|
|
.YorN
|
|
Indicates whether YP (NIS) support is
|
|
enabled in the various applications that support it.
|
|
If
|
|
.Sy MKYP=no ,
|
|
.Sy USE_YP
|
|
will also be forced to
|
|
.Dq no .
|
|
.DFLTy
|
|
.
|
|
.It Sy USETOOLS
|
|
Indicates whether the tools specified by
|
|
.Sy TOOLDIR
|
|
should be used as part of a build in progress.
|
|
Must be set to
|
|
.Dq yes
|
|
if cross-compiling.
|
|
.Bl -tag -width "never"
|
|
.It Sy yes
|
|
Use the tools from
|
|
.Sy TOOLDIR .
|
|
.It Sy no
|
|
Do not use the tools from
|
|
.Sy TOOLDIR ,
|
|
but refuse to build native compilation tool components that are
|
|
version-specific for that tool.
|
|
.It Sy never
|
|
Do not use the tools from
|
|
.Sy TOOLDIR ,
|
|
even when building native tool components.
|
|
This is similar to the traditional
|
|
.Nx
|
|
build method, but does
|
|
.Em not
|
|
verify that the compilation tools in use are up-to-date enough in order
|
|
to build the tree successfully.
|
|
This may cause build or runtime problems when building the whole
|
|
.Nx
|
|
source tree.
|
|
.El
|
|
.DFLT
|
|
.Dq yes
|
|
if building all or part of a whole
|
|
.Nx
|
|
source tree (detected automatically);
|
|
.Dq no
|
|
otherwise (to preserve traditional semantics of the
|
|
.Aq bsd.*.mk
|
|
.Xr make 1
|
|
include files).
|
|
.
|
|
.El
|
|
.
|
|
.Ss pkgsrc system variables
|
|
.
|
|
Please see the pkgsrc guide at
|
|
.Lk http://www.netbsd.org/Documentation/pkgsrc/
|
|
or
|
|
.Pa pkgsrc/doc/pkgsrc.txt
|
|
for more variables used internally by the package system and
|
|
.Pa ${PKGSRCDIR}/mk/defaults/mk.conf
|
|
for package-specific examples.
|
|
.
|
|
.Sh FILES
|
|
.Bl -tag -width /etc/mk.conf
|
|
.
|
|
.It Pa /etc/mk.conf
|
|
This file.
|
|
.
|
|
.It Pa ${PKGSRCDIR}/mk/defaults/mk.conf
|
|
Examples for settings regarding the pkgsrc collection.
|
|
.El
|
|
.
|
|
.Sh SEE ALSO
|
|
.Xr make 1 ,
|
|
.Pa /usr/share/mk/bsd.README ,
|
|
.Pa pkgsrc/doc/pkgsrc.txt ,
|
|
.Lk http://www.netbsd.org/Documentation/pkgsrc/
|
|
.Sh HISTORY
|
|
The
|
|
.Nm
|
|
file appeared in
|
|
.Nx 1.2 .
|