Commit | Line | Data |
---|---|---|
07800601 | 1 | #!/bin/sh |
b2441318 | 2 | # SPDX-License-Identifier: GPL-2.0 |
07800601 | 3 | |
c29ede61 ACM |
4 | if [ $# -eq 1 ] ; then |
5 | OUTPUT=$1 | |
6 | fi | |
7 | ||
8 | GVF=${OUTPUT}PERF-VERSION-FILE | |
07800601 IM |
9 | |
10 | LF=' | |
11 | ' | |
12 | ||
0e2af956 | 13 | # |
81935f10 WC |
14 | # Use version from kernel Makefile unless not in a git repository and |
15 | # PERF-VERSION-FILE exists | |
0e2af956 | 16 | # |
a4147f0f RR |
17 | CID= |
18 | TAG= | |
19 | if test -d ../../.git -o -f ../../.git | |
07800601 | 20 | then |
7572733b | 21 | TAG=$(MAKEFLAGS= make -sC ../.. kernelversion) |
f24fb539 | 22 | CID=$(git log -1 --abbrev=12 --pretty=format:"%h" --no-show-signature 2>/dev/null) && CID="-g$CID" |
81935f10 WC |
23 | elif test -f ../../PERF-VERSION-FILE |
24 | then | |
a614d01b | 25 | TAG=$(cut -d' ' -f3 ../../PERF-VERSION-FILE | sed -e 's/\"//g') |
a4147f0f | 26 | fi |
81935f10 WC |
27 | if test -z "$TAG" |
28 | then | |
29 | TAG=$(MAKEFLAGS= make -sC ../.. kernelversion) | |
30 | fi | |
7572733b | 31 | |
a4147f0f RR |
32 | VN="$TAG$CID" |
33 | if test -n "$CID" | |
34 | then | |
35 | # format version string, strip trailing zero of sublevel: | |
36 | VN=$(echo "$VN" | sed -e 's/-/./g;s/\([0-9]*[.][0-9]*\)[.]0/\1/') | |
07800601 IM |
37 | fi |
38 | ||
39 | VN=$(expr "$VN" : v*'\(.*\)') | |
40 | ||
41 | if test -r $GVF | |
42 | then | |
3cecaa20 | 43 | VC=$(sed -e 's/^#define PERF_VERSION "\(.*\)"/\1/' <$GVF) |
07800601 IM |
44 | else |
45 | VC=unset | |
46 | fi | |
47 | test "$VN" = "$VC" || { | |
3fae82db | 48 | echo >&2 " PERF_VERSION = $VN" |
3cecaa20 | 49 | echo "#define PERF_VERSION \"$VN\"" >$GVF |
07800601 IM |
50 | } |
51 | ||
52 |