summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorChangqing Li <changqing.li@windriver.com>2019-08-08 13:51:22 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-08-12 16:23:57 +0100
commit600bbe4e5c7895066cce00ff016abebac08a2c85 (patch)
tree61453e75203cf58fa48b84e99c1ac49b0e72c096 /meta
parent1a0a00402d69b3b19c612add6a50fd65d876c324 (diff)
downloadpoky-600bbe4e5c7895066cce00ff016abebac08a2c85.tar.gz
grub/grub-efi: fix conflict for aach64
MACHINE = qemuarm64 IMAGE_INSTALL_append = ' grub grub-efi' do_rootfs failed with error: file /usr/lib64/grub/arm64-efi/acpi.module conflicts between attempted installs of grub-2.02-r0.aarch64 and grub-efi-2.02-r0.aarch64 file /usr/lib64/grub/arm64-efi/adler32.module conflicts between attempted installs of grub-2.02-r0.aarch64 and grub-efi-2.02-r0.aarch64 ... file /usr/lib64/grub/arm64-efi/zfsinfo.module conflicts between attempted installs of grub-2.02-r0.aarch64 and grub-efi-2.02-r0.aarch64 For arm64, grub and grub-efi both compiled GRUBD2 with platform arm64-efi, arm64 only support platform efi. So both packages have almost same folder and content /usr/lib64/grub/arm64-efi/* if Machine set to qemux86_64, do_rootfs will not have this problem, since for grub, it compiled with platform i386-pc, for grub-efi, compiled with platform x86-64-efi. >From commit: commit 4e9bb03238af48c70075037a77094a8c1bddf284 Author: Hongxu Jia <hongxu.jia@windriver.com> Date: Wed Jan 17 03:25:58 2018 -0500 grub/grub-efi: fix conflict While installing grub and grub-efi, there are conflict files in ${sysconfdir} ${datadir} ${bindir} ${sbindir}. - Since all of the conflicted files are tools which is common for grub and grub-efi, we split them (except grub-editenv) to grub-common in grub. common tools for grub and grub-efi are installed into grub-common, for aarch64, also shipped libdir into this common packages. in this way, for qemuarm64, package grub is empty, and package grub-efi use lib in package grub-common (From OE-Core rev: 933286bdcb9008b75007abedf30cc1b4b6e2f0d0) Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-bsp/grub/grub-efi_2.04.bb5
-rw-r--r--meta/recipes-bsp/grub/grub_2.04.bb4
2 files changed, 9 insertions, 0 deletions
diff --git a/meta/recipes-bsp/grub/grub-efi_2.04.bb b/meta/recipes-bsp/grub/grub-efi_2.04.bb
index b797bb7445..aaa198ea23 100644
--- a/meta/recipes-bsp/grub/grub-efi_2.04.bb
+++ b/meta/recipes-bsp/grub/grub-efi_2.04.bb
@@ -81,6 +81,10 @@ do_install_class-target() {
81 {} + 81 {} +
82} 82}
83 83
84do_install_append_aarch64() {
85 rm -rf ${D}/${prefix}/
86}
87
84GRUB_BUILDIN ?= "boot linux ext2 fat serial part_msdos part_gpt normal \ 88GRUB_BUILDIN ?= "boot linux ext2 fat serial part_msdos part_gpt normal \
85 efi_gop iso9660 configfile search loadenv test" 89 efi_gop iso9660 configfile search loadenv test"
86 90
@@ -99,6 +103,7 @@ FILES_${PN} = "${libdir}/grub/${GRUB_TARGET}-efi \
99 /boot/EFI/BOOT/${GRUB_IMAGE} \ 103 /boot/EFI/BOOT/${GRUB_IMAGE} \
100 " 104 "
101 105
106FILES_${PN}_remove_aarch64 = "${libdir}/grub/${GRUB_TARGET}-efi"
102 107
103# 64-bit binaries are expected for the bootloader with an x32 userland 108# 64-bit binaries are expected for the bootloader with an x32 userland
104INSANE_SKIP_${PN}_append_linux-gnux32 = " arch" 109INSANE_SKIP_${PN}_append_linux-gnux32 = " arch"
diff --git a/meta/recipes-bsp/grub/grub_2.04.bb b/meta/recipes-bsp/grub/grub_2.04.bb
index e0973759fb..1d1a45670c 100644
--- a/meta/recipes-bsp/grub/grub_2.04.bb
+++ b/meta/recipes-bsp/grub/grub_2.04.bb
@@ -14,6 +14,10 @@ FILES_${PN}-common = " \
14 ${datadir}/grub \ 14 ${datadir}/grub \
15" 15"
16 16
17FILES_${PN}-common_append_aarch64 = " \
18 ${libdir}/${BPN} \
19"
20
17do_install_append () { 21do_install_append () {
18 install -d ${D}${sysconfdir}/grub.d 22 install -d ${D}${sysconfdir}/grub.d
19 # Remove build host references... 23 # Remove build host references...