summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Wessel <jason.wessel@windriver.com>2013-09-17 13:32:12 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-09-26 17:27:22 +0100
commit0bc0762a479b5182a07fccb2b1e9cd5fc15ca485 (patch)
tree7f44bbe9ac311b769b995450903d21853d1999bf
parent3f5f9d2681d41e44dade5d3a5a4bff3fd38f5506 (diff)
downloadopenembedded-core-0bc0762a479b5182a07fccb2b1e9cd5fc15ca485.tar.gz
openembedded-core-0bc0762a479b5182a07fccb2b1e9cd5fc15ca485.tar.bz2
openembedded-core-0bc0762a479b5182a07fccb2b1e9cd5fc15ca485.zip
grub-efi-native: Add support for EFI ISO images
The iso9660 file system support needs to be added to grub in order to be able to correctly find the grub.cfg. The grub commands to locate the grub.cfg also needs to be encoded into grub's default configuration. This change allows the resulting grub binary to work both in the hard drive / USB boot case or the optical media boot case. [YOCTO #4100] Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Reviewed-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-bsp/grub/files/cfg2
-rw-r--r--meta/recipes-bsp/grub/grub-efi-native_2.00.bb7
2 files changed, 7 insertions, 2 deletions
diff --git a/meta/recipes-bsp/grub/files/cfg b/meta/recipes-bsp/grub/files/cfg
new file mode 100644
index 0000000000..ffffe47638
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/cfg
@@ -0,0 +1,2 @@
+search.file /EFI/BOOT/grub.cfg root
+set prefix=($root)/EFI/BOOT
diff --git a/meta/recipes-bsp/grub/grub-efi-native_2.00.bb b/meta/recipes-bsp/grub/grub-efi-native_2.00.bb
index 2d3d68a9b8..04973b524f 100644
--- a/meta/recipes-bsp/grub/grub-efi-native_2.00.bb
+++ b/meta/recipes-bsp/grub/grub-efi-native_2.00.bb
@@ -23,6 +23,7 @@ PR = "r2"
PN := "grub-efi-${TRANSLATED_TARGET_ARCH}-native"
SRC_URI = "ftp://ftp.gnu.org/gnu/grub/grub-${PV}.tar.gz \
+ file://cfg \
file://grub-2.00-fpmath-sse-387-fix.patch \
file://grub-2.00-fix-enable_execute_stack-check.patch \
file://grub-2.00-disable-help2man.patch \
@@ -66,9 +67,11 @@ EXTRA_OECONF = "--with-platform=efi --disable-grub-mkfont \
--enable-liblzma=no --enable-device-mapper=no --enable-libzfs=no"
do_mkimage() {
- ./grub-mkimage -p /EFI/BOOT -d ./grub-core/ \
+ # Search for the grub.cfg on the local boot media by using the
+ # built in cfg file provided via this recipe
+ ./grub-mkimage -c ../cfg -p /EFI/BOOT -d ./grub-core/ \
-O ${GRUB_TARGET}-efi -o ./${GRUB_IMAGE} \
- boot linux ext2 fat serial part_msdos part_gpt normal efi_gop
+ boot linux ext2 fat serial part_msdos part_gpt normal efi_gop iso9660 search
}
addtask mkimage after do_compile before do_install