Home | History | Annotate | Download | only in util
      1 #!/bin/sh
      2 
      3 if [ $# -eq 1 ]  ; then
      4 	OUTPUT=$1
      5 fi
      6 
      7 GVF=${OUTPUT}PERF-VERSION-FILE
      8 
      9 LF='
     10 '
     11 
     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 &&
     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
     26 	VN=$(MAKEFLAGS= make -sC ../.. kernelversion)
     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 
     43