Add support for new MAKEVERBOSE levels 3 and 4. The complete list is now:

0   Minimal output ("quiet")
 1   Describe what is occurring
 2   Describe what is occurring and echo the actual command
 3   Ignore the effect of the "@" prefix in make commands
 4   Trace shell commands using the shell's -x flag

The default remains MAKEVERBOSE=2.
This commit is contained in:
apb 2008-11-13 20:40:11 +00:00
parent 4c565dbf95
commit c89f08d79b
7 changed files with 98 additions and 33 deletions

View File

@ -165,12 +165,24 @@ CONFIGURATION
MAKEVERBOSE MAKEVERBOSE
Level of verbosity of status messages. Supported values: Level of verbosity of status messages. Supported values:
0 No descriptive messages are shown. 0 No descriptive messages or commands executed by make(1)
are shown.
1 Descriptive messages are shown. 1 Brief messages are shown describing what is being done,
but the actual commands executed by make(1) are not dis-
played.
2 Descriptive messages (prefixed with a `#') and command 2 Descriptive messages are shown as above (prefixed with a
output is not suppressed. `#'), and ordinary commands performed by make(1) are
displayed.
3 In addition to the above, all commands performed by
make(1) are displayed, even if they would ordinarily
have been hidden through use of the ``@'' prefix in the
relevant makefile.
4 In addition to the above, commands executed by make(1)
are traced through use of the sh(1) ``-x'' flag.
Default: 2 Default: 2

View File

@ -1,5 +1,5 @@
#! /usr/bin/env sh #! /usr/bin/env sh
# $NetBSD: build.sh,v 1.198 2008/10/26 23:40:06 apb Exp $ # $NetBSD: build.sh,v 1.199 2008/11/13 20:40:11 apb Exp $
# #
# Copyright (c) 2001-2008 The NetBSD Foundation, Inc. # Copyright (c) 2001-2008 The NetBSD Foundation, Inc.
# All rights reserved. # All rights reserved.
@ -572,9 +572,11 @@ Usage: ${progname} [-EnorUux] [-a arch] [-B buildid] [-C cdextras]
Unsets MAKEOBJDIR. Unsets MAKEOBJDIR.
-m mach Set MACHINE to mach; not required if NetBSD native. -m mach Set MACHINE to mach; not required if NetBSD native.
-N noisy Set the noisyness (MAKEVERBOSE) level of the build: -N noisy Set the noisyness (MAKEVERBOSE) level of the build:
0 Quiet 0 Minimal output ("quiet")
1 Operations are described, commands are suppressed 1 Describe what is occurring
2 Full output 2 Describe what is occurring and echo the actual command
3 Ignore the effect of the "@" prefix in make commands
4 Trace shell commands using the shell's -x flag
[Default: 2] [Default: 2]
-n Show commands that would be executed, but do not execute them. -n Show commands that would be executed, but do not execute them.
-O obj Set obj root directory to obj; sets a MAKEOBJDIR pattern. -O obj Set obj root directory to obj; sets a MAKEOBJDIR pattern.
@ -678,7 +680,7 @@ parseoptions()
-N) -N)
eval ${optargcmd} eval ${optargcmd}
case "${OPTARG}" in case "${OPTARG}" in
0|1|2) 0|1|2|3|4)
setmakeenv MAKEVERBOSE "${OPTARG}" setmakeenv MAKEVERBOSE "${OPTARG}"
;; ;;
*) *)
@ -1199,7 +1201,7 @@ createmakewrapper()
eval cat <<EOF ${makewrapout} eval cat <<EOF ${makewrapout}
#! ${HOST_SH} #! ${HOST_SH}
# Set proper variables to allow easy "make" building of a NetBSD subtree. # Set proper variables to allow easy "make" building of a NetBSD subtree.
# Generated from: \$NetBSD: build.sh,v 1.198 2008/10/26 23:40:06 apb Exp $ # Generated from: \$NetBSD: build.sh,v 1.199 2008/11/13 20:40:11 apb Exp $
# with these arguments: ${_args} # with these arguments: ${_args}
# #

