fix empty AAVMF_VARS.fd file

Adapted from:
5e68feec5b

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
Thomas Lamprecht 2023-05-24 10:45:25 +02:00
parent ee520d695f
commit 2cfb5323bd

11
debian/rules vendored
View File

@ -208,9 +208,14 @@ build-qemu-efi: debian/setup-build-stamp
-t $(EDK2_TOOLCHAIN) \ -t $(EDK2_TOOLCHAIN) \
-p ArmVirtPkg/ArmVirtQemu.dsc \ -p ArmVirtPkg/ArmVirtQemu.dsc \
$(AAVMF_FLAGS) -b $(BUILD_TYPE) $(AAVMF_FLAGS) -b $(BUILD_TYPE)
dd if=/dev/zero of=$(QEMU_EFI_BUILD_DIR)/FV/$(FW_NAME)_CODE.fd bs=1M seek=64 count=0 cp $(QEMU_EFI_BUILD_DIR)/FV/QEMU_EFI.fd \
dd if=$(QEMU_EFI_BUILD_DIR)/FV/QEMU_EFI.fd of=$(QEMU_EFI_BUILD_DIR)/FV/$(FW_NAME)_CODE.fd conv=notrunc $(QEMU_EFI_BUILD_DIR)/FV/$(FW_NAME)_CODE.fd
dd if=/dev/zero of=$(QEMU_EFI_BUILD_DIR)/FV/$(FW_NAME)_VARS.fd bs=1M seek=64 count=0 cp $(QEMU_EFI_BUILD_DIR)/FV/QEMU_VARS.fd \
$(QEMU_EFI_BUILD_DIR)/FV/$(FW_NAME)_VARS.fd
# QEMU expects 64MiB CODE and VARS files on ARM/AARCH64 architectures
# Truncate the firmware files to the expected size
truncate -s 64M $(QEMU_EFI_BUILD_DIR)/FV/$(FW_NAME)_CODE.fd
truncate -s 64M $(QEMU_EFI_BUILD_DIR)/FV/$(FW_NAME)_VARS.fd
build-qemu-efi-aarch64: $(AAVMF_BINARIES) $(AAVMF_IMAGES) $(AAVMF_PREENROLLED_VARS) build-qemu-efi-aarch64: $(AAVMF_BINARIES) $(AAVMF_IMAGES) $(AAVMF_PREENROLLED_VARS)
$(AAVMF_BINARIES) $(AAVMF_IMAGES): ArmPkg/Library/GccLto/liblto-aarch64.a $(AAVMF_BINARIES) $(AAVMF_IMAGES): ArmPkg/Library/GccLto/liblto-aarch64.a