[Qemu-devel] [PATCH v1 1/2] Revert "build-sys: silence make by default or V=0"

Daniel P. Berrange posted 2 patches 8 years ago
[Qemu-devel] [PATCH v1 1/2] Revert "build-sys: silence make by default or V=0"
Posted by Daniel P. Berrange 8 years ago
This reverts commit 42a77f1ce4934b243df003f95bda88530631387a.

The primary intention of this change was to silence messages
like

  make[1]: '/home/berrange/src/virt/qemu/capstone/libcapstone.a' is up to date.

which we get when calling make recursively with explicit
targets.

The problem is that this change affected every make target,
not merely the targets that triggered these "is up to date"
messages. As a result any targets that were not invoking
commands via "$(call quiet-command ...)" suddenly become
silent. This is particularly bad for "make install" which
now appears todo nothing.

Rather than go through every make rule and try to identify
places where we now need to explicitly print a message to
show work taking place, just revert the change.

To address the original problem of silencing "is up to date"
messages, we simply add --quiet to the SUBDIR_MAKEVARS
variable, so it only affects us on recursive make calls.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
---
 Makefile  | 2 +-
 rules.mak | 2 --
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/Makefile b/Makefile
index f26ef1b1df..c263190b8d 100644
--- a/Makefile
+++ b/Makefile
@@ -280,7 +280,7 @@ else
 DOCS=
 endif
 
-SUBDIR_MAKEFLAGS=BUILD_DIR=$(BUILD_DIR)
+SUBDIR_MAKEFLAGS=$(if $(V),,--no-print-directory --quiet) BUILD_DIR=$(BUILD_DIR)
 SUBDIR_DEVICES_MAK=$(patsubst %, %/config-devices.mak, $(TARGET_DIRS))
 SUBDIR_DEVICES_MAK_DEP=$(patsubst %, %-config-devices.mak.d, $(TARGET_DIRS))
 
diff --git a/rules.mak b/rules.mak
index 5fb4951561..6e943335f3 100644
--- a/rules.mak
+++ b/rules.mak
@@ -131,8 +131,6 @@ modules:
 # If called with only a single argument, will print nothing in quiet mode.
 quiet-command = $(if $(V),$1,$(if $(2),@printf "  %-7s %s\n" $2 $3 && $1, @$1))
 
-MAKEFLAGS += $(if $(V),,--no-print-directory --quiet)
-
 # cc-option
 # Usage: CFLAGS+=$(call cc-option, -falign-functions=0, -malign-functions=0)
 
-- 
2.14.3


Re: [Qemu-devel] [PATCH v1 1/2] Revert "build-sys: silence make by default or V=0"
Posted by Marc-Andre Lureau 8 years ago
On Tue, Jan 23, 2018 at 5:47 PM, Daniel P. Berrange <berrange@redhat.com> wrote:
> This reverts commit 42a77f1ce4934b243df003f95bda88530631387a.
>
> The primary intention of this change was to silence messages
> like
>
>   make[1]: '/home/berrange/src/virt/qemu/capstone/libcapstone.a' is up to date.
>
> which we get when calling make recursively with explicit
> targets.
>
> The problem is that this change affected every make target,
> not merely the targets that triggered these "is up to date"
> messages. As a result any targets that were not invoking
> commands via "$(call quiet-command ...)" suddenly become
> silent. This is particularly bad for "make install" which
> now appears todo nothing.
>
> Rather than go through every make rule and try to identify
> places where we now need to explicitly print a message to
> show work taking place, just revert the change.
>
> To address the original problem of silencing "is up to date"
> messages, we simply add --quiet to the SUBDIR_MAKEVARS
> variable, so it only affects us on recursive make calls.
>
> Signed-off-by: Daniel P. Berrange <berrange@redhat.com>

Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>


> ---
>  Makefile  | 2 +-
>  rules.mak | 2 --
>  2 files changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index f26ef1b1df..c263190b8d 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -280,7 +280,7 @@ else
>  DOCS=
>  endif
>
> -SUBDIR_MAKEFLAGS=BUILD_DIR=$(BUILD_DIR)
> +SUBDIR_MAKEFLAGS=$(if $(V),,--no-print-directory --quiet) BUILD_DIR=$(BUILD_DIR)
>  SUBDIR_DEVICES_MAK=$(patsubst %, %/config-devices.mak, $(TARGET_DIRS))
>  SUBDIR_DEVICES_MAK_DEP=$(patsubst %, %-config-devices.mak.d, $(TARGET_DIRS))
>
> diff --git a/rules.mak b/rules.mak
> index 5fb4951561..6e943335f3 100644
> --- a/rules.mak
> +++ b/rules.mak
> @@ -131,8 +131,6 @@ modules:
>  # If called with only a single argument, will print nothing in quiet mode.
>  quiet-command = $(if $(V),$1,$(if $(2),@printf "  %-7s %s\n" $2 $3 && $1, @$1))
>
> -MAKEFLAGS += $(if $(V),,--no-print-directory --quiet)
> -
>  # cc-option
>  # Usage: CFLAGS+=$(call cc-option, -falign-functions=0, -malign-functions=0)
>
> --
> 2.14.3
>

