]> code.ossystems Code Review - openembedded-core.git/commitdiff
wic: isoimage-isohybrid: fix UEFI spec breakage
authorIoan-Adrian Ratiu <adrian.ratiu@ni.com>
Thu, 28 Jun 2018 13:58:32 +0000 (16:58 +0300)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 24 Nov 2018 21:45:47 +0000 (21:45 +0000)
It's really good that OE supports multiple EFI_PROVIDERs and that
commit 9a1709278de87 ("wic: isoimage-isohybrid: use grub-efi from
deploy dir") makes re-use of the grub-efi built image, but we should
still respect the standard otherwise the ISO will not boot, so install
grub images as boot[x64|ia32].efi not ${PN}-boot[x64|ia32].efi.

(From OE-Core rev: 1608129692d92c239b5fb9244b649a32b9009254)

Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
scripts/lib/wic/plugins/source/isoimage-isohybrid.py

index d6bd3bff7bfbdfd6610ffaf24b9d51e1b8711b58..b119c9c2fd6e30fb69763d1035b31ab8adef7c3b 100644 (file)
@@ -328,16 +328,18 @@ class IsoImagePlugin(SourcePlugin):
                     raise WicError("Coludn't find target architecture")
 
                 if re.match("x86_64", target_arch):
-                    grub_image = "grub-efi-bootx64.efi"
+                    grub_src_image = "grub-efi-bootx64.efi"
+                    grub_dest_image = "bootx64.efi"
                 elif re.match('i.86', target_arch):
-                    grub_image = "grub-efi-bootia32.efi"
+                    grub_src_image = "grub-efi-bootia32.efi"
+                    grub_dest_image = "bootia32.efi"
                 else:
                     raise WicError("grub-efi is incompatible with target %s" %
                                    target_arch)
 
-                grub_target = os.path.join(target_dir, grub_image)
+                grub_target = os.path.join(target_dir, grub_dest_image)
                 if not os.path.isfile(grub_target):
-                    grub_src = os.path.join(deploy_dir, grub_image)
+                    grub_src = os.path.join(deploy_dir, grub_src_image)
                     if not os.path.exists(grub_src):
                         raise WicError("Grub loader %s is not found in %s. "
                                        "Please build grub-efi first" % (grub_image, deploy_dir))