blob: 97d76562a1a093c8a4bfc6f4bca652fa410779e4 [file] [log] [blame]
Ingo Molnar07800602009-04-20 15:00:56 +02001#!/bin/sh
2
Arnaldo Carvalho de Meloc29ede62010-03-27 14:30:45 -03003if [ $# -eq 1 ] ; then
4 OUTPUT=$1
5fi
6
7GVF=${OUTPUT}PERF-VERSION-FILE
Ingo Molnar07800602009-04-20 15:00:56 +02008
9LF='
10'
11
Thavidu Ranatunga869599c2010-07-05 18:00:15 +100012# 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
14if test -d ../../.git -o -f ../../.git &&
Ingo Molnar07800602009-04-20 15:00:56 +020015 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
23then
24 VN=$(echo "$VN" | sed -e 's/-/./g');
25else
Thavidu Ranatunga869599c2010-07-05 18:00:15 +100026 eval `grep '^VERSION\s*=' ../../Makefile|tr -d ' '`
27 eval `grep '^PATCHLEVEL\s*=' ../../Makefile|tr -d ' '`
28 eval `grep '^SUBLEVEL\s*=' ../../Makefile|tr -d ' '`
29 eval `grep '^EXTRAVERSION\s*=' ../../Makefile|tr -d ' '`
30
31 VN="${VERSION}.${PATCHLEVEL}.${SUBLEVEL}${EXTRAVERSION}"
Ingo Molnar07800602009-04-20 15:00:56 +020032fi
33
34VN=$(expr "$VN" : v*'\(.*\)')
35
36if test -r $GVF
37then
38 VC=$(sed -e 's/^PERF_VERSION = //' <$GVF)
39else
40 VC=unset
41fi
42test "$VN" = "$VC" || {
43 echo >&2 "PERF_VERSION = $VN"
44 echo "PERF_VERSION = $VN" >$GVF
45}
46
47