mirror of
https://git.yoctoproject.org/poky
synced 2026-09-20 03:49:32 +02:00
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.
- The package grub-common runtime depends grub-editenv
- The package grub-editenv runtime provides grub-efi-editenv
- Remove SYSROOT_DIRS_BLACKLIST
- The recipe grub-efi does not generate the duplicated files
and use runtime depends grub-common to instead
Debian and Fedora do the similar thing.
Debian use a common package grub-common for both of pc bios and efi,
and use package grub-pc-bin for pc bios, grub-efi-amd64-bin for efi.
Both of grub-pc-bin and grub-efi-amd64-bin requires grub-common.
https://packages.debian.org/sid/grub-common
https://packages.debian.org/jessie/grub-pc-bin
https://packages.debian.org/jessie/grub-efi-amd64-bin
Fedora use a common package grub2-tools for both of pc bios and efi,
and use package grub2 for pc bios, grub2-efi-modules for efi.
Both of grub2 and grub2-efi-modules requires grub2-tools.
https://www.rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/g/grub2-tools-2.02-0.34.fc24.x86_64.html
https://www.rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/g/grub2-2.02-0.34.fc24.x86_64.html
https://www.rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/g/grub2-efi-modules-2.02-0.34.fc24.x86_64.html
[YOCTO #11639]
(From OE-Core rev: 6fd0bc313c6035b7de5b7a62cbbcd1d6f546c7f9)
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
30 lines
730 B
BlitzBasic
30 lines
730 B
BlitzBasic
require grub2.inc
|
|
|
|
RDEPENDS_${PN}-common += "${PN}-editenv"
|
|
RDEPENDS_${PN} += "diffutils freetype ${PN}-common"
|
|
|
|
RPROVIDES_${PN}-editenv += "${PN}-efi-editenv"
|
|
|
|
PACKAGES =+ "${PN}-editenv ${PN}-common"
|
|
FILES_${PN}-editenv = "${bindir}/grub-editenv"
|
|
FILES_${PN}-common = " \
|
|
${bindir} \
|
|
${sysconfdir} \
|
|
${sbindir} \
|
|
${datadir}/grub \
|
|
"
|
|
|
|
do_install_append () {
|
|
install -d ${D}${sysconfdir}/grub.d
|
|
# Remove build host references...
|
|
find "${D}" -name modinfo.sh -type f -exec \
|
|
sed -i \
|
|
-e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
|
|
-e 's|${DEBUG_PREFIX_MAP}||g' \
|
|
-e 's:${RECIPE_SYSROOT_NATIVE}::g' \
|
|
{} +
|
|
}
|
|
|
|
INSANE_SKIP_${PN} = "arch"
|
|
INSANE_SKIP_${PN}-dbg = "arch"
|