/contrib/ntp/scripts/genver

https://bitbucket.org/freebsd/freebsd-head/ · Shell · 67 lines · 54 code · 9 blank · 4 comment · 1 complexity · 845c62149277f66103adf12d0dd0dae3 MD5 · raw file

  1. #! /bin/sh
  2. # possible usage: $0 [-f] [version.m4] [version.def]
  3. #
  4. # -f would be 'force the update'
  5. force=0
  6. outputs=
  7. for i in $*
  8. do
  9. case "$i" in
  10. -f) force=1 ;;
  11. version.m4)
  12. outputs="version.m4 $outputs"
  13. ;;
  14. *version.def)
  15. outputs="include/version.def $outputs"
  16. ;;
  17. *) echo "Unrecognized option: $i"
  18. exit 1
  19. ;;
  20. esac
  21. done
  22. case "$outputs" in
  23. '') outputs="version.m4 include/version.def" ;;
  24. esac
  25. set -e
  26. . ./packageinfo.sh
  27. dversion=`scripts/VersionName`
  28. set +e
  29. case "$outputs" in
  30. *version.m4*)
  31. echo "m4_define([VERSION_NUMBER],[${dversion}])" > /tmp/version.m4+
  32. cmp -s /tmp/version.m4+ version.m4
  33. rc=$?
  34. case "$force$rc" in
  35. 00)
  36. rm -f /tmp/version.m4+
  37. ;;
  38. *)
  39. mv /tmp/version.m4+ version.m4
  40. ;;
  41. esac
  42. ;;
  43. esac
  44. case "$outputs" in
  45. *version.def*)
  46. echo "version = '${dversion}';" > /tmp/version.def+
  47. cmp -s /tmp/version.def+ include/version.def
  48. rc=$?
  49. case "$force$rc" in
  50. 00)
  51. rm -f /tmp/version.def+
  52. ;;
  53. *)
  54. mv /tmp/version.def+ include/version.def
  55. ;;
  56. esac
  57. ;;
  58. esac