Fix having verbose build with V=0, e.g: make V=0 -C tools/ perf Signed-off-by: Robert Richter <robert.richter@calxeda.com> Link: http://lkml.kernel.org/r/20130503134953.GU8356@rric.localhost Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
		
			
				
	
	
		
			79 lines
		
	
	
	
		
			2.3 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
	
		
			2.3 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
ifneq ($(O),)
 | 
						|
ifeq ($(origin O), command line)
 | 
						|
	dummy := $(if $(shell test -d $(O) || echo $(O)),$(error O=$(O) does not exist),)
 | 
						|
	ABSOLUTE_O := $(shell cd $(O) ; pwd)
 | 
						|
	OUTPUT := $(ABSOLUTE_O)/$(if $(subdir),$(subdir)/)
 | 
						|
	COMMAND_O := O=$(ABSOLUTE_O)
 | 
						|
ifeq ($(objtree),)
 | 
						|
	objtree := $(O)
 | 
						|
endif
 | 
						|
endif
 | 
						|
endif
 | 
						|
 | 
						|
# check that the output directory actually exists
 | 
						|
ifneq ($(OUTPUT),)
 | 
						|
OUTDIR := $(shell cd $(OUTPUT) && /bin/pwd)
 | 
						|
$(if $(OUTDIR),, $(error output directory "$(OUTPUT)" does not exist))
 | 
						|
endif
 | 
						|
 | 
						|
#
 | 
						|
# Include saner warnings here, which can catch bugs:
 | 
						|
#
 | 
						|
EXTRA_WARNINGS := -Wbad-function-cast
 | 
						|
EXTRA_WARNINGS += -Wdeclaration-after-statement
 | 
						|
EXTRA_WARNINGS += -Wformat-security
 | 
						|
EXTRA_WARNINGS += -Wformat-y2k
 | 
						|
EXTRA_WARNINGS += -Winit-self
 | 
						|
EXTRA_WARNINGS += -Wmissing-declarations
 | 
						|
EXTRA_WARNINGS += -Wmissing-prototypes
 | 
						|
EXTRA_WARNINGS += -Wnested-externs
 | 
						|
EXTRA_WARNINGS += -Wno-system-headers
 | 
						|
EXTRA_WARNINGS += -Wold-style-definition
 | 
						|
EXTRA_WARNINGS += -Wpacked
 | 
						|
EXTRA_WARNINGS += -Wredundant-decls
 | 
						|
EXTRA_WARNINGS += -Wshadow
 | 
						|
EXTRA_WARNINGS += -Wstrict-aliasing=3
 | 
						|
EXTRA_WARNINGS += -Wstrict-prototypes
 | 
						|
EXTRA_WARNINGS += -Wswitch-default
 | 
						|
EXTRA_WARNINGS += -Wswitch-enum
 | 
						|
EXTRA_WARNINGS += -Wundef
 | 
						|
EXTRA_WARNINGS += -Wwrite-strings
 | 
						|
EXTRA_WARNINGS += -Wformat
 | 
						|
 | 
						|
ifneq ($(findstring $(MAKEFLAGS), w),w)
 | 
						|
PRINT_DIR = --no-print-directory
 | 
						|
else
 | 
						|
NO_SUBDIR = :
 | 
						|
endif
 | 
						|
 | 
						|
#
 | 
						|
# Define a callable command for descending to a new directory
 | 
						|
#
 | 
						|
# Call by doing: $(call descend,directory[,target])
 | 
						|
#
 | 
						|
descend = \
 | 
						|
	+mkdir -p $(OUTPUT)$(1) && \
 | 
						|
	$(MAKE) $(COMMAND_O) subdir=$(if $(subdir),$(subdir)/$(1),$(1)) $(PRINT_DIR) -C $(1) $(2)
 | 
						|
 | 
						|
QUIET_SUBDIR0  = +$(MAKE) $(COMMAND_O) -C # space to separate -C and subdir
 | 
						|
QUIET_SUBDIR1  =
 | 
						|
 | 
						|
ifneq ($(findstring $(MAKEFLAGS),s),s)
 | 
						|
ifneq ($(V),1)
 | 
						|
	QUIET_CC       = @echo '   ' CC $@;
 | 
						|
	QUIET_AR       = @echo '   ' AR $@;
 | 
						|
	QUIET_LINK     = @echo '   ' LINK $@;
 | 
						|
	QUIET_MKDIR    = @echo '   ' MKDIR $@;
 | 
						|
	QUIET_GEN      = @echo '   ' GEN $@;
 | 
						|
	QUIET_SUBDIR0  = +@subdir=
 | 
						|
	QUIET_SUBDIR1  = ;$(NO_SUBDIR) echo '   ' SUBDIR $$subdir; \
 | 
						|
			 $(MAKE) $(PRINT_DIR) -C $$subdir
 | 
						|
	QUIET_FLEX     = @echo '   ' FLEX $@;
 | 
						|
	QUIET_BISON    = @echo '   ' BISON $@;
 | 
						|
 | 
						|
	descend = \
 | 
						|
		+@echo '   ' DESCEND $(1); \
 | 
						|
		mkdir -p $(OUTPUT)$(1) && \
 | 
						|
		$(MAKE) $(COMMAND_O) subdir=$(if $(subdir),$(subdir)/$(1),$(1)) $(PRINT_DIR) -C $(1) $(2)
 | 
						|
endif
 | 
						|
endif
 |