Module Name: src Committed By: lukem Date: Fri Jun 2 20:48:41 UTC 2023
Modified Files: src: BUILDING src/doc: BUILDING.mdoc Log Message: build.sh: MAKECONF and mk.conf(5) improvements Move MAKECONF to the Environment variables section. Add mk.conf(5) cross-references. Make Notes more obvious. Fix mandoc lint. To generate a diff of this commit: cvs rdiff -u -r1.149 -r1.150 src/BUILDING cvs rdiff -u -r1.138 -r1.139 src/doc/BUILDING.mdoc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/BUILDING diff -u src/BUILDING:1.149 src/BUILDING:1.150 --- src/BUILDING:1.149 Thu May 18 14:22:53 2023 +++ src/BUILDING Fri Jun 2 20:48:41 2023 @@ -1,7 +1,7 @@ BUILDING(8) System Manager's Manual BUILDING(8) NAME - BUILDING - Procedure for building NetBSD from source code. + BUILDING - Procedure for building NetBSD from source code REQUIREMENTS NetBSD is designed to be buildable on most POSIX-compliant host systems. @@ -127,6 +127,13 @@ CONFIGURATION MAKE Path name to invoke make(1) as. + MAKECONF The name of the make(1) configuration file. See "make" + variables and mk.conf(5). + + Note: Only settable in the process environment. + + Default: "/etc/mk.conf" + MAKEFLAGS Flags to invoke make(1) with. Note that build.sh ignores the value of MAKEFLAGS passed in the environment, but allows MAKEFLAGS to be set via the -V @@ -138,10 +145,12 @@ CONFIGURATION 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 can be - provided only in the environment or via the -O flag of - build.sh; it cannot usefully be set inside a Makefile, - including mk.conf or ${MAKECONF}. + 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. MAKEOBJDIRPREFIX Top level directory of the object directory tree. The value is subjected to variable expansion by make(1). @@ -152,10 +161,12 @@ CONFIGURATION value is defined and valid, then ${MAKEOBJDIRPREFIX}/${.CURDIR} is used as the .OBJDIR for the current directory. The current directory may - be read only. 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 - mk.conf or ${MAKECONF}. + 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. TMPDIR Top-level directory to store temporary directories used by build.sh before paths to other directories such as @@ -169,7 +180,9 @@ CONFIGURATION "make" variables Several variables control the behavior of NetBSD builds. Unless otherwise specified, these variables may be set in either the process - environment or the make(1) configuration file specified by MAKECONF. + environment or the make(1) configuration file mk.conf(5) specified by + MAKECONF. This list is not comprehensive; all supported variables and + their defaults are documented in mk.conf(5). BUILDID Identifier for the build. If set, this should be a short string that is suitable for use as part of a file or @@ -221,11 +234,6 @@ CONFIGURATION Note: build.sh will provide a default of destdir.MACHINE (in the top-level .OBJDIR) unless run in `expert' mode. - MAKECONF The name of the make(1) configuration file. Only settable in - the process environment. - - Default: "/etc/mk.conf" - MAKEVERBOSE Level of verbosity of status messages. Supported values: @@ -1124,8 +1132,8 @@ OBSOLETE VARIABLES TOOLCHAIN_MISSING=yes. SEE ALSO - make(1), hier(7), release(7), etcupdate(8), installboot(8), mount(8), - postinstall(8), sysinst(8), pkgsrc/sysutils/cdrtools + make(1), mk.conf(5), hier(7), release(7), etcupdate(8), installboot(8), + mount(8), postinstall(8), sysinst(8), pkgsrc/sysutils/cdrtools HISTORY The build.sh based build scheme was introduced for NetBSD 1.6 as Index: src/doc/BUILDING.mdoc diff -u src/doc/BUILDING.mdoc:1.138 src/doc/BUILDING.mdoc:1.139 --- src/doc/BUILDING.mdoc:1.138 Thu May 18 14:22:53 2023 +++ src/doc/BUILDING.mdoc Fri Jun 2 20:48:41 2023 @@ -1,4 +1,4 @@ -.\" $NetBSD: BUILDING.mdoc,v 1.138 2023/05/18 14:22:53 lukem Exp $ +.\" $NetBSD: BUILDING.mdoc,v 1.139 2023/06/02 20:48:41 lukem Exp $ .\" .\" Copyright (c) 2001-2023 The NetBSD Foundation, Inc. .\" All rights reserved. @@ -52,7 +52,7 @@ .Nm BUILDING .Nd Procedure for building .Nx -from source code. +from source code . .Sh REQUIREMENTS . @@ -99,8 +99,8 @@ should only be run for native builds wit version of .Nx .Xr make 1 . -Intended for expert use with knowledge of its shortcomings, it has been superseded -by the +Intended for expert use with knowledge of its shortcomings, +it has been superseded by the .Nm build.sh shell script as the recommended means for building .Nx . @@ -276,6 +276,20 @@ Path name to invoke .Xr make 1 as. . +.It Sy MAKECONF +The name of the +.Xr make 1 +configuration file. +See +.Sx \*qmake\*q variables +and +.Xr mk.conf 5 . +.Pp +.Em Note : +Only settable in the process environment. +.DFLT +.Dq /etc/mk.conf +. .It Sy MAKEFLAGS Flags to invoke .Xr make 1 @@ -307,15 +321,17 @@ from the value of Used only if .Sy MAKEOBJDIRPREFIX is not defined. +.Pp +.Em Note : .Sy MAKEOBJDIR can be provided only in the environment or via the .Fl O flag of .Nm build.sh ; -it cannot usefully be set inside a Makefile, including -.Pa mk.conf +it cannot usefully be set inside a Makefile, including in +.Xr mk.conf 5 or -.Sy ${MAKECONF} . +.Sy MAKECONF . . .It Sy MAKEOBJDIRPREFIX Top level directory of the object directory tree. @@ -339,16 +355,17 @@ is used as the .Sy .OBJDIR for the current directory. The current directory may be read only. +.Pp +.Em Note : .Sy MAKEOBJDIRPREFIX can be provided only in the environment or via the .Fl M flag of .Nm build.sh ; -it cannot usefully be set inside a Makefile, including -.Pa mk.conf +it cannot usefully be set inside a Makefile, including in +.Xr mk.conf 5 or -.Sy ${MAKECONF} . -. +.Sy MAKECONF . . .It Sy TMPDIR Top-level directory to store temporary directories used by @@ -377,8 +394,13 @@ builds. Unless otherwise specified, these variables may be set in either the process environment or the .Xr make 1 -configuration file specified by +configuration file +.Xr mk.conf 5 +specified by .Sy MAKECONF . +This list is not comprehensive; +all supported variables and their defaults are documented in +.Xr mk.conf 5 . . .Bl -tag -width "MKCATPAGES" . @@ -459,21 +481,13 @@ unset otherwise. .Em Note : .Sy build.sh will provide a default of -.Pa destdir. Ns Sy MACHINE +.Pa destdir . Ns Sy MACHINE (in the top-level .Sy .OBJDIR ) unless run in .Sq expert mode. . -.It Sy MAKECONF -The name of the -.Xr make 1 -configuration file. -.Em Only settable in the process environment. -.DFLT -.Dq /etc/mk.conf -. .It Sy MAKEVERBOSE Level of verbosity of status messages. Supported values: @@ -1964,7 +1978,7 @@ This default is opposite to the behaviou .Sy build.sh . . .It Fl P -Set the value of +Set the value of .Sy MKREPRO and .Sy MKREPRO_TIMESTAMP @@ -2176,6 +2190,7 @@ To disable, use .El .Sh SEE ALSO .Xr make 1 , +.Xr mk.conf 5 , .Xr hier 7 , .Xr release 7 , .Xr etcupdate 8 ,