build/image: warn if missing qemu-img for VDI/VMDK
authorPaul Spooren <mail@aparcar.org>
Wed, 30 Dec 2020 19:08:17 +0000 (09:08 -1000)
committerPaul Spooren <mail@aparcar.org>
Sun, 10 Jan 2021 22:28:14 +0000 (12:28 -1000)
Currently `qemu-img` is used to convert raw x86 images to VDI and VMDK
images, used for virtual machines.

Having `qemu-img` in tree requires us to maintain an ancient version of
`qemu-utils`, which recently required extra work to compile with newer
compiler version.

This commit prints a warning message in case `qemu-img` is missing.

As a next step the in-tree version of `qemu-img` can be removed.

Signed-off-by: Paul Spooren <mail@aparcar.org>
include/image-commands.mk

index 979eafb15734a305320241f796ed735c8e4fe78b..3beec80c8b3f7bb7c45cc9610bce25cab2914154 100644 (file)
@@ -291,8 +291,12 @@ endef
 # Convert a raw image into a $1 type image.
 # E.g. | qemu-image vdi
 define Build/qemu-image
-       qemu-img convert -f raw -O $1 $@ $@.new
-       @mv $@.new $@
+       if command -v qemu-img; then \
+               qemu-img convert -f raw -O $1 $@ $@.new; \
+               mv $@.new $@; \
+       else \
+               echo "WARNING: Install qemu-img to create VDI/VMDK images" >&2; exit 1; \
+       fi
 endef
 
 define Build/qsdk-ipq-factory-nand