depends on BR2_PACKAGE_MENDER # runtime
# grubenv provides it's own fw_printenv.
depends on !BR2_PACKAGE_UBOOT_TOOLS_FWPRINTENV
- depends on BR2_TARGET_GRUB2 # runtime
+ depends on BR2_TARGET_GRUB2
help
Contains the boot scripts and tools used by Mender to
integrate with the GRUB bootloader.
MENDER_GRUBENV_SITE = $(call github,mendersoftware,grub-mender-grubenv,$(MENDER_GRUBENV_VERSION))
MENDER_GRUBENV_LICENSE = Apache-2.0
MENDER_GRUBENV_LICENSE_FILES = LICENSE
+# Grub2 must be built first so this package can overwrite the config files
+# provided by grub.
+MENDER_GRUBENV_DEPENDENCIES = grub2
+MENDER_GRUBENV_INSTALL_IMAGES = YES
ifeq ($(BR2_TARGET_GRUB2_I386_PC)$(BR2_TARGET_GRUB2_ARM_UBOOT),y)
MENDER_GRUBENV_ENV_DIR = /boot/grub
else
-MENDER_GRUBENV_ENV_DIR = /boot/efi/EFI/BOOT
+MENDER_GRUBENV_ENV_DIR = /boot/EFI/BOOT
endif
MENDER_GRUBENV_MAKE_ENV = \
$(MENDER_GRUBENV_MAKE_ENV) $(MAKE) DESTDIR=$(TARGET_DIR) -C $(@D) install
endef
+# Overwrite the default grub2 config files with the ones in this package.
+define MENDER_GRUBENV_INSTALL_IMAGES_CMDS
+ mkdir -p $(BINARIES_DIR)/efi-part/EFI/BOOT
+ cp -dpfr $(TARGET_DIR)/boot/EFI/BOOT/grub.cfg \
+ $(TARGET_DIR)/boot/EFI/BOOT/mender_grubenv* \
+ $(BINARIES_DIR)/efi-part/EFI/BOOT
+endef
+
$(eval $(generic-package))