Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src BUILDING: clarify environ vs mk.conf behaviour
details: https://anonhg.NetBSD.org/src/rev/d921a02a53aa
branches: trunk
changeset: 378135:d921a02a53aa
user: lukem <lukem%NetBSD.org@localhost>
date: Fri Jul 21 22:07:59 2023 +0000
description:
BUILDING: clarify environ vs mk.conf behaviour
Document that variables set in the environment or the
nbmake-MACHINE wrapper script don't override variable
assignments in mk.conf(5), and that using ?= in mk.conf
allows environment / nbmake-MACHINE variables to override
mk.conf.
Consistently refer to "nbmake-MACHINE wrapper script".
diffstat:
BUILDING | 51 +++++++++++++++++++++++++++++++--------------------
doc/BUILDING.mdoc | 53 ++++++++++++++++++++++++++++++++++++++++-------------
2 files changed, 71 insertions(+), 33 deletions(-)
diffs (229 lines):
diff -r 0b76cc6f0765 -r d921a02a53aa BUILDING
--- a/BUILDING Fri Jul 21 22:05:04 2023 +0000
+++ b/BUILDING Fri Jul 21 22:07:59 2023 +0000
@@ -237,6 +237,15 @@ CONFIGURATION
process environment or the make(1) configuration file mk.conf(5)
specified by MAKECONF.
+ Note: Variables set in the environment, either directly or via build.sh
+ options to set specific values in the nbmake-MACHINE wrapper script do
+ not override variables set in the mk.conf(5) file. To allow variables in
+ mk.conf(5) to be overridden by the environment or build.sh options,
+ define the variables using the "?=" make(1) variable assignment operator.
+ For example,
+
+ MAKEVERBOSE?=1
+
BUILDING
"make" command line options
This is not a summary of all the options available to make(1); only the
@@ -510,8 +519,8 @@ BUILDING
help Show a help message, and exit.
- makewrapper Create the nbmake-MACHINE wrapper. This operation is
- automatically performed for any of the other operations.
+ makewrapper Create the nbmake-MACHINE wrapper script. This operation
+ is automatically performed for any of the other operations.
cleandir Perform "make cleandir".
@@ -601,8 +610,8 @@ BUILDING
-B buildid
Set the value of BUILDID to buildid. This will also append the
- build identifier to the name of the "make" wrapper script so
- that the resulting name is of the form
+ build identifier to the name of the nbmake-MACHINE wrapper
+ script so that the resulting name is of the form
"nbmake-MACHINE-BUILDID".
-C cdextras
@@ -749,12 +758,12 @@ BUILDING
-V var=[value]
Set the environment variable var to an optional value. This is
- propagated to the nbmake wrapper.
+ propagated to the nbmake-MACHINE wrapper script.
-w wrapper
- Create the nbmake wrapper script (see below) in a custom
- location, specified by wrapper. This allows, for instance, to
- place the wrapper in PATH automatically.
+ Create the nbmake-MACHINE wrapper script (see below) in a
+ custom location, specified by wrapper. This allows, for
+ instance, to place the wrapper script in PATH automatically.
Note: wrapper is the full name of the file, not just a
directory name. If a relative path is specified, it will be
@@ -768,23 +777,25 @@ BUILDING
-x Set MKX11=yes.
-Z var Unset ("zap") the environment variable var. This is propagated
- to the nbmake wrapper.
+ to the nbmake-MACHINE wrapper script.
-? Show a help message, and exit.
The "nbmake-MACHINE" wrapper script
- If using the build.sh script to build NetBSD, a nbmake-MACHINE script
- will be created in TOOLDIR/bin upon the first build to assist in building
- subtrees on a cross-compile host.
+ If using the build.sh script to build NetBSD, a nbmake-MACHINE wrapper
+ script will be created in TOOLDIR/bin upon the first build to assist in
+ building subtrees on a cross-compile host.
- nbmake-MACHINE can be invoked in lieu of make(1), and will instead call
- the up-to-date version of "nbmake" installed into TOOLDIR/bin with
- several key variables pre-set, including MACHINE, MACHINE_ARCH, and
- TOOLDIR. nbmake-MACHINE will also set variables specified with -V, and
- unset variables specified with -Z.
+ The nbmake-MACHINE wrapper script can be invoked in lieu of make(1), and
+ will instead call the up-to-date version of "nbmake" installed into
+ TOOLDIR/bin with several key variables pre-set, including MACHINE,
+ MACHINE_ARCH, and TOOLDIR. nbmake-MACHINE will also set variables
+ specified with -V, and unset variables specified with -Z. Note that by
+ default these variables will not override mk.conf(5); see "make"
+ variables for more details.
- This script can be symlinked into a directory listed in PATH, or called
- with an absolute path.
+ This wrapper script can be symlinked into a directory listed in PATH, or
+ called with an absolute path.
EXAMPLES
1. % ./build.sh [OPTIONS] tools kernel=GENERIC
@@ -831,4 +842,4 @@ CAVEATS
in object directories. Instead, one may have to manually remove the
files. Consult the UPDATING file for notices concerning this.
-NetBSD July 18, 2023 NetBSD
+NetBSD July 21, 2023 NetBSD
diff -r 0b76cc6f0765 -r d921a02a53aa doc/BUILDING.mdoc
--- a/doc/BUILDING.mdoc Fri Jul 21 22:05:04 2023 +0000
+++ b/doc/BUILDING.mdoc Fri Jul 21 22:07:59 2023 +0000
@@ -1,4 +1,4 @@
-.\" $NetBSD: BUILDING.mdoc,v 1.147 2023/07/19 15:40:38 lukem Exp $
+.\" $NetBSD: BUILDING.mdoc,v 1.148 2023/07/21 22:07:59 lukem Exp $
.\"
.\" Copyright (c) 2001-2023 The NetBSD Foundation, Inc.
.\" All rights reserved.
@@ -33,7 +33,7 @@
.\" Toolchain prefix for commands
.ds toolprefix nb
.
-.Dd July 18, 2023
+.Dd July 21, 2023
.Dt BUILDING 8
.Os NetBSD
.\" turn off hyphenation
@@ -535,6 +535,27 @@ configuration file
.Xr mk.conf 5
specified by
.Sy MAKECONF .
+.Pp
+.Em Note :
+Variables set in the environment, either directly or via
+.Sy build.sh
+options to set specific values in the
+.Sy \*[toolprefix]make- Ns Sy MACHINE
+wrapper script do not override variables set in the
+.Xr mk.conf 5
+file.
+To allow variables in
+.Xr mk.conf 5
+to be overridden by the environment or
+.Sy build.sh
+options, define the variables using the
+.Dq Li ?=
+.Xr make 1
+variable assignment operator.
+For example,
+.Bd -unfilled -offset indent
+.Li MAKEVERBOSE?=1
+.Ed
.
.Sh BUILDING
.
@@ -1069,7 +1090,7 @@ Show a help message, and exit.
.It Sy makewrapper
Create the
.Sy \*[toolprefix]make- Ns Sy MACHINE
-wrapper.
+wrapper script.
This operation is automatically performed for any of the other
operations.
.
@@ -1272,7 +1293,7 @@ Set the value of
to
.Ar buildid .
This will also append the build identifier to the name of the
-.Dq make
+.Sy \*[toolprefix]make- Ns Sy MACHINE
wrapper script so that the resulting name is of the form
.Dq Sy \*[toolprefix]make- Ns Sy MACHINE Ns Sy -BUILDID .
.
@@ -1594,16 +1615,16 @@ Set the environment variable
to an optional
.Ar value .
This is propagated to the
-.Sy \*[toolprefix]make
-wrapper.
+.Sy \*[toolprefix]make- Ns Sy MACHINE
+wrapper script.
.
.It Fl w Ar wrapper
Create the
-.Sy \*[toolprefix]make
+.Sy \*[toolprefix]make- Ns Sy MACHINE
wrapper script (see below) in a custom location,
specified by
.Ar wrapper .
-This allows, for instance, to place the wrapper in
+This allows, for instance, to place the wrapper script in
.Ev PATH
automatically.
.Pp
@@ -1629,8 +1650,8 @@ Set
Unset ("zap") the environment variable
.Ar var .
This is propagated to the
-.Sy \*[toolprefix]make
-wrapper.
+.Sy \*[toolprefix]make- Ns Sy MACHINE
+wrapper script.
.
.It Fl ?
Show a help message, and exit.
@@ -1645,13 +1666,14 @@ script to build
.Nx ,
a
.Sy \*[toolprefix]make-MACHINE
-script will be created in
+wrapper script will be created in
.Sy TOOLDIR Ns Pa /bin
upon the first build to assist in building subtrees on a cross-compile
host.
.Pp
+The
.Sy \*[toolprefix]make-MACHINE
-can be invoked in lieu of
+wrapper script can be invoked in lieu of
.Xr make 1 ,
and will instead call the up-to-date version of
.Dq \*[toolprefix]make
@@ -1666,8 +1688,13 @@ will also set variables specified with
.Fl V ,
and unset variables specified with
.Fl Z .
+Note that by default these variables will not override
+.Xr mk.conf 5 ;
+see
+.Sx \*qmake\*q variables
+for more details.
.Pp
-This script can be symlinked into a directory listed in
+This wrapper script can be symlinked into a directory listed in
.Ev PATH ,
or called with an absolute path.
.
Home |
Main Index |
Thread Index |
Old Index