qemu_v8: check that Xen and Xen tools are the same version

Xen is built from $(ROOT)/xen and Xen tools are built from
$(ROOT)/buildroot/package/xen. They need to be the same major.minor
version, otherwise the Xen tool commands ('xl ...') are likely to fail
in more or less obscure ways.

Add a build time check and fail early if versions do not match.

Signed-off-by: Jerome Forissier <jerome@forissier.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Acked-by: Ruchika Gupta <ruchika.gupta@linaro.org>
diff --git a/qemu_v8.mk b/qemu_v8.mk
index c11c6ea..3f4ef86 100644
--- a/qemu_v8.mk
+++ b/qemu_v8.mk
@@ -346,6 +346,19 @@
 xen-clean:
 	$(MAKE) -C $(XEN_PATH) clean
 
+# Make sure Xen and Xen tools have the same major.minor version or things are likely to break
+ifeq ($(XEN_BOOT),y)
+xen-br = $(ROOT)/buildroot/package/xen/xen.mk
+xen-xen = $(ROOT)/xen/xen/Makefile
+xen-version-br = $(shell sed -E -n 's/^XEN_VERSION = ([0-9]+.[0-9]+).*/\1/p' $(xen-br))
+xen-version-major-xen = $(shell sed -E -n 's/export XEN_VERSION *= ([0-9]+).*/\1/p' $(xen-xen))
+xen-version-minor-xen = $(shell sed -E -n 's/export XEN_SUBVERSION *= ([0-9]+).*/\1/p' $(xen-xen))
+xen-version-xen = $(xen-version-major-xen).$(xen-version-minor-xen)
+ifneq ($(xen-version-br),$(xen-version-xen))
+$(error Xen version mismatch: $(xen-version-br) [in $(xen-br)] != $(xen-version-xen) [in $(xen-xen)])
+endif
+endif
+
 ################################################################################
 # Run targets
 ################################################################################