pve-kernel-thunderx/scripts/version.sh
2021-03-28 20:46:50 +02:00

58 lines
1.4 KiB
Bash
Executable file

#!/bin/bash
# Script for parsing version information in the repository
set -e
set -o pipefail
LINUX_REPOSITORY=linux
LINUX_VERSION=$(sed -n "s/^VERSION = \([0-9]*$\)/\1/p" < linux/Makefile | xargs)
LINUX_PATCHLEVEL=$(sed -n "s/^PATCHLEVEL = \([0-9]*$\)/\1/p" < linux/Makefile | xargs)
LINUX_SUBLEVEL=$(sed -n "s/^SUBLEVEL = \([0-9]*$\)/\1/p" < linux/Makefile | xargs)
LINUX_VERSION_FULL=$LINUX_VERSION.$LINUX_PATCHLEVEL.$LINUX_SUBLEVEL
PACKAGE_VERSION=$(dpkg-parsechangelog -SVersion)
PACKAGE_RELEASE=$(echo $PACKAGE_VERSION | sed -n 's/^.*-\([0-9]*\).*$/\1/p' | xargs)
while getopts "MmnprdLh" OPTION; do
case $OPTION in
M)
echo $LINUX_VERSION
exit 0
;;
m)
echo $LINUX_PATCHLEVEL
exit 0
;;
n)
echo $LINUX_VERSION.$LINUX_PATCHLEVEL
exit 0
;;
p)
echo $LINUX_SUBLEVEL
exit 0
;;
r)
echo $PACKAGE_RELEASE
exit 0
;;
L)
echo $LINUX_VERSION_FULL
exit 0
;;
h)
echo "version.sh [-Mmnprfh]"
echo " -M major version"
echo " -m minor version"
echo " -n major minor version"
echo " -p patch version"
echo " -r package release"
echo " -L Linux version"
echo " -h this help message"
exit 1
;;
*)
echo "Incorrect options provided"
exit 1
;;
esac
done
echo "$PACKAGE_VERSION"