 a614d01bdd
			
		
	
	
	a614d01bdd
	
	
	
		
			
			When building perf out of tree:
  $ make perf-tar-src-pkg
  $ tar -xf perf-<ver>.tar -C /tmp
  $ cd /tmp/perf<ver>
  $ make -C tools/perf
you get this warning message:
    make[1]: *** No rule to make target `kernelversion'.  Stop.
Fix it by saving the perf version in the tar file and using that for the
out of tree builds.
v2: removed short form request and fixed up version string from usual output.
Signed-off-by: David Ahern <dsahern@gmail.com>
Suggested-by: Ingo Molnar <mingo@kernel.org>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: http://lkml.kernel.org/r/1383753335-25782-1-git-send-email-dsahern@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
		
	
			
		
			
				
	
	
		
			50 lines
		
	
	
	
		
			1,010 B
			
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
	
		
			1,010 B
			
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| if [ $# -eq 1 ]  ; then
 | |
| 	OUTPUT=$1
 | |
| fi
 | |
| 
 | |
| GVF=${OUTPUT}PERF-VERSION-FILE
 | |
| 
 | |
| LF='
 | |
| '
 | |
| 
 | |
| #
 | |
| # First check if there is a .git to get the version from git describe
 | |
| # otherwise try to get the version from the kernel Makefile
 | |
| #
 | |
| CID=
 | |
| TAG=
 | |
| if test -d ../../.git -o -f ../../.git
 | |
| then
 | |
| 	TAG=$(git describe --abbrev=0 --match "v[0-9].[0-9]*" 2>/dev/null )
 | |
| 	CID=$(git log -1 --abbrev=4 --pretty=format:"%h" 2>/dev/null) && CID="-g$CID"
 | |
| elif test -f ../../PERF-VERSION-FILE
 | |
| then
 | |
| 	TAG=$(cut -d' ' -f3 ../../PERF-VERSION-FILE | sed -e 's/\"//g')
 | |
| fi
 | |
| if test -z "$TAG"
 | |
| then
 | |
| 	TAG=$(MAKEFLAGS= make -sC ../.. kernelversion)
 | |
| fi
 | |
| VN="$TAG$CID"
 | |
| if test -n "$CID"
 | |
| then
 | |
| 	# format version string, strip trailing zero of sublevel:
 | |
| 	VN=$(echo "$VN" | sed -e 's/-/./g;s/\([0-9]*[.][0-9]*\)[.]0/\1/')
 | |
| fi
 | |
| 
 | |
| VN=$(expr "$VN" : v*'\(.*\)')
 | |
| 
 | |
| if test -r $GVF
 | |
| then
 | |
| 	VC=$(sed -e 's/^#define PERF_VERSION "\(.*\)"/\1/' <$GVF)
 | |
| else
 | |
| 	VC=unset
 | |
| fi
 | |
| test "$VN" = "$VC" || {
 | |
| 	echo >&2 "  PERF_VERSION = $VN"
 | |
| 	echo "#define PERF_VERSION \"$VN\"" >$GVF
 | |
| }
 | |
| 
 | |
| 
 |