automake: Consolidate schema checksum check.
[cascardo/ovs.git] / build-aux / cksum-schema-check
diff --git a/build-aux/cksum-schema-check b/build-aux/cksum-schema-check
new file mode 100755 (executable)
index 0000000..0fe37e4
--- /dev/null
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+schema=$1
+stamp=$2
+
+sum=`sed '/cksum/d' $schema | cksum`
+expected=`sed -n 's/.*"cksum": "\(.*\)".*/\1/p' $schema`
+if test "X$sum" = "X$expected"; then
+    touch $stamp
+else
+    ln=`sed -n '/"cksum":/=' $schema`
+    echo >&2 "$schema:$ln: The checksum \"$sum\" was calculated from the schema file and does not match cksum field in the schema file - you should probably update the version number and the checksum in the schema file with the value listed here."
+    exit 1
+fi