Merge tag 'for-netdev' of https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf
[linux-2.6-block.git] / tools / perf / util / PERF-VERSION-GEN
CommitLineData
07800601 1#!/bin/sh
b2441318 2# SPDX-License-Identifier: GPL-2.0
07800601 3
c29ede61
ACM
4if [ $# -eq 1 ] ; then
5 OUTPUT=$1
6fi
7
8GVF=${OUTPUT}PERF-VERSION-FILE
07800601
IM
9
10LF='
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
17CID=
18TAG=
19if test -d ../../.git -o -f ../../.git
07800601 20then
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
23elif test -f ../../PERF-VERSION-FILE
24then
a614d01b 25 TAG=$(cut -d' ' -f3 ../../PERF-VERSION-FILE | sed -e 's/\"//g')
a4147f0f 26fi
81935f10
WC
27if test -z "$TAG"
28then
29 TAG=$(MAKEFLAGS= make -sC ../.. kernelversion)
30fi
7572733b 31
a4147f0f
RR
32VN="$TAG$CID"
33if test -n "$CID"
34then
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
37fi
38
39VN=$(expr "$VN" : v*'\(.*\)')
40
41if test -r $GVF
42then
3cecaa20 43 VC=$(sed -e 's/^#define PERF_VERSION "\(.*\)"/\1/' <$GVF)
07800601
IM
44else
45 VC=unset
46fi
47test "$VN" = "$VC" || {
3fae82db 48 echo >&2 " PERF_VERSION = $VN"
3cecaa20 49 echo "#define PERF_VERSION \"$VN\"" >$GVF
07800601
IM
50}
51
52