summaryrefslogtreecommitdiff
path: root/misc/checkver.sh
blob: 3868ac9f4d71f9c31d9c3c6ca6c8d98413d740e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#! /bin/sh

err=0

for s in pgq pgq_node pgq_coop londiste pgq_ext; do
  code_hash=$(git log --raw -n 1 sql/$s/functions | head -1)
  fn="sql/$s/functions/$s.version.sql"
  ver_hash=$(git log --raw -n 1 "$fn" | head -1)
  test "${code_hash}" = "${ver_hash}" || echo "$s has code changes, needs new version"

  ver_func=$(sed -n "s/.*return *'\(.*\)';/\1/;T;p" $fn)
  ver_control=$(sed -n "s/default_version = '\(.*\)'/\1/;T;p" sql/$s/$s.control)
  ver_make=$(sed -n "s/EXT_VERSION = \(.*\)/\1/;T;p" sql/$s/Makefile)

  if test "${ver_func}|${ver_control}" = "${ver_make}|${ver_make}"; then
    echo "$s: $ver_control"
  else
    echo "$s: version mismatch"
    echo "   Makefile:  $ver_make"
    echo "   version(): $ver_func"
    echo "   control:   $ver_control"
    err=1
  fi
done

exit $err