Re: [Qemu-devel] [PATCH v1 1/2] Revert "build-sys: silence make by default or V=0"
Posted by Mark Cave-Ayland 8 years ago
On 23/01/18 16:47, Daniel P. Berrange wrote:

> This reverts commit 42a77f1ce4934b243df003f95bda88530631387a.
> 
> The primary intention of this change was to silence messages
> like
> 
>    make[1]: '/home/berrange/src/virt/qemu/capstone/libcapstone.a' is up to date.
> 
> which we get when calling make recursively with explicit
> targets.
> 
> The problem is that this change affected every make target,
> not merely the targets that triggered these "is up to date"
> messages. As a result any targets that were not invoking
> commands via "$(call quiet-command ...)" suddenly become
> silent. This is particularly bad for "make install" which
> now appears todo nothing.
> 
> Rather than go through every make rule and try to identify
> places where we now need to explicitly print a message to
> show work taking place, just revert the change.
> 
> To address the original problem of silencing "is up to date"
> messages, we simply add --quiet to the SUBDIR_MAKEVARS
> variable, so it only affects us on recursive make calls.

s/SUBDIR_MAKEVARS/SUBDIR_MAKEFLAGS/?

> Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
> ---
>   Makefile  | 2 +-
>   rules.mak | 2 --
>   2 files changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/Makefile b/Makefile
> index f26ef1b1df..c263190b8d 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -280,7 +280,7 @@ else
>   DOCS=
>   endif
>   
> -SUBDIR_MAKEFLAGS=BUILD_DIR=$(BUILD_DIR)
> +SUBDIR_MAKEFLAGS=$(if $(V),,--no-print-directory --quiet) BUILD_DIR=$(BUILD_DIR)
>   SUBDIR_DEVICES_MAK=$(patsubst %, %/config-devices.mak, $(TARGET_DIRS))
>   SUBDIR_DEVICES_MAK_DEP=$(patsubst %, %-config-devices.mak.d, $(TARGET_DIRS))
>   
> diff --git a/rules.mak b/rules.mak
> index 5fb4951561..6e943335f3 100644
> --- a/rules.mak
> +++ b/rules.mak
> @@ -131,8 +131,6 @@ modules:
>   # If called with only a single argument, will print nothing in quiet mode.
>   quiet-command = $(if $(V),$1,$(if $(2),@printf "  %-7s %s\n" $2 $3 && $1, @$1))
>   
> -MAKEFLAGS += $(if $(V),,--no-print-directory --quiet)
> -
>   # cc-option
>   # Usage: CFLAGS+=$(call cc-option, -falign-functions=0, -malign-functions=0)

Thanks for spending the time debugging this, Dan.


ATB,

Mark.

Re: [Qemu-devel] [PATCH v1 1/2] Revert "build-sys: silence make by default or V=0"
Posted by Eric Blake 8 years ago
On 01/23/2018 10:47 AM, Daniel P. Berrange wrote:
> This reverts commit 42a77f1ce4934b243df003f95bda88530631387a.
> 
> The primary intention of this change was to silence messages
> like
> 
>   make[1]: '/home/berrange/src/virt/qemu/capstone/libcapstone.a' is up to date.
> 
> which we get when calling make recursively with explicit
> targets.
> 
> The problem is that this change affected every make target,
> not merely the targets that triggered these "is up to date"
> messages. As a result any targets that were not invoking
> commands via "$(call quiet-command ...)" suddenly become
> silent. This is particularly bad for "make install" which
> now appears todo nothing.
> 
> Rather than go through every make rule and try to identify
> places where we now need to explicitly print a message to
> show work taking place, just revert the change.
> 
> To address the original problem of silencing "is up to date"
> messages, we simply add --quiet to the SUBDIR_MAKEVARS
> variable, so it only affects us on recursive make calls.

As for solving the original intended issue, this patch silences the
message about libcapstone, and reverting back to a known state is more
conservative, so I'm okay with this going in.

Tested-by: Eric Blake <eblake@redhat.com>


-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org