diff options
author | Chen Qi <Qi.Chen@windriver.com> | 2019-07-04 10:38:37 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-07-05 12:00:20 +0100 |
commit | a61354e965561b5d108d89864b5f9c8d15fbee39 (patch) | |
tree | 2b3e2f6191c9c01118088b1e609fcca207e09e84 | |
parent | 56c9e61f39f1ccf87eac594939a085e64e8877f9 (diff) | |
download | openembedded-core-contrib-a61354e965561b5d108d89864b5f9c8d15fbee39.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.
(From OE-Core rev: 3c7b6dfecd22eae369bba54437cdff91fa8542df)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/grub-efi.bbclass | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/meta/classes/grub-efi.bbclass b/meta/classes/grub-efi.bbclass index 90badc03a0e..ec692f1646f 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') |