View File

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.64 2008/11/09 23:02:29 mrg Exp $ # $NetBSD: Makefile,v 1.65 2008/11/13 20:40:11 apb Exp $
# The `all' target must appear before bsd.own.mk is pulled in. # The `all' target must appear before bsd.own.mk is pulled in.
all: all:
@ -33,7 +33,7 @@ MAKEFLIST_FLAGS=
MAKESRCTARS_FLAGS= -N ${NETBSDSRCDIR}/etc MAKESRCTARS_FLAGS= -N ${NETBSDSRCDIR}/etc
.endif .endif
.if ${MAKEVERBOSE} != 2 .if ${MAKEVERBOSE} < 2
MAKETARS_FLAGS+= -q MAKETARS_FLAGS+= -q
MAKESRCTARS_FLAGS+= -q MAKESRCTARS_FLAGS+= -q
.endif .endif
@ -199,7 +199,7 @@ REGPKG.sloppy= -m
REGPKG.verbose?= -q REGPKG.verbose?= -q
.elif ${MAKEVERBOSE} == 1 .elif ${MAKEVERBOSE} == 1
REGPKG.verbose?= REGPKG.verbose?=
.else # MAKEVERBOSE == 2 .else # MAKEVERBOSE >= 2
REGPKG.verbose?= -v REGPKG.verbose?= -v
.endif .endif
REGPKG.force?= # -f, or empty REGPKG.force?= # -f, or empty

View File

