48 lines
1.0 KiB
Makefile
48 lines
1.0 KiB
Makefile
#
|
|
# Copyright (C) 2006 OpenWrt.org
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
# $Id:$
|
|
|
|
ifeq ($(NO_TRACE_MAKE),)
|
|
NO_TRACE_MAKE := $(MAKE) V=99
|
|
export NO_TRACE_MAKE
|
|
endif
|
|
|
|
ifndef KBUILD_VERBOSE
|
|
KBUILD_VERBOSE:=0
|
|
endif
|
|
ifeq ("$(origin V)", "command line")
|
|
KBUILD_VERBOSE:=$(V)
|
|
endif
|
|
|
|
ifeq ($(IS_TTY),1)
|
|
_Y:="\\033[33m" # yellow
|
|
_N:="\\033[m" #normal
|
|
endif
|
|
|
|
define MESSAGE
|
|
echo -e "$(_Y)$(1)$(_N)" >&3
|
|
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)"); \
|
|
}
|
|
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
|
|
endif
|
|
|
|
.SILENT: $(MAKECMDGOALS)
|
|
endif
|