From 17d0fb76afb00be66f1d858e6d96582e0d4880c1 Mon Sep 17 00:00:00 2001 From: coolsnowwolf Date: Sun, 14 Oct 2018 15:27:07 +0800 Subject: [PATCH] add generate Proxmox VE and KVM qcow2 support in x86/x64 --- config/Config-images.in | 8 ++++++++ target/linux/x86/image/Makefile | 17 +++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/config/Config-images.in b/config/Config-images.in index 9c327d500..b9ae50c8a 100644 --- a/config/Config-images.in +++ b/config/Config-images.in @@ -261,6 +261,14 @@ menu "Target Images" depends on GRUB_IMAGES || EFI_IMAGES select TARGET_IMAGES_PAD select PACKAGE_kmod-tulip + + config QCOW2_IMAGES + bool "Build PVE/KVM image files (QCOW2)" + depends on TARGET_x86 || TARGET_x86_64 + default n + depends on GRUB_IMAGES || EFI_IMAGES + select TARGET_IMAGES_PAD + select PACKAGE_kmod-e1000 config TARGET_IMAGES_PAD bool "Pad images to filesystem size (for JFFS2)" diff --git a/target/linux/x86/image/Makefile b/target/linux/x86/image/Makefile index 88e21be3d..f9c5bde01 100644 --- a/target/linux/x86/image/Makefile +++ b/target/linux/x86/image/Makefile @@ -267,6 +267,21 @@ ifneq ($(CONFIG_VHD_IMAGES),) endef endif +ifneq ($(CONFIG_QCOW2_IMAGES),) + define Image/Build/qcow2 + rm $(BIN_DIR)/$(IMG_PREFIX)-combined-$(1).qcow2 || true + /usr/bin/qemu-img convert -O qcow2 \ + $(BIN_DIR)/$(IMG_PREFIX)-combined-$(1).img \ + $(BIN_DIR)/$(IMG_PREFIX)-combined-$(1).qcow2 + endef + define Image/Build/qcow2_efi + rm $(BIN_DIR)/$(IMG_PREFIX)-uefi-gpt-$(1).qcow2 || true + /usr/bin/qemu-img convert -O qcow2 \ + $(BIN_DIR)/$(IMG_PREFIX)-uefi-gpt-$(1).img \ + $(BIN_DIR)/$(IMG_PREFIX)-uefi-gpt-$(1).qcow2 + endef +endif + define Image/Build/gzip gzip -f9n $(BIN_DIR)/$(IMG_PREFIX)-rootfs-$(1).img ifneq ($(CONFIG_GRUB_IMAGES),) @@ -307,11 +322,13 @@ ifneq ($(CONFIG_GRUB_IMAGES),) $(call Image/Build/vdi,$(1)) $(call Image/Build/vmdk,$(1)) $(call Image/Build/vhd,$(1)) + $(call Image/Build/qcow2,$(1)) endif ifneq ($(CONFIG_EFI_IMAGES),) $(call Image/Build/vdi_efi,$(1)) $(call Image/Build/vmdk_efi,$(1)) $(call Image/Build/vhd_efi,$(1)) + $(call Image/Build/qcow2_efi,$(1)) endif $(CP) $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-rootfs-$(1).img else