Messages in this thread | | | From | Namhyung Kim <> | Subject | Re: [PATCH] perf tools: Speed up git-version test on re-make | Date | Wed, 02 Oct 2013 15:47:19 +0900 |
| |
On Tue, 1 Oct 2013 16:46:18 +0200, Ingo Molnar wrote:
[SNIP] > > -$(OUTPUT)PERF-VERSION-FILE: .FORCE-PERF-VERSION-FILE > +$(OUTPUT)PERF-VERSION-FILE: ../../.git/HEAD > @$(SHELL_PATH) util/PERF-VERSION-GEN $(OUTPUT) > + @touch $(OUTPUT)PERF-VERSION-FILE > > CC = $(CROSS_COMPILE)gcc > AR = $(CROSS_COMPILE)ar > @@ -813,7 +814,17 @@ clean: $(LIBTRACEEVENT)-clean $(LIBLK)-c > $(RM) $(OUTPUT)util/*-flex* > $(python-clean) > > +# > +# Trick: if ../../.git does not exist - we are building out of tree for example, > +# then force version regeneration: > +# > +ifeq ($(wildcard ../../.git/HEAD),) > + GIT-HEAD-PHONY = ../../.git/HEAD > +else > + GIT-HEAD-PHONY = > +endif > + > .PHONY: all install clean strip $(LIBTRACEEVENT) $(LIBLK) > .PHONY: shell_compatibility_test please_set_SHELL_PATH_to_a_more_modern_shell > -.PHONY: .FORCE-PERF-VERSION-FILE TAGS tags cscope .FORCE-PERF-CFLAGS > +.PHONY: $(GIT-HEAD-PHONY) TAGS tags cscope .FORCE-PERF-CFLAGS >
I found an unrelated bug. When I tried to build perf out of tree after 'make perf-targz-src-pkg' it cannot get any version number.
GEN common-cmds.h * new build flags or prefix make[1]: *** No rule to make target `kernelversion'. Stop. PERF_VERSION = ... AR libperf.a LINK perf
$ ./perf --version perf version
It looks like we should save and pass the result of 'make kernelversion' to the tarball.
Thanks, Namhyung
| |