Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src BUILDING: editorial
details: https://anonhg.NetBSD.org/src/rev/8c0eb53fb268
branches: trunk
changeset: 376243:8c0eb53fb268
user: lukem <lukem%NetBSD.org@localhost>
date: Mon Jun 05 22:36:17 2023 +0000
description:
BUILDING: editorial
MKX11=yes wants MKINET6=yes
Change the width of the variable lists to 14n (from 15n)
so that when the lists are rendered and then left aligned,
the column is 16 characters (aka 2 tabs) which makes
copypasta to bsd.README easier.
diffstat:
BUILDING | 885 ++++++++++++++++++++++++++---------------------------
doc/BUILDING.mdoc | 26 +-
2 files changed, 461 insertions(+), 450 deletions(-)
diffs (truncated from 1148 to 300 lines):
diff -r 441fa0992417 -r 8c0eb53fb268 BUILDING
--- a/BUILDING Mon Jun 05 22:35:20 2023 +0000
+++ b/BUILDING Mon Jun 05 22:36:17 2023 +0000
@@ -93,93 +93,92 @@ CONFIGURATION
Environment variables
Several environment variables control the behaviour of NetBSD builds.
- HOST_CC Path name to C compiler used to create the toolchain.
+ HOST_CC Path name to C compiler used to create the toolchain.
- HOST_CFLAGS Flags passed to the host C compiler.
+ HOST_CFLAGS Flags passed to the host C compiler.
- HOST_CXX Path name to C++ compiler used to create the toolchain.
+ HOST_CXX Path name to C++ compiler used to create the toolchain.
- HOST_CXXFLAGS Flags passed to the host C++ compiler.
+ HOST_CXXFLAGS Flags passed to the host C++ compiler.
- HOST_SH Path name to a shell available on the host system and
- suitable for use during the build. The NetBSD build
- system requires a modern Bourne-like shell with POSIX-
- compliant features, and also requires support for the
- "local" keyword to declare local variables in shell
- functions (which is a widely-implemented but non-
- standardised feature).
+ HOST_SH Path name to a shell available on the host system and
+ suitable for use during the build. The NetBSD build
+ system requires a modern Bourne-like shell with POSIX-
+ compliant features, and also requires support for the
+ "local" keyword to declare local variables in shell
+ functions (which is a widely-implemented but non-
+ standardised feature).
- Depending on the host system, a suitable shell may be
- /bin/sh, /usr/xpg4/bin/sh, /bin/ksh (provided it is a
- variant of ksh that supports the "local" keyword, such
- as ksh88, but not ksh93), or /usr/local/bin/bash.
+ Depending on the host system, a suitable shell may be
+ /bin/sh, /usr/xpg4/bin/sh, /bin/ksh (provided it is a
+ variant of ksh that supports the "local" keyword, such as
+ ksh88, but not ksh93), or /usr/local/bin/bash.
- Most parts of the build require HOST_SH to be an
- absolute path; however, build.sh allows it to be a
- simple command name, which will be converted to an
- absolute path by searching the PATH.
+ Most parts of the build require HOST_SH to be an absolute
+ path; however, build.sh allows it to be a simple command
+ name, which will be converted to an absolute path by
+ searching the PATH.
INSTALLBOOT_UBOOT_PATHS
- A colon-separated list of search paths used by
- installboot(8) to find U-Boot packages.
+ A colon-separated list of search paths used by
+ installboot(8) to find U-Boot packages.
- MACHINE Machine type, e.g., "macppc".
+ MACHINE Machine type, e.g., "macppc".
- MACHINE_ARCH Machine architecture, e.g., "powerpc".
+ MACHINE_ARCH Machine architecture, e.g., "powerpc".
- MAKE Path name to invoke make(1) as.
+ MAKE Path name to invoke make(1) as.
- MAKECONF The name of the make(1) configuration file. See "make"
- variables and mk.conf(5).
+ MAKECONF The name of the make(1) configuration file. See "make"
+ variables and mk.conf(5).
- Note: Only settable in the process environment.
+ Note: Only settable in the process environment.
- Default: "/etc/mk.conf"
+ Default: "/etc/mk.conf"
- MAKEFLAGS Flags to invoke make(1) with.
+ MAKEFLAGS Flags to invoke make(1) with.
- Note: build.sh ignores the value of MAKEFLAGS passed in
- the environment, but allows MAKEFLAGS to be set via the
- -V option.
+ Note: build.sh ignores the value of MAKEFLAGS passed in
+ the environment, but allows MAKEFLAGS to be set via the
+ -V option.
- MAKEOBJDIR Directory to use as the .OBJDIR for the current
- directory. The value is subjected to variable expansion
- by make(1). Typical usage is to set this variable to a
- value involving the use of `${.CURDIR:S...}' or
- `${.CURDIR:C...}', to derive the value of .OBJDIR from
- the value of .CURDIR. Used only if MAKEOBJDIRPREFIX is
- not defined.
+ MAKEOBJDIR Directory to use as the .OBJDIR for the current
+ directory. The value is subjected to variable expansion
+ by make(1). Typical usage is to set this variable to a
+ value involving the use of `${.CURDIR:S...}' or
+ `${.CURDIR:C...}', to derive the value of .OBJDIR from
+ the value of .CURDIR. Used only if MAKEOBJDIRPREFIX is
+ not defined.
- Note: MAKEOBJDIR can be provided only in the environment
- or via the -O flag of build.sh; it cannot usefully be
- set inside a Makefile, including in mk.conf(5) or
- MAKECONF.
+ Note: MAKEOBJDIR can be provided only in the environment
+ or via the -O flag of build.sh; it cannot usefully be set
+ inside a Makefile, including in mk.conf(5) or MAKECONF.
MAKEOBJDIRPREFIX
- Top level directory of the object directory tree. The
- value is subjected to variable expansion by make(1).
- build.sh will create the ${MAKEOBJDIRPREFIX} directory
- if necessary, but if make(1) is used without build.sh,
- then rules in <bsd.obj.mk> will abort the build if the
- ${MAKEOBJDIRPREFIX} directory does not exist. If the
- value is defined and valid, then
- ${MAKEOBJDIRPREFIX}/${.CURDIR} is used as the .OBJDIR
- for the current directory. The current directory may be
- read only.
+ Top level directory of the object directory tree. The
+ value is subjected to variable expansion by make(1).
+ build.sh will create the ${MAKEOBJDIRPREFIX} directory if
+ necessary, but if make(1) is used without build.sh, then
+ rules in <bsd.obj.mk> will abort the build if the
+ ${MAKEOBJDIRPREFIX} directory does not exist. If the
+ value is defined and valid, then
+ ${MAKEOBJDIRPREFIX}/${.CURDIR} is used as the .OBJDIR for
+ the current directory. The current directory may be read
+ only.
- Note: MAKEOBJDIRPREFIX can be provided only in the
- environment or via the -M flag of build.sh; it cannot
- usefully be set inside a Makefile, including in
- mk.conf(5) or MAKECONF.
+ Note: MAKEOBJDIRPREFIX can be provided only in the
+ environment or via the -M flag of build.sh; it cannot
+ usefully be set inside a Makefile, including in
+ mk.conf(5) or MAKECONF.
- TMPDIR Top-level directory to store temporary directories used
- by build.sh before paths to other directories such as
- .OBJDIR can be determined.
+ TMPDIR Top-level directory to store temporary directories used
+ by build.sh before paths to other directories such as
+ .OBJDIR can be determined.
- Note: Must support execution of binaries. I.e., without
- mount(8)'s -o noexec option.
+ Note: Must support execution of binaries. I.e., without
+ mount(8)'s -o noexec option.
- Default: "/tmp".
+ Default: "/tmp".
"make" variables
Several variables control the behavior of NetBSD builds. Unless
@@ -190,533 +189,533 @@ CONFIGURATION
This list is not comprehensive; all supported variables and their
defaults are documented in mk.conf(5).
- BSDOBJDIR The real path to the object directory tree for the
- NetBSD source tree.
+ BSDOBJDIR The real path to the object directory tree for the NetBSD
+ source tree.
- Default: "/usr/obj"
+ Default: "/usr/obj"
- BSDSRCDIR The real path to the NetBSD source tree, if NETBSDSRCDIR
- isn't defined.
+ BSDSRCDIR The real path to the NetBSD source tree, if NETBSDSRCDIR
+ isn't defined.
- Default: "/usr/src"
+ Default: "/usr/src"
- BUILDID Identifier for the build. If set, this should be a
- short string that is suitable for use as part of a file
- or directory name. The identifier will be appended to
- object directory names, and can be consulted in the
- make(1) configuration file in order to set additional
- build parameters, such as compiler flags. It will also
- be used as part of the kernel version string, which can
- be shown by "uname -v".
+ BUILDID Identifier for the build. If set, this should be a short
+ string that is suitable for use as part of a file or
+ directory name. The identifier will be appended to
+ object directory names, and can be consulted in the
+ make(1) configuration file in order to set additional
+ build parameters, such as compiler flags. It will also
+ be used as part of the kernel version string, which can
+ be shown by "uname -v".
- Default: Unset.
+ Default: Unset.
- BUILDINFO Optional multi-line string containing information about
- the build. This will appear in DESTDIR/etc/release, and
- it will be stored in the buildinfo variable in any
- kernels that are built. When such kernels are booted,
- the sysctl(7) kern.buildinfo variable will report this
- value. The string may contain backslash escape
- sequences, such as "\\" (representing a backslash
- character) and "\n" (representing a newline).
+ BUILDINFO Optional multi-line string containing information about
+ the build. This will appear in DESTDIR/etc/release, and
+ it will be stored in the buildinfo variable in any
+ kernels that are built. When such kernels are booted,
+ the sysctl(7) kern.buildinfo variable will report this
+ value. The string may contain backslash escape
+ sequences, such as "\\" (representing a backslash
+ character) and "\n" (representing a newline).
- Default: Unset.
+ Default: Unset.
- BUILDSEED g++(1) uses random numbers when compiling C++ code.
- This variable seeds the g++(1) random number generator
- using -frandom-seed with this value. By default, it is
- set to "NetBSD-(majorversion)". Using a fixed value
- causes C++ binaries to be the same when built from the
- same sources, resulting in identical (reproducible)
- builds. Additional information is available in the
- g++(1) documentation of -frandom-seed.
+ BUILDSEED g++(1) uses random numbers when compiling C++ code. This
+ variable seeds the g++(1) random number generator using
+ -frandom-seed with this value. By default, it is set to
+ "NetBSD-(majorversion)". Using a fixed value causes C++
+ binaries to be the same when built from the same sources,
+ resulting in identical (reproducible) builds. Additional
+ information is available in the g++(1) documentation of
+ -frandom-seed.
- Default: Unset.
+ Default: Unset.
- CPUFLAGS Additional flags to the compiler/assembler to select CPU
- instruction set options, CPU tuning options, etc.
+ CPUFLAGS Additional flags to the compiler/assembler to select CPU
+ instruction set options, CPU tuning options, etc.
- Default: Unset.
+ Default: Unset.
- DESTDIR Directory to contain the built NetBSD system. If set,
- special options are passed to the compilation tools to
- prevent their default use of the host system's
- /usr/include, /usr/lib, and so forth. This pathname
- must be an absolute path, and should not end with a
- slash (/) character. (For installation into the
- system's root directory, set DESTDIR to an empty string,
- not to "/"). The directory must reside on a file system
- which supports long file names and hard links.
+ DESTDIR Directory to contain the built NetBSD system. If set,
+ special options are passed to the compilation tools to
+ prevent their default use of the host system's
+ /usr/include, /usr/lib, and so forth. This pathname must
+ be an absolute path, and should not end with a slash (/)
+ character. (For installation into the system's root
+ directory, set DESTDIR to an empty string, not to "/").
+ The directory must reside on a file system which supports
+ long file names and hard links.
- Note: build.sh will provide a default of destdir.MACHINE
- (in the top-level .OBJDIR) unless run in `expert' mode.
+ Note: build.sh will provide a default of destdir.MACHINE
+ (in the top-level .OBJDIR) unless run in `expert' mode.
- Default: Empty string if USETOOLS is "yes"; unset
- otherwise.
+ Default: Empty string if USETOOLS is "yes"; unset
+ otherwise.
EXTERNAL_TOOLCHAIN
- If defined, this variable indicates the root directory
- of an external toolchain which will be used to build the
- tree. For example, if a platform is a TOOLCHAIN_MISSING
- platform, EXTERNAL_TOOLCHAIN can be used to re-enable
- the cross-compile framework.
+ If defined, this variable indicates the root directory of
+ an external toolchain which will be used to build the
+ tree. For example, if a platform is a TOOLCHAIN_MISSING
+ platform, EXTERNAL_TOOLCHAIN can be used to re-enable the
+ cross-compile framework.
- If EXTERNAL_TOOLCHAIN is defined, act as MKGCC=no, since
- the external version of the compiler may not be able to
- build the library components of the in-tree compiler.
+ If EXTERNAL_TOOLCHAIN is defined, act as MKGCC=no, since
+ the external version of the compiler may not be able to
+ build the library components of the in-tree compiler.
+
+ This variable should be used in conjunction with an
+ appropriate HAVE_GCC or HAVE_LLVM setting to control the
+ compiler flags.
- This variable should be used in conjunction with an
Home |
Main Index |
Thread Index |
Old Index