overhaul to match reality, adding a bunch of missing MK* and other variables.
This commit is contained in:
parent
e928ba19c8
commit
2dbce57996
|
@ -1,6 +1,6 @@
|
|||
.\" $NetBSD: mk.conf.5,v 1.16 2003/03/31 16:45:42 perry Exp $
|
||||
.\" $NetBSD: mk.conf.5,v 1.17 2003/07/18 15:44:50 lukem Exp $
|
||||
.\"
|
||||
.\" Copyright (c) 1999-2002 The NetBSD Foundation, Inc.
|
||||
.\" Copyright (c) 1999-2003 The NetBSD Foundation, Inc.
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" This code is derived from software contributed to The NetBSD Foundation
|
||||
|
@ -31,14 +31,16 @@
|
|||
.\" 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 August 28, 2002
|
||||
.Dd July 18, 2003
|
||||
.Dt MK.CONF 5
|
||||
.Os
|
||||
.\" turn off hyphenation
|
||||
.hym 999
|
||||
.
|
||||
.Sh NAME
|
||||
.Nm mk.conf
|
||||
.Nd make configuration file
|
||||
.
|
||||
.Sh DESCRIPTION
|
||||
The
|
||||
.Nm
|
||||
|
@ -49,8 +51,33 @@ Listed below are the
|
|||
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 NetBSD sources.
|
||||
If
|
||||
|
@ -63,48 +90,138 @@ and
|
|||
otherwise
|
||||
.Sy BSDSRCDIR
|
||||
will be used.
|
||||
.
|
||||
.It Sy BSDOBJDIR
|
||||
The real path to the
|
||||
.Sq obj
|
||||
tree for the NetBSD source tree.
|
||||
Default:
|
||||
.Pa /usr/obj .
|
||||
.DFLT
|
||||
.Pa /usr/obj
|
||||
.
|
||||
.It Sy BSDSRCDIR
|
||||
The real path to the NetBSD source tree.
|
||||
Default:
|
||||
.Pa /usr/src .
|
||||
.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.
|
||||
.It Sy MANZ
|
||||
Install manual pages compressed with
|
||||
.Xr gzip 1 .
|
||||
.
|
||||
.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 MKBFD
|
||||
.YorN
|
||||
Indicates whether
|
||||
.Sy libbfd ,
|
||||
.Sy libiberty ,
|
||||
or any of the things that depend
|
||||
upon them (such as the binutils,
|
||||
.Xr as 1 ,
|
||||
.Xr gdb 1 ,
|
||||
.Xr ld 1 ,
|
||||
.Xr dbsym 8 ,
|
||||
or
|
||||
.Xr mdsetimage 8)
|
||||
should be built.
|
||||
.DFLTy
|
||||
.
|
||||
.It Sy MKCATPAGES
|
||||
.YorN
|
||||
Indicates whether preformatted plaintext manual pages will be created
|
||||
during a build.
|
||||
.DFLTy
|
||||
.
|
||||
.It Sy MKCRYPTO
|
||||
.YorN
|
||||
Indicates whether cryptographic code will be included in a build;
|
||||
provided for the benefit of countries that do not allow strong
|
||||
cryptography.
|
||||
Will not affect use of the standard low-security password encryption system,
|
||||
.Xr crypt 3 .
|
||||
.DFLTy
|
||||
.Pp
|
||||
If
|
||||
.Sq no ,
|
||||
don't build or install the formatted manual pages.
|
||||
.Dq no ,
|
||||
acts as
|
||||
.Sy MKKERBEROS=no .
|
||||
.
|
||||
.It Sy MKCRYPTO_IDEA
|
||||
Indicates whether IDEA support will be built into
|
||||
.Sy libcrypto_idea.a.
|
||||
.DFLTn
|
||||
.
|
||||
.It Sy MKCRYPTO_MDC2
|
||||
Indicates whether MDC2 support will be built into
|
||||
.Sy libcrypto_mdc2.a.
|
||||
.DFLTn
|
||||
.
|
||||
.It Sy MKCRYPTO_RC5
|
||||
Indicates whether RC5 support will be built into
|
||||
.Sy libcrypto_rc5.a.
|
||||
.DFLTn
|
||||
.
|
||||
.It Sy MKDOC
|
||||
If
|
||||
.Sq no ,
|
||||
don't build or install the miscellaneous documentation.
|
||||
.YorN
|
||||
Indicates whether system documentation destined for
|
||||
.Sy DESTDIR Ns Pa /usr/share/doc
|
||||
will be installed during a build.
|
||||
.DFLTy
|
||||
.
|
||||
.It Sy MKDYNAMICROOT
|
||||
If
|
||||
.Sq no ,
|
||||
link programs in
|
||||
.Pa /bin
|
||||
and
|
||||
.Pa /sbin
|
||||
statically.
|
||||
Otherwise, link everything dynamically,
|
||||
and install shared libraries required by
|
||||
.YorN
|
||||
Indicates whether all programs should be dynamically linked,
|
||||
and to install shared libraries required by
|
||||
.Pa /bin
|
||||
and
|
||||
.Pa /sbin
|
||||
|
@ -112,88 +229,370 @@ and the shared linker
|
|||
.Xr ld.elf_so 1
|
||||
into
|
||||
.Pa /lib .
|
||||
If
|
||||
.Sq no ,
|
||||
link programs in
|
||||
.Pa /bin
|
||||
and
|
||||
.Pa /sbin
|
||||
statically.
|
||||
.DFTLy
|
||||
.
|
||||
.It Sy MKGCC
|
||||
.YorN
|
||||
Indicates whether
|
||||
.Xr gcc 1
|
||||
or any related libraries
|
||||
.Pq Sy libg2c , libgcc , libobjc , libstdc+
|
||||
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.
|
||||
.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 NetBSD 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 built 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 MKINFO
|
||||
.YorN
|
||||
Indicates whether GNU Info files, used for the documentation for
|
||||
most of the compilation tools, will be created and installed during a
|
||||
build.
|
||||
.DFLTy
|
||||
.
|
||||
.It Sy MKKERBEROS
|
||||
.YorN
|
||||
Indicates whether the Kerberos (v4 or v5) infrastructure
|
||||
(libraries and support programs) is built.
|
||||
.DFLTy
|
||||
.
|
||||
.It Sy MKLINKLIB
|
||||
.YorN
|
||||
Indicates whether all of the shared library infrastructure is built.
|
||||
If
|
||||
.Sq no ,
|
||||
don't build or install the TeXinfo Info documentation.
|
||||
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
|
||||
If
|
||||
.Sq no ,
|
||||
don't build or install the lint libraries.
|
||||
.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 MKMAN
|
||||
.YorN
|
||||
Indicates whether manual pages will be installed during a build.
|
||||
.DFLTy
|
||||
.Pp
|
||||
If
|
||||
.Sq no ,
|
||||
don't build or install the manual pages.
|
||||
Sets
|
||||
.Sy MKCATPAGES=no .
|
||||
.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 MKNLS
|
||||
If
|
||||
.Sq no ,
|
||||
don't build or install the NLS (Native Language Support) files.
|
||||
.YorN
|
||||
Indicates whether Native Language System (NLS) locale zone files will be
|
||||
compiled and installed during a build.
|
||||
.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
|
||||
.Sq no ,
|
||||
don't create objdirs.
|
||||
.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 MKPIC
|
||||
.YorN
|
||||
Indicates whether shared objects and libraries will be created and
|
||||
installed during a build.
|
||||
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
|
||||
and
|
||||
.Sy sh3
|
||||
default to
|
||||
.Dq yes .
|
||||
.Pp
|
||||
If
|
||||
.Sq no ,
|
||||
don't build or install shared libraries.
|
||||
.Dq no ,
|
||||
acts as
|
||||
.Sy MKPICLIB=no .
|
||||
.
|
||||
.It Sy MKPICINSTALL
|
||||
If
|
||||
.Sq no ,
|
||||
don't install the
|
||||
.Sq *_pic.a
|
||||
libraries.
|
||||
.YorN
|
||||
Indicates whether the
|
||||
.Xr ar 1
|
||||
format libraries
|
||||
.Sy ( lib*_pic.a ) ,
|
||||
used to generate shared libraries, are installed during a build.
|
||||
.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 MKPROFILE
|
||||
If
|
||||
.Sq no ,
|
||||
don't build or install the
|
||||
.Sq *_p.a
|
||||
profiling libraries.
|
||||
.YorN
|
||||
Indicates whether profiled libraries
|
||||
.Sy ( lib*_p.a )
|
||||
will be built and installed during a build.
|
||||
.DFLT
|
||||
.Dq yes ;
|
||||
however, some platforms turn off
|
||||
.Sy MKPROFILE
|
||||
by default at times due to toolchain problems with profiled code.
|
||||
.
|
||||
.It Sy MKSHARE
|
||||
.YorN
|
||||
Indicates whether files destined to reside in
|
||||
.Sy DESTDIR Ns Pa /usr/share
|
||||
will be built and installed during a build.
|
||||
.DFLTy
|
||||
.Pp
|
||||
If
|
||||
.Sq no ,
|
||||
set
|
||||
.Sy MKCATPAGES=no ,
|
||||
.Sy MKDOC=no ,
|
||||
.Sy MKINFO=no ,
|
||||
.Sy MKMAN=no ,
|
||||
.Sy MKNLS=no .
|
||||
.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 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 MKYP
|
||||
.YorN
|
||||
Indicates whether the YP (NIS) infrastructure
|
||||
(libraries and support programs) is built.
|
||||
.DFLTy
|
||||
.
|
||||
.It Sy OBJMACHINE
|
||||
If defined, creates objdirs of the form
|
||||
.Pa obj.\*[Lt]arch\*[Gt] ,
|
||||
.Pa obj. Ns Sy MACHINE ,
|
||||
where
|
||||
.Sq \*[Lt]arch\*[Gt]
|
||||
.Sy MACHINE
|
||||
is the current architecture (as per
|
||||
.Sq "uname -m" ) .
|
||||
.It Sy UPDATE
|
||||
If defined,
|
||||
.Sq "make install"
|
||||
only installs targets that are more recently modified in the source
|
||||
directories that their installed counterparts.
|
||||
.It Sy UNPRIVED
|
||||
If defined,
|
||||
.Sq "make install"
|
||||
will not attempt to set the ownership or permissions of the target
|
||||
file, and will instead attempt to log the information to
|
||||
.Pa ${DESTDIR}/METALOG .
|
||||
.
|
||||
.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/tools .
|
||||
.DFLTu
|
||||
.
|
||||
.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
|
||||
.Xr packages 7
|
||||
for more variables used internally by the package system and
|
||||
.Pa ${PKGSRCDIR}/mk/bsd.pkg.defaults.mk
|
||||
for package-specific examples.
|
||||
.
|
||||
.Sh FILES
|
||||
.Bl -tag -width /etc/mk.conf
|
||||
.
|
||||
.It Pa /etc/mk.conf
|
||||
This file.
|
||||
.
|
||||
.It Pa ${PKGSRCDIR}/mk/bsd.pkg.defaults.mk
|
||||
Examples for settings regarding the pkgsrc collection.
|
||||
.El
|
||||
.
|
||||
.Sh SEE ALSO
|
||||
.Xr make 1 ,
|
||||
.Xr packages 7
|
||||
.
|
||||
.Sh HISTORY
|
||||
The
|
||||
.Nm
|
||||
|
|
Loading…
Reference in New Issue