Even with current '.make.output' finding the root cause for missing feature is not enough. This patch adds extra information to .make.output. It also creates a .make.makeoutput to collect output of 'make'.
Signed-off-by: Wang Nan <wangn...@huawei.com> Cc: Daniel Wagner <daniel.wag...@bmw-carit.de> Cc: Jiri Olsa <jo...@kernel.org> --- tools/build/Makefile.feature | 4 ++-- tools/build/feature/Makefile | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/tools/build/Makefile.feature b/tools/build/Makefile.feature index 6c0519d..84927df 100644 --- a/tools/build/Makefile.feature +++ b/tools/build/Makefile.feature @@ -1,13 +1,13 @@ feature_dir := $(srctree)/tools/build/feature ifneq ($(OUTPUT),) - OUTPUT_FEATURES = $(OUTPUT)feature/ + OUTPUT_FEATURES = $(OUTPUT)feature$(FEATURE_USER)/ $(shell mkdir -p $(OUTPUT_FEATURES)) endif feature_check = $(eval $(feature_check_code)) define feature_check_code - feature-$(1) := $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS) $(FEATURE_CHECK_CFLAGS-$(1))" LDFLAGS="$(LDFLAGS) $(FEATURE_CHECK_LDFLAGS-$(1))" -C $(feature_dir) $(OUTPUT_FEATURES)test-$1.bin >/dev/null 2>/dev/null && echo 1 || echo 0) + feature-$(1) := $(shell $(MAKE) OUTPUT=$(OUTPUT_FEATURES) CFLAGS="$(EXTRA_CFLAGS) $(FEATURE_CHECK_CFLAGS-$(1))" LDFLAGS="$(LDFLAGS) $(FEATURE_CHECK_LDFLAGS-$(1))" -C $(feature_dir) $(OUTPUT_FEATURES)test-$1.bin >$(OUTPUT_FEATURES)test-$1.make.makeoutput 2>&1 && echo 1 || echo 0) endef feature_set = $(eval $(feature_set_code)) diff --git a/tools/build/feature/Makefile b/tools/build/feature/Makefile index bf8f035..842973a 100644 --- a/tools/build/feature/Makefile +++ b/tools/build/feature/Makefile @@ -45,7 +45,12 @@ PKG_CONFIG := $(CROSS_COMPILE)pkg-config all: $(FILES) __BUILD = $(CC) $(CFLAGS) -Wall -Werror -o $@ $(patsubst %.bin,%.c,$(@F)) $(LDFLAGS) - BUILD = $(__BUILD) > $(@:.bin=.make.output) 2>&1 + BUILD = echo PWD=$(shell pwd) > $(@:.bin=.make.output); \ + echo PATH=$$PATH >> $(@:.bin=.make.output); \ + echo CFLAGS=$$CFLAGS >> $(@:.bin=.make.output); \ + echo LDFLAGS=$$LDFLAGS >> $(@:.bin=.make.output); \ + echo '$(__BUILD)' >> $(@:.bin=.make.output) ; \ + $(__BUILD) >> $(@:.bin=.make.output) 2>&1 ############################### -- 1.8.3.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/