| Ingo Molnar | 0780060 | 2009-04-20 15:00:56 +0200 | [diff] [blame] | 1 | #!/bin/sh | 
|  | 2 |  | 
| Arnaldo Carvalho de Melo | c29ede6 | 2010-03-27 14:30:45 -0300 | [diff] [blame] | 3 | if [ $# -eq 1 ]  ; then | 
|  | 4 | OUTPUT=$1 | 
|  | 5 | fi | 
|  | 6 |  | 
|  | 7 | GVF=${OUTPUT}PERF-VERSION-FILE | 
| Ingo Molnar | 0780060 | 2009-04-20 15:00:56 +0200 | [diff] [blame] | 8 |  | 
|  | 9 | LF=' | 
|  | 10 | ' | 
|  | 11 |  | 
| Thavidu Ranatunga | 869599c | 2010-07-05 18:00:15 +1000 | [diff] [blame] | 12 | # First check if there is a .git to get the version from git describe | 
|  | 13 | # otherwise try to get the version from the kernel makefile | 
|  | 14 | if test -d ../../.git -o -f ../../.git && | 
| Ingo Molnar | 0780060 | 2009-04-20 15:00:56 +0200 | [diff] [blame] | 15 | VN=$(git describe --abbrev=4 HEAD 2>/dev/null) && | 
|  | 16 | case "$VN" in | 
|  | 17 | *$LF*) (exit 1) ;; | 
|  | 18 | v[0-9]*) | 
|  | 19 | git update-index -q --refresh | 
|  | 20 | test -z "$(git diff-index --name-only HEAD --)" || | 
|  | 21 | VN="$VN-dirty" ;; | 
|  | 22 | esac | 
|  | 23 | then | 
|  | 24 | VN=$(echo "$VN" | sed -e 's/-/./g'); | 
|  | 25 | else | 
| Andy Whitcroft | 37aa9a2 | 2011-06-15 14:35:00 +0100 | [diff] [blame] | 26 | VN=$(MAKEFLAGS= make -sC ../.. kernelversion) | 
| Ingo Molnar | 0780060 | 2009-04-20 15:00:56 +0200 | [diff] [blame] | 27 | fi | 
|  | 28 |  | 
|  | 29 | VN=$(expr "$VN" : v*'\(.*\)') | 
|  | 30 |  | 
|  | 31 | if test -r $GVF | 
|  | 32 | then | 
|  | 33 | VC=$(sed -e 's/^PERF_VERSION = //' <$GVF) | 
|  | 34 | else | 
|  | 35 | VC=unset | 
|  | 36 | fi | 
|  | 37 | test "$VN" = "$VC" || { | 
|  | 38 | echo >&2 "PERF_VERSION = $VN" | 
|  | 39 | echo "PERF_VERSION = $VN" >$GVF | 
|  | 40 | } | 
|  | 41 |  | 
|  | 42 |  |