version.sh 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #!/bin/sh
  2. # SPDX-License-Identifier: GPL-3.0-or-later
  3. # Copyright (c) 2012-2025 Daniele Bartolini et al.
  4. crown_version_major () {
  5. grep "#define CROWN_VERSION_MAJOR" src/config.h | cut -d' ' -f3
  6. }
  7. crown_version_minor () {
  8. grep "#define CROWN_VERSION_MINOR" src/config.h | cut -d' ' -f3
  9. }
  10. crown_version_patch () {
  11. grep "#define CROWN_VERSION_PATCH" src/config.h | cut -d' ' -f3
  12. }
  13. crown_version_string () {
  14. echo "${1}.${2}.${3}"
  15. }
  16. # Prints the current version of Crown from config.h.
  17. crown_version () {
  18. major=$(crown_version_major)
  19. minor=$(crown_version_minor)
  20. patch=$(crown_version_patch)
  21. crown_version_string ${major} ${minor} ${patch}
  22. }
  23. crown_set_version () {
  24. # Patch version numbers in config.h
  25. sed -i "s/CROWN_VERSION_MAJOR .*/CROWN_VERSION_MAJOR ${1}/g" src/config.h
  26. sed -i "s/CROWN_VERSION_MINOR .*/CROWN_VERSION_MINOR ${2}/g" src/config.h
  27. sed -i "s/CROWN_VERSION_PATCH .*/CROWN_VERSION_PATCH ${3}/g" src/config.h
  28. # Patch version string in config.vala
  29. sed -i "s/CROWN_VERSION_MAJOR = \".*/CROWN_VERSION_MAJOR = \"${1}\";/g" tools/config.vala
  30. sed -i "s/CROWN_VERSION_MINOR = \".*/CROWN_VERSION_MINOR = \"${2}\";/g" tools/config.vala
  31. sed -i "s/CROWN_VERSION_PATCH = \".*/CROWN_VERSION_PATCH = \"${3}\";/g" tools/config.vala
  32. }
  33. crown_docs_set_version () {
  34. # Patch version string in docs
  35. sed -i "s/version = '.*/version = '${1}.${2}.${3}'/g" docs/conf.py
  36. sed -i "s/release = '.*/release = '${1}.${2}.${3}'/g" docs/conf.py
  37. }