-EXTRA_DIST += vswitchd/vswitch-idl.ovsidl
-BUILT_SOURCES += vswitchd/vswitch-idl.c vswitchd/vswitch-idl.h
-DISTCLEANFILES += vswitchd/vswitch-idl.c vswitchd/vswitch-idl.h
-noinst_DATA += vswitchd/vswitch-idl.ovsschema vswitchd/vswitch-idl.txt
-DISTCLEANFILES += vswitchd/vswitch-idl.ovsschema vswitchd/vswitch-idl.txt
-vswitchd/vswitch-idl.c vswitchd/vswitch-idl.h \
-vswitchd/vswitch-idl.ovsschema vswitchd/vswitch-idl.txt: \
- ovsdb/ovsdb-idlc.in
-vswitchd/vswitch-idl.c: vswitchd/vswitch-idl.h
-EXTRA_DIST += \
- vswitchd/vswitch-idl.c \
- vswitchd/vswitch-idl.h \
- vswitchd/vswitch-idl.ovsschema \
- vswitchd/vswitch-idl.txt
+# Version checking for vswitch.ovsschema.
+ALL_LOCAL += vswitchd/vswitch.ovsschema.stamp
+vswitchd/vswitch.ovsschema.stamp: vswitchd/vswitch.ovsschema
+ @sum=`sed '/cksum/d' $? | cksum`; \
+ expected=`sed -n 's/.*"cksum": "\(.*\)".*/\1/p' $?`; \
+ if test "X$$sum" = "X$$expected"; then \
+ touch $@; \
+ else \
+ ln=`sed -n '/"cksum":/=' $?`; \
+ echo >&2 "$?:$$ln: checksum \"$$sum\" does not match (you should probably update the version number and fix the checksum)"; \
+ exit 1; \
+ fi
+CLEANFILES += vswitchd/vswitch.ovsschema.stamp