version.sh 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #!/bin/bash
  2. # Script for parsing version information in the repository
  3. set -e
  4. set -o pipefail
  5. LINUX_REPOSITORY=submodules/ubuntu-mainline
  6. LINUX_VERSION_MAJOR=$(sed -n "s/^KERNEL_MAJ=\([0-9]*$\)/\1/p" < Makefile | xargs)
  7. LINUX_VERSION_MINOR=$(sed -n "s/^KERNEL_MIN=\([0-9]*$\)/\1/p" < Makefile | xargs)
  8. LINUX_VERSION_PATCHLEVEL=$(sed -n "s/^KERNEL_PATCHLEVEL=\([0-9]*$\)/\1/p" < Makefile | xargs)
  9. LINUX_VERSION_PATCHLEVEL=${LINUX_VERSION_PATCHLEVEL:-0}
  10. LINUX_VERSION=$LINUX_VERSION_MAJOR.$LINUX_VERSION_MINOR.$LINUX_VERSION_PATCHLEVEL
  11. LINUX_PACKAGE_RELEASE=$(sed -n "s/^PKGREL=\(.*\)$/\1/p" < Makefile | xargs)
  12. LINUX_FLAVOR=$(sed -n "s/^PVE_BUILD_TYPE ?=\(.*\)$/\1/p" < Makefile | xargs)
  13. while getopts "MmprfdLBh" OPTION; do
  14. case $OPTION in
  15. M)
  16. echo $LINUX_VERSION_MAJOR
  17. exit 0
  18. ;;
  19. m)
  20. echo $LINUX_VERSION_MINOR
  21. exit 0
  22. ;;
  23. p)
  24. echo $LINUX_VERSION_PATCHLEVEL
  25. exit 0
  26. ;;
  27. r)
  28. echo $LINUX_PACKAGE_RELEASE
  29. exit 0
  30. ;;
  31. f)
  32. echo $LINUX_FLAVOR
  33. exit 0
  34. ;;
  35. f)
  36. echo $LINUX_FLAVOR
  37. exit 0
  38. ;;
  39. L)
  40. echo $LINUX_VERSION
  41. exit 0
  42. ;;
  43. B)
  44. echo $(git --git-dir $LINUX_REPOSITORY/.git log -1 --pretty=%B | sed -n "s/^.*Ubuntu-\([0-9.-]*\).*$/\1/p")
  45. exit 0
  46. ;;
  47. h)
  48. echo "commit.sh [-Mmprfh]]"
  49. echo " -M major version"
  50. echo " -m minor version"
  51. echo " -p patch version"
  52. echo " -r package release"
  53. echo " -f flavor name"
  54. echo " -L Linux version"
  55. echo " -h this help message"
  56. exit 1
  57. ;;
  58. *)
  59. echo "Incorrect options provided"
  60. exit 1
  61. ;;
  62. esac
  63. done
  64. if [[ -z "$LINUX_FLAVOR" ]]; then
  65. LINUX_FLAVOR_SUFFIX=-$LINUX_FLAVOR
  66. fi
  67. echo "$LINUX_VERSION$LINUX_FLAVOR_SUFFIX-$LINUX_PACKAGE_RELEASE"