blob: 26d4d3fd6deb2e1285ca44c9a710e7cadffd374d [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
Josh Hunt58d406e2011-03-15 19:16:40 -070026 eval $(grep '^VERSION[[:space:]]*=' ../../Makefile|tr -d ' ')
27 eval $(grep '^PATCHLEVEL[[:space:]]*=' ../../Makefile|tr -d ' ')
28 eval $(grep '^SUBLEVEL[[:space:]]*=' ../../Makefile|tr -d ' ')
29 eval $(grep '^EXTRAVERSION[[:space:]]*=' ../../Makefile|tr -d ' ')
Thavidu Ranatunga869599c2010-07-05 18:00:15 +100030
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