diff options
Diffstat (limited to 'include/verbose.mk')
-rw-r--r-- | include/verbose.mk | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/include/verbose.mk b/include/verbose.mk index 6b2d6d044b..f18e9a2c71 100644 --- a/include/verbose.mk +++ b/include/verbose.mk @@ -8,7 +8,9 @@ ifeq ($(NO_TRACE_MAKE),) NO_TRACE_MAKE := $(MAKE) V=99 +SUBMAKE := $(MAKE) export NO_TRACE_MAKE +export SUBMAKE endif ifndef KBUILD_VERBOSE @@ -29,18 +31,20 @@ endef ifneq ($(KBUILD_VERBOSE),99) ifeq ($(QUIET),1) - $(MAKECMDGOALS): trace - trace: FORCE - @[ -f "$(MAKECMDGOALS)" ] || { \ - [ -z "$${PWD##$$TOPDIR}" ] || DIR=" -C $${PWD##$$TOPDIR/}"; \ - $(call MESSAGE, "make[$$(($(MAKELEVEL)+1))]$$DIR $(MAKECMDGOALS)"); \ - } + ifneq ($(CURDIR),$(TOPDIR)) + _DIR:=$(patsubst $(TOPDIR)/%,%,${CURDIR}) + else + _DIR:= + endif + _NULL:=$(if $(MAKECMDGOALS),$(shell \ + $(call MESSAGE, "make[$(MAKELEVEL)]$(if $(_DIR), -C $(_DIR)) $(MAKECMDGOALS)"); \ + )) else - export QUIET:=1 ifeq ($(KBUILD_VERBOSE),0) MAKE:=&>/dev/null $(MAKE) endif - MAKE:=cmd() { $(MAKE) $$* || { echo "Build failed. Please re-run make with V=99 to see what's going on"; false; } } 3>&1 4>&2; cmd + export QUIET:=1 + MAKE:=cmd() { $(MAKE) $$* || { echo "make $$*: build failed. Please re-run make with V=99 to see what's going on"; false; } } 3>&1 4>&2; cmd endif .SILENT: $(MAKECMDGOALS) |