Messages in this thread | | | Date | Mon, 7 Dec 2015 17:22:41 +0800 | From | "Wangnan (F)" <> | Subject | Re: [PATCH 1/2] tools build: Introduce features dump include makefile |
| |
Sorry for the late response...
Tested-by: Wang Nan <wangnan0@huawei.com>
But I'm thinking whether we can remove FEATURE-DUMP and rely on FEATURE-INCLUDE only, since they contain same information...
Thank you.
On 2015/12/7 16:56, Jiri Olsa wrote: > ping, Wang Nan, any comments on these 2? > > thanks, > jirka > > On Fri, Nov 27, 2015 at 10:06:50AM +0100, Jiri Olsa wrote: >> Creating the FEATURE-INCLUDE file, that contains all features >> status dumped in make's variable format: >> ... >> feature-backtrace=1 >> feature-dwarf=1 >> ... >> >> It's purpose is to be included in sub-project makefiles to get >> features detection state. This way we can run the detection only >> in top level project and propagate it down. >> >> Cc: Wang Nan <wangnan0@huawei.com> >> Link: http://lkml.kernel.org/n/tip-fcq5rtdhcu4300sjp2p8l936@git.kernel.org >> Signed-off-by: Jiri Olsa <jolsa@kernel.org> >> --- >> tools/build/Makefile.feature | 12 ++++++++++++ >> tools/lib/bpf/.gitignore | 1 + >> tools/lib/bpf/Makefile | 2 +- >> tools/perf/.gitignore | 1 + >> tools/perf/Makefile.perf | 2 +- >> 5 files changed, 16 insertions(+), 2 deletions(-) >> >> diff --git a/tools/build/Makefile.feature b/tools/build/Makefile.feature >> index 37ff4c9f92f1..51f8d5928f98 100644 >> --- a/tools/build/Makefile.feature >> +++ b/tools/build/Makefile.feature >> @@ -131,6 +131,16 @@ ifeq ($(dwarf-post-unwind),1) >> FEATURE_DUMP += dwarf-post-unwind($(dwarf-post-unwind-text)) >> endif >> >> +# The FEATURE-INCLUDE file contains all features status >> +# dumped in make's variable format: >> +# ... >> +# feature-backtrace=1 >> +# feature-dwarf=1 >> +# ... >> +# It's to be included in sub-project makefiles to get >> +# features detection state. >> +FEATURE_INCLUDE_FILENAME = $(OUTPUT)FEATURE-INCLUDE$(FEATURE_USER) >> + >> # The $(feature_display) controls the default detection message >> # output. It's set if: >> # - detected features differes from stored features from >> @@ -140,6 +150,8 @@ endif >> >> ifneq ("$(FEATURE_DUMP)","$(FEATURE_DUMP_FILE)") >> $(shell echo "$(FEATURE_DUMP)" > $(FEATURE_DUMP_FILENAME)) >> + $(shell rm -f $(FEATURE_INCLUDE_FILENAME)) >> + $(foreach feat,$(FEATURE_TESTS),$(shell echo "feature-$(feat)=$(feature-$(feat))" >> $(FEATURE_INCLUDE_FILENAME))) >> feature_display := 1 >> endif >> >> diff --git a/tools/lib/bpf/.gitignore b/tools/lib/bpf/.gitignore >> index f81e549ddfdb..4019b8e4021a 100644 >> --- a/tools/lib/bpf/.gitignore >> +++ b/tools/lib/bpf/.gitignore >> @@ -1,2 +1,3 @@ >> libbpf_version.h >> FEATURE-DUMP.libbpf >> +FEATURE-INCLUDE.libbpf >> diff --git a/tools/lib/bpf/Makefile b/tools/lib/bpf/Makefile >> index 636e3ddb93a1..6916cbe962a5 100644 >> --- a/tools/lib/bpf/Makefile >> +++ b/tools/lib/bpf/Makefile >> @@ -190,7 +190,7 @@ config-clean: >> clean: >> $(call QUIET_CLEAN, libbpf) $(RM) *.o *~ $(TARGETS) *.a *.so $(VERSION_FILES) .*.d \ >> $(RM) LIBBPF-CFLAGS >> - $(call QUIET_CLEAN, core-gen) $(RM) $(OUTPUT)FEATURE-DUMP.libbpf >> + $(call QUIET_CLEAN, core-gen) $(RM) $(OUTPUT)FEATURE-DUMP.libbpf $(OUTPUT)FEATURE-INCLUDE.libbpf >> >> >> >> diff --git a/tools/perf/.gitignore b/tools/perf/.gitignore >> index 3d1bb802dbf4..4a3eb8dedc54 100644 >> --- a/tools/perf/.gitignore >> +++ b/tools/perf/.gitignore >> @@ -2,6 +2,7 @@ PERF-CFLAGS >> PERF-GUI-VARS >> PERF-VERSION-FILE >> FEATURE-DUMP >> +FEATURE-INCLUDE >> perf >> perf-read-vdso32 >> perf-read-vdsox32 >> diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf >> index 929a32ba15f5..b74f924185b7 100644 >> --- a/tools/perf/Makefile.perf >> +++ b/tools/perf/Makefile.perf >> @@ -589,7 +589,7 @@ clean: $(LIBTRACEEVENT)-clean $(LIBAPI)-clean $(LIBBPF)-clean config-clean >> $(Q)find . -name '*.o' -delete -o -name '\.*.cmd' -delete -o -name '\.*.d' -delete >> $(Q)$(RM) $(OUTPUT).config-detected >> $(call QUIET_CLEAN, core-progs) $(RM) $(ALL_PROGRAMS) perf perf-read-vdso32 perf-read-vdsox32 >> - $(call QUIET_CLEAN, core-gen) $(RM) *.spec *.pyc *.pyo */*.pyc */*.pyo $(OUTPUT)common-cmds.h TAGS tags cscope* $(OUTPUT)PERF-VERSION-FILE $(OUTPUT)FEATURE-DUMP $(OUTPUT)util/*-bison* $(OUTPUT)util/*-flex* \ >> + $(call QUIET_CLEAN, core-gen) $(RM) *.spec *.pyc *.pyo */*.pyc */*.pyo $(OUTPUT)common-cmds.h TAGS tags cscope* $(OUTPUT)PERF-VERSION-FILE $(OUTPUT)FEATURE-DUMP $(OUTPUT)FEATURE-INCLUDE $(OUTPUT)util/*-bison* $(OUTPUT)util/*-flex* \ >> $(OUTPUT)util/intel-pt-decoder/inat-tables.c >> $(QUIET_SUBDIR0)Documentation $(QUIET_SUBDIR1) clean >> $(python-clean) >> -- >> 2.4.3 >>
| |