@ -1,4 +1,4 @@
.\" $NetBSD: BUILDING.mdoc,v 1.68 2008/11/09 23:02:29 mrg Exp $ .\" $NetBSD: BUILDING.mdoc,v 1.69 2008/11/13 20:40:11 apb Exp $
.\" .\"
.\" Copyright (c) 2001-2008 The NetBSD Foundation, Inc. .\" Copyright (c) 2001-2008 The NetBSD Foundation, Inc.
.\" All rights reserved. .\" All rights reserved.
@ -358,13 +358,34 @@ Level of verbosity of status messages.
Supported values: Supported values:
.Bl -tag -width xxx .Bl -tag -width xxx
.It 0 .It 0
No descriptive messages are shown. No descriptive messages or commands executed by
.Xr make 1
are shown.
.It 1 .It 1
Descriptive messages are shown. Brief messages are shown describing what is being done,
but the actual commands executed by
.Xr make 1
are not displayed.
.It 2 .It 2
Descriptive messages (prefixed with a Descriptive messages are shown as above (prefixed with a
.Sq # ) .Sq # ) ,
and command output is not suppressed. and ordinary commands performed by
.Xr make 1
are displayed.
.It 3
In addition to the above, all commands performed by
.Xr make 1
are displayed, even if they would ordinarily have been hidden
through use of the
.Dq \&@
prefix in the relevant makefile.
.It 4
In addition to the above, commands executed by
.Xr make 1
are traced through use of the
.Xr sh 1
.Dq Fl x
flag.
.El .El
.DFLT .DFLT
2 2

View File

@ -1,4 +1,4 @@
.\" $NetBSD: mk.conf.5,v 1.44 2008/11/12 13:17:27 pooka Exp $ .\" $NetBSD: mk.conf.5,v 1.45 2008/11/13 20:40:11 apb Exp $
.\" .\"
.\" Copyright (c) 1999-2003 The NetBSD Foundation, Inc. .\" Copyright (c) 1999-2003 The NetBSD Foundation, Inc.
.\" All rights reserved. .\" All rights reserved.
@ -187,13 +187,34 @@ Level of verbosity of status messages.
Supported values: Supported values:
.Bl -tag -width xxx .Bl -tag -width xxx
.It 0 .It 0
No descriptive messages are shown. No descriptive messages or commands executed by
.Xr make 1
are shown.
.It 1 .It 1
Descriptive messages are shown. Brief messages are shown describing what is being done,
but the actual commands executed by
.Xr make 1
are not displayed.
.It 2 .It 2
Descriptive messages (prefixed with a Descriptive messages are shown as above (prefixed with a
.Sq # ) .Sq # ) ,
and command output is not suppressed. and ordinary commands performed by
.Xr make 1
are displayed.
.It 3
In addition to the above, all commands performed by
.Xr make 1
are displayed, even if they would ordinarily have been hidden
through use of the
.Dq \&@
prefix in the relevant makefile.
.It 4
In addition to the above, commands executed by
.Xr make 1
are traced through use of the
.Xr sh 1
.Dq Fl x
flag.
.El .El
.DFLT .DFLT
2 2

View File

@ -1,4 +1,4 @@
# $NetBSD: bsd.README,v 1.240 2008/11/12 13:17:27 pooka Exp $ # $NetBSD: bsd.README,v 1.241 2008/11/13 20:40:11 apb Exp $
# @(#)bsd.README 8.2 (Berkeley) 4/2/94 # @(#)bsd.README 8.2 (Berkeley) 4/2/94
This is the README file for the make "include" files for the NetBSD This is the README file for the make "include" files for the NetBSD
@ -110,7 +110,8 @@ MAKEVERBOSE Control how "verbose" the standard make(1) rules are.
0 Minimal output ("quiet") 0 Minimal output ("quiet")
1 Describe what is occurring 1 Describe what is occurring
2 Describe what is occurring and echo the actual command 2 Describe what is occurring and echo the actual command
3 Ignore the effect of the "@" prefix in make commands
4 Trace shell commands using the shell's -x flag
MKATF If "no", don't build libatf-c, libatf-c++ libraries associated MKATF If "no", don't build libatf-c, libatf-c++ libraries associated
with the Automated Testing Framework (ATF). with the Automated Testing Framework (ATF).

View File

@ -1,4 +1,4 @@
# $NetBSD: bsd.own.mk,v 1.548 2008/11/12 13:17:27 pooka Exp $ # $NetBSD: bsd.own.mk,v 1.549 2008/11/13 20:40:11 apb Exp $
.if !defined(_BSD_OWN_MK_) .if !defined(_BSD_OWN_MK_)
_BSD_OWN_MK_=1 _BSD_OWN_MK_=1
@ -898,9 +898,11 @@ MAKEDIRTARGET=\
# #
# MAKEVERBOSE support. Levels are: # MAKEVERBOSE support. Levels are:
# 0 No messages # 0 Minimal output ("quiet")
# 1 Enable info messages, suppress command output # 1 Describe what is occurring
# 2 Enable info messages and command output # 2 Describe what is occurring and echo the actual command
# 3 Ignore the effect of the "@" prefix in make commands
# 4 Trace shell commands using the shell's -x flag
# #
MAKEVERBOSE?= 2 MAKEVERBOSE?= 2
@ -914,12 +916,18 @@ _MKMSG?= @echo ' '
_MKSHMSG?= echo ' ' _MKSHMSG?= echo ' '
_MKSHECHO?= : echo _MKSHECHO?= : echo
.SILENT: .SILENT:
.else # MAKEVERBOSE == 2 ? .else # MAKEVERBOSE >= 2
_MKMSG?= @echo '\# ' _MKMSG?= @echo '\# '
_MKSHMSG?= echo '\# ' _MKSHMSG?= echo '\# '
_MKSHECHO?= echo _MKSHECHO?= echo
.SILENT: __makeverbose_dummy_target__ .SILENT: __makeverbose_dummy_target__
.endif .endif # MAKEVERBOSE >= 2
.if ${MAKEVERBOSE} >= 3
.MAKEFLAGS: -dl
.endif # ${MAKEVERBOSE} >= 3
.if ${MAKEVERBOSE} >= 4
.MAKEFLAGS: -dx
.endif # ${MAKEVERBOSE} >= 4
_MKMSG_BUILD?= ${_MKMSG} " build " _MKMSG_BUILD?= ${_MKMSG} " build "
_MKMSG_CREATE?= ${_MKMSG} " create " _MKMSG_CREATE?= ${_MKMSG} " create "