diff mbox series

[OpenWrt-Devel,4/6] x86: use qemu-image command from image-commands.mk

Message ID 20200320101059.19793-5-mail@aparcar.org
State Accepted
Delegated to: Daniel Golle
Headers show
Series x86: switch to generic image generation code | expand

Commit Message

Paul Spooren March 20, 2020, 10:10 a.m. UTC
The `qemu-image` command converts images to the specified type and
reduces redundant code.

Adaption from Alexander Couzens <lynxis@fe80.eu> work[0].

[0]: https://git.openwrt.org/?p=openwrt/staging/lynxis.git;a=blob;f=target/linux/x86/image/Makefile;h=83b8140b7aefbe708fd09c9c61827e7e39bda8b4;hb=416cccf398e9589e3de386e05b61b1c46cace20d#l51

Signed-off-by: Paul Spooren <mail@aparcar.org>
---
 include/image-commands.mk       |  7 +++++++
 target/linux/x86/image/Makefile | 14 ++------------
 2 files changed, 9 insertions(+), 12 deletions(-)
diff mbox series

Patch

diff --git a/include/image-commands.mk b/include/image-commands.mk
index 37cb083bbf..2ec1922044 100644
--- a/include/image-commands.mk
+++ b/include/image-commands.mk
@@ -414,3 +414,10 @@  define Build/kernel2minor
 	kernel2minor -k $@ -r $@.new $(1)
 	mv $@.new $@
 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 $@
+endef
diff --git a/target/linux/x86/image/Makefile b/target/linux/x86/image/Makefile
index 494a190b86..dfa1742d5a 100644
--- a/target/linux/x86/image/Makefile
+++ b/target/linux/x86/image/Makefile
@@ -92,23 +92,13 @@  define Build/iso
 		-o $@ $@.boot $(TARGET_DIR)
 endef
 
-define Build/vdi
-	qemu-img convert -f raw -O vdi $@ $@.new
-	@mv $@.new $@
-endef
-
-define Build/vmdk
-	qemu-img convert -f raw -O vmdk $@ $@.new
-	@mv $@.new $@
-endef
-
 DEVICE_VARS += GRUB2_VARIANT
 define Device/Default
   ARTIFACT/image.iso := grub-config iso | iso
   IMAGES := combined.img.gz
   IMAGE/combined.img.gz := append-rootfs | pad-extra 128k | grub-config pc | combined | grub-install | gzip
-  IMAGE/combined.vdi := append-rootfs | pad-extra 128k | grub-config pc | combined | grub-install | vdi
-  IMAGE/combined.vmdk := append-rootfs | pad-extra 128k | grub-config pc | combined | grub-install | vmdk
+  IMAGE/combined.vdi := append-rootfs | pad-extra 128k | grub-config pc | combined | grub-install | qemu-image vdi
+  IMAGE/combined.vmdk := append-rootfs | pad-extra 128k | grub-config pc | combined | grub-install | qemu-image vmdk
   KERNEL := kernel-bin
   KERNEL_INSTALL := 1
   KERNEL_NAME := bzImage