+# SPDX-License-Identifier: GPL-2.0-only
#
# Copyright (C) 2006-2020 OpenWrt.org
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
+
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
GRUB_TERMINAL_CONFIG =
GRUB_CONSOLE_CMDLINE =
-ifneq ($(strip $(foreach subtarget,$(USE_ATKBD),$(CONFIG_TARGET_x86_$(subtarget)))),)
- GRUB2_VARIANT := generic
-else
- GRUB2_VARIANT := legacy
-endif
-
ifneq ($(CONFIG_GRUB_CONSOLE),)
GRUB_CONSOLE_CMDLINE += console=tty0
GRUB_TERMINALS += console
GRUB_SERIAL:=$(call qstrip,$(CONFIG_GRUB_SERIAL))
-ifneq ($(GRUB_SERIAL),)
- GRUB_CONSOLE_CMDLINE += console=$(GRUB_SERIAL),$(CONFIG_GRUB_BAUDRATE)n8$(if $(CONFIG_GRUB_FLOWCONTROL),r,)
- GRUB_SERIAL_CONFIG := serial --unit=0 --speed=$(CONFIG_GRUB_BAUDRATE) --word=8 --parity=no --stop=1 --rtscts=$(if $(CONFIG_GRUB_FLOWCONTROL),on,off)
- GRUB_TERMINALS += serial
-endif
+GRUB_CONSOLE_CMDLINE += console=$(GRUB_SERIAL),$(CONFIG_GRUB_BAUDRATE)n8$(if $(CONFIG_GRUB_FLOWCONTROL),r,)
+GRUB_SERIAL_CONFIG := serial --unit=0 --speed=$(CONFIG_GRUB_BAUDRATE) --word=8 --parity=no --stop=1 --rtscts=$(if $(CONFIG_GRUB_FLOWCONTROL),on,off)
+GRUB_TERMINALS += serial
-ifneq ($(GRUB_TERMINALS),)
- GRUB_TERMINAL_CONFIG := terminal_input $(GRUB_TERMINALS); terminal_output $(GRUB_TERMINALS)
-endif
+GRUB_TERMINAL_CONFIG := terminal_input $(GRUB_TERMINALS); terminal_output $(GRUB_TERMINALS)
ROOTPART:=$(call qstrip,$(CONFIG_TARGET_ROOTFS_PARTNAME))
ROOTPART:=$(if $(ROOTPART),$(ROOTPART),PARTUUID=$(IMG_PART_SIGNATURE)-02)
DEVICE_VARS += GRUB2_VARIANT
define Device/Default
ARTIFACT/image.iso := grub-config iso | iso
- IMAGE/combined.img := grub-config pc | combined | grub-install
- IMAGE/combined.img.gz := grub-config pc | combined | grub-install | gzip
+ IMAGE/combined.img := grub-config pc | combined | grub-install | append-metadata
+ IMAGE/combined.img.gz := grub-config pc | combined | grub-install | gzip | append-metadata
IMAGE/combined.vdi := grub-config pc | combined | grub-install | qemu-image vdi
IMAGE/combined.vmdk := grub-config pc | combined | grub-install | qemu-image vmdk
- IMAGE/rootfs.img := append-rootfs
- IMAGE/rootfs.img.gz := append-rootfs | gzip
+ IMAGE/combined.vhdx := grub-config pc | combined | grub-install | qemu-image vhdx -o subformat=dynamic
+ IMAGE/rootfs.img := append-rootfs | pad-to $(ROOTFS_PARTSIZE)
+ IMAGE/rootfs.img.gz := append-rootfs | pad-to $(ROOTFS_PARTSIZE) | gzip
ARTIFACT/image-efi.iso := grub-config iso | iso efi
- IMAGE/combined-efi.img := grub-config efi | combined efi | grub-install efi
- IMAGE/combined-efi.img.gz := grub-config efi | combined efi | grub-install efi | gzip
+ IMAGE/combined-efi.img := grub-config efi | combined efi | grub-install efi | append-metadata
+ IMAGE/combined-efi.img.gz := grub-config efi | combined efi | grub-install efi | gzip | append-metadata
IMAGE/combined-efi.vdi := grub-config efi | combined efi | grub-install efi | qemu-image vdi
IMAGE/combined-efi.vmdk := grub-config efi | combined efi | grub-install efi | qemu-image vmdk
+ IMAGE/combined-efi.vhdx := grub-config efi | combined efi | grub-install efi | qemu-image vhdx -o subformat=dynamic
ifeq ($(CONFIG_TARGET_IMAGES_GZIP),y)
IMAGES-y := rootfs.img.gz
IMAGES-$$(CONFIG_GRUB_IMAGES) += combined.img.gz
IMAGES-$$(CONFIG_GRUB_IMAGES) += combined.vmdk
IMAGES-$$(CONFIG_GRUB_EFI_IMAGES) += combined-efi.vmdk
endif
+ ifeq ($(CONFIG_VHDX_IMAGES),y)
+ IMAGES-$$(CONFIG_GRUB_IMAGES) += combined.vhdx
+ IMAGES-$$(CONFIG_GRUB_EFI_IMAGES) += combined-efi.vhdx
+ endif
IMAGES := $$(IMAGES-y)
ARTIFACTS := $$(ARTIFACTS-y)
+ SUPPORTED_DEVICES :=
endef
-$(eval $(call Image/gzip-ext4-padded-squashfs))
-
-ifeq ($(SUBTARGET),64)
- include 64.mk
-endif
-
-ifeq ($(SUBTARGET),generic)
- include generic.mk
-endif
-
-ifeq ($(SUBTARGET),geode)
- include geode.mk
-endif
-
-ifeq ($(SUBTARGET),legacy)
- include legacy.mk
-endif
+include $(SUBTARGET).mk
$(eval $(call BuildImage))