186470930SIngo Molnar#!/bin/sh 2b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 386470930SIngo Molnar 4c29ede61SArnaldo Carvalho de Meloif [ $# -eq 1 ] ; then 5c29ede61SArnaldo Carvalho de Melo OUTPUT=$1 6c29ede61SArnaldo Carvalho de Melofi 7c29ede61SArnaldo Carvalho de Melo 8c29ede61SArnaldo Carvalho de MeloGVF=${OUTPUT}PERF-VERSION-FILE 986470930SIngo Molnar 1086470930SIngo MolnarLF=' 1186470930SIngo Molnar' 1286470930SIngo Molnar 130e2af956SIngo Molnar# 1481935f10SWill Chandler# Use version from kernel Makefile unless not in a git repository and 1581935f10SWill Chandler# PERF-VERSION-FILE exists 160e2af956SIngo Molnar# 17a4147f0fSRobert RichterCID= 18a4147f0fSRobert RichterTAG= 19a4147f0fSRobert Richterif test -d ../../.git -o -f ../../.git 2086470930SIngo Molnarthen 217572733bSJohn Garry TAG=$(MAKEFLAGS= make -sC ../.. kernelversion) 22*f24fb539SAhelenia Ziemiańska CID=$(git log -1 --abbrev=12 --pretty=format:"%h" --no-show-signature 2>/dev/null) && CID="-g$CID" 2381935f10SWill Chandlerelif test -f ../../PERF-VERSION-FILE 2481935f10SWill Chandlerthen 25a614d01bSDavid Ahern TAG=$(cut -d' ' -f3 ../../PERF-VERSION-FILE | sed -e 's/\"//g') 26a4147f0fSRobert Richterfi 2781935f10SWill Chandlerif test -z "$TAG" 2881935f10SWill Chandlerthen 2981935f10SWill Chandler TAG=$(MAKEFLAGS= make -sC ../.. kernelversion) 3081935f10SWill Chandlerfi 317572733bSJohn Garry 32a4147f0fSRobert RichterVN="$TAG$CID" 33a4147f0fSRobert Richterif test -n "$CID" 34a4147f0fSRobert Richterthen 35a4147f0fSRobert Richter # format version string, strip trailing zero of sublevel: 36a4147f0fSRobert Richter VN=$(echo "$VN" | sed -e 's/-/./g;s/\([0-9]*[.][0-9]*\)[.]0/\1/') 3786470930SIngo Molnarfi 3886470930SIngo Molnar 3986470930SIngo MolnarVN=$(expr "$VN" : v*'\(.*\)') 4086470930SIngo Molnar 4186470930SIngo Molnarif test -r $GVF 4286470930SIngo Molnarthen 433cecaa20SNamhyung Kim VC=$(sed -e 's/^#define PERF_VERSION "\(.*\)"/\1/' <$GVF) 4486470930SIngo Molnarelse 4586470930SIngo Molnar VC=unset 4686470930SIngo Molnarfi 4786470930SIngo Molnartest "$VN" = "$VC" || { 4886470930SIngo Molnar echo >&2 " PERF_VERSION = $VN" 493cecaa20SNamhyung Kim echo "#define PERF_VERSION \"$VN\"" >$GVF 5086470930SIngo Molnar} 5186470930SIngo Molnar 5286470930SIngo Molnar 53