grub2: build El Torito image only for i386 PC platform
authorKinsella, Ray <ray.kinsella@intel.com>
Wed, 29 Jul 2015 11:52:14 +0000 (11:52 +0000)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Wed, 29 Jul 2015 15:03:15 +0000 (17:03 +0200)
Building Grub2 El Torito for i386 EFI errors complaining it cannot
find cdboot.img

        cdboot.img: No such file or directory

This commit builds El Torito for i386 PC only.

[Thomas: fix installation ordering.]

Signed-off-by: Ray Kinsella <ray.kinsella@intel.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
boot/grub2/grub2.mk

index 280b4d62acd667fde651effc9b71ba378b9e95c4..1fc910ee70344ddb62064981bd8bfeea50434b4b 100644 (file)
@@ -67,6 +67,13 @@ GRUB2_CONF_OPTS = \
 
 GRUB2_INSTALL_TARGET_OPTS = DESTDIR=$(HOST_DIR) install
 
+ifeq ($(BR2_TARGET_GRUB2_I386_PC),y)
+define GRUB2_IMAGE_INSTALL_ELTORITO
+       cat $(HOST_DIR)/usr/lib/grub/$(GRUB2_TUPLE)/cdboot.img $(GRUB2_IMAGE) > \
+               $(BINARIES_DIR)/grub-eltorito.img
+endef
+endif
+
 define GRUB2_IMAGE_INSTALLATION
        mkdir -p $(dir $(GRUB2_IMAGE))
        $(HOST_DIR)/usr/bin/grub-mkimage \
@@ -76,10 +83,9 @@ define GRUB2_IMAGE_INSTALLATION
                -p "$(GRUB2_PREFIX)" \
                $(if $(GRUB2_BUILTIN_CONFIG),-c $(GRUB2_BUILTIN_CONFIG)) \
                $(GRUB2_BUILTIN_MODULES)
-       cat $(HOST_DIR)/usr/lib/grub/$(GRUB2_TUPLE)/cdboot.img $(GRUB2_IMAGE) > \
-               $(BINARIES_DIR)/grub-eltorito.img
        mkdir -p $(dir $(GRUB2_CFG))
        $(INSTALL) -D -m 0644 boot/grub2/grub.cfg $(GRUB2_CFG)
+       $(GRUB2_IMAGE_INSTALL_ELTORITO)
 endef
 GRUB2_POST_INSTALL_TARGET_HOOKS += GRUB2_IMAGE_INSTALLATION