git: 60b9e2fac13a - stable/13 - build.7: Document several toolchain make variables.
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 30 Nov 2024 17:11:50 UTC
The branch stable/13 has been updated by jhb:
URL: https://cgit.FreeBSD.org/src/commit/?id=60b9e2fac13ad381518acd253dd33a680dc7a0c8
commit 60b9e2fac13ad381518acd253dd33a680dc7a0c8
Author: John Baldwin <jhb@FreeBSD.org>
AuthorDate: 2023-08-01 21:01:58 +0000
Commit: John Baldwin <jhb@FreeBSD.org>
CommitDate: 2024-11-30 16:56:29 +0000
build.7: Document several toolchain make variables.
Document CROSS_TOOLCHAIN, UNIVERSE_TOOLCHAIN, and USE_GCC_TOOLCHAINS.
Differential Revision: https://reviews.freebsd.org/D40778
(cherry picked from commit 21ef3591b6119f6972896e6c00cbf9ffb759646e)
---
share/man/man7/build.7 | 30 +++++++++++++++++++++++++++---
1 file changed, 27 insertions(+), 3 deletions(-)
diff --git a/share/man/man7/build.7 b/share/man/man7/build.7
index 0c352c9f3547..57280f967a38 100644
--- a/share/man/man7/build.7
+++ b/share/man/man7/build.7
@@ -509,7 +509,23 @@ Additionally, builds in
are influenced by the following
.Xr make 1
variables:
-.Bl -tag -width ".Va SUBDIR_OVERRIDE"
+.Bl -tag -width ".Va LOCAL_MODULES_DIR"
+.It Va CROSS_TOOLCHAIN
+Requests use of an external toolchain to build either the world or kernel.
+This value of this variable can either be the full path to a file,
+or the base name of a file in
+.Pa ${LOCALBASE}/share/toolchains .
+The file should be a make file which sets variables to request an external
+toolchain such as
+.Va XCC .
+.Pp
+External toolchains are available in ports for both LLVM and GCC/binutils.
+For external toolchains available in ports,
+.Va CROSS_TOOLCHAIN
+should be set to the name of the package.
+LLVM toolchain packages use the name llvm<major version>.
+GCC toolchains provide separate packages for each architecture and use the
+name ${MACHINE_ARCH}-gcc<major version>.
.It Va KERNCONF
Overrides which kernel to build and install for the various kernel
make targets.
@@ -705,7 +721,7 @@ using the
.Fl D
option of
.Xr make 1 :
-.Bl -tag -width ".Va -DNO_KERNELCONFIG"
+.Bl -tag -width ".Va LOADER_DEFAULT_INTERP"
.It Va LOADER_DEFAULT_INTERP
Defines what interpreter the default loader program will have.
Valid values include
@@ -775,6 +791,10 @@ If set, the libraries phase will be skipped.
If set, no object directories will be created.
This should only be used if object directories were created in a
previous build and no new directories are connected.
+.It Va UNIVERSE_TOOLCHAIN
+Requests use of the toolchain built as part of the
+.Cm universe
+target as an external toolchain.
.It Va WORLDFAST
If set, the build target
.Cm buildworld
@@ -804,7 +824,7 @@ Builds using the
and related targets are influenced by the following
.Xr make 1
variables:
-.Bl -tag -width ".Va MAKE_JUST_KERNELS"
+.Bl -tag -width ".Va USE_GCC_TOOLCHAINS"
.It Va JFLAG
Pass the value of this variable to each
.Xr make 1
@@ -826,6 +846,10 @@ target for each supported architecture instead of the default action of
building a world and one or more kernels.
This variable implies
.Va WITHOUT_KERNELS .
+.It Va USE_GCC_TOOLCHAINS
+Use external GCC toolchains to build the requested targets.
+If the required toolchain package for a supported architecture is not installed,
+the build for that architecture is skipped.
.It Va TARGETS
Only build the listed targets instead of each supported architecture.
.It Va EXTRA_TARGETS