summaryrefslogtreecommitdiffstats
path: root/meta/classes/grub-efi.bbclass
diff options
context:
space:
mode:
authorChen Qi <Qi.Chen@windriver.com>2019-07-04 10:38:37 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-07-05 12:00:15 +0100
commit3c7b6dfecd22eae369bba54437cdff91fa8542df (patch)
tree6addae569a45f635ed4abdbb3ef0a8c934af22f8 /meta/classes/grub-efi.bbclass
parentc2f2ea87592d14e7020eff19c11aae2fb644358a (diff)
downloadopenembedded-core-contrib-3c7b6dfecd22eae369bba54437cdff91fa8542df.tar.gz
grub-efi.bbclass: take into consideration of multilib
When enabling multilib and building lib32-IMAGE which uses grub-efi, the build fails with the following error. install: cannot stat '/PROJ_DIR/build/tmp-glibc/deploy/images/intel-x86-64/grub-efi-bootia32.efi': No such file or directory The grub-efi is in NON_MULTILIB_SCRIPTS. That means we will use 64bit grub-efi for lib32-IMAGE. So take into consideration of multilib to fix this problem. Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/grub-efi.bbclass')
-rw-r--r--meta/classes/grub-efi.bbclass13
1 files changed, 10 insertions, 3 deletions
diff --git a/meta/classes/grub-efi.bbclass b/meta/classes/grub-efi.bbclass
index 90badc03a0..ec692f1646 100644
--- a/meta/classes/grub-efi.bbclass
+++ b/meta/classes/grub-efi.bbclass
@@ -9,9 +9,16 @@ efi_populate() {
GRUB_IMAGE="grub-efi-bootia32.efi"
DEST_IMAGE="bootia32.efi"
- if [ "${TARGET_ARCH}" = "x86_64" ]; then
- GRUB_IMAGE="grub-efi-bootx64.efi"
- DEST_IMAGE="bootx64.efi"
+ if [ -n "${MLPREFIX}" ]; then
+ if [ "${TARGET_ARCH_MULTILIB_ORIGINAL}" = "x86_64" ]; then
+ GRUB_IMAGE="grub-efi-bootx64.efi"
+ DEST_IMAGE="bootx64.efi"
+ fi
+ else
+ if [ "${TARGET_ARCH}" = "x86_64" ]; then
+ GRUB_IMAGE="grub-efi-bootx64.efi"
+ DEST_IMAGE="bootx64.efi"
+ fi
fi
install -m 0644 ${DEPLOY_DIR_IMAGE}/${GRUB_IMAGE} ${DEST}${EFIDIR}/${DEST_IMAGE}
EFIPATH=$(echo "${EFIDIR}" | sed 's/\//\\/g')