[OE-core] [OE-core Yocto PATCH 4/4] grub: Update grub git recipe

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Tue Mar 3 18:03:21 UTC 2015


On 3 March 2015 at 16:46, Naresh Bhat <naresh.bhat at linaro.org> wrote:
> Update the grub git recipe with the following actions for native and non-native
> - Base class extend to native
> - do_configure_prepand

s/prepand/prepend/

> - do_install_append
> - do_mkimage native
> - do_deploy
>
> Signed-off-by: Naresh Bhat <naresh.bhat at linaro.org>
> Reviewed-by: Graeme Gregory <graeme.gregory at linaro.org>
> Reviewed-by: Matt Fleming <matt.fleming at intel.com>
> ---
>  meta/recipes-bsp/grub/grub_git.bb |   51 ++++++++++++++++++++++++++++++++-----
>  1 file changed, 45 insertions(+), 6 deletions(-)
>
> diff --git a/meta/recipes-bsp/grub/grub_git.bb b/meta/recipes-bsp/grub/grub_git.bb
> index 3ab675b..a2abe01 100644
> --- a/meta/recipes-bsp/grub/grub_git.bb
> +++ b/meta/recipes-bsp/grub/grub_git.bb
> @@ -8,6 +8,7 @@ DEFAULT_PREFERENCE_arm = "1"
>  PV = "2.00+${SRCPV}"
>  SRCREV = "87de66d9d83446ecddb29cfbdf7369102c8e209e"
>  SRC_URI = "git://git.savannah.gnu.org/grub.git \
> +           file://cfg \
>             file://grub-2.00-fpmath-sse-387-fix.patch \
>             file://autogen.sh-exclude-pc.patch \
>             file://grub-2.00-add-oe-kernel.patch \
> @@ -18,7 +19,7 @@ S = "${WORKDIR}/git"
>
>  COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*)-(linux.*|freebsd.*)'
>
> -inherit autotools gettext texinfo
> +inherit autotools gettext texinfo deploy
>
>  PACKAGECONFIG ??= ""
>  PACKAGECONFIG[grub-mount] = "--enable-grub-mount,--disable-grub-mount,fuse"
> @@ -31,24 +32,62 @@ GRUBPLATFORM_arm = "uboot"
>  GRUBPLATFORM_aarch64 = "efi"
>  GRUBPLATFORM ??= "pc"
>
> +CACHED_CONFIGUREVARS += "ac_cv_path_HELP2MAN="
>  EXTRA_OECONF = "--with-platform=${GRUBPLATFORM} --disable-grub-mkfont --program-prefix="" \
>                  --enable-liblzma=no --enable-device-mapper=no --enable-libzfs=no"
>
> +B = "${S}"
> +
> +export ac_cv_path_HELP2MAN=""
> +
>  do_configure_prepend() {
> -    ( cd ${S}
> -      ${S}/autogen.sh )
> +      ./autogen.sh
> +}

I did not follow the recentish B / S changes so i'm curious if the
part(s) above are an improvement?

> +
> +do_install_append_class-native() {
> +        install -d ${D}${bindir}
> +        install -m 755 grub-mkimage ${D}${bindir}

again, cut down on forks, use install -D

>  }
>
> -do_install_append () {
> +do_install_append_class-target() {
> +    # 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}-${GRUBPLATFORM} -o ./${GRUB_IMAGE} \
> +        boot linux ext2 fat serial part_msdos part_gpt \
> +        normal efi_gop iso9660 search efinet tftp all_video chain \
> +        gfxmenu jpeg gfxterm
> +
>      install -d ${D}${sysconfdir}/grub.d
> -
> +    install -m 0755 ${B}/${GRUB_IMAGE} ${D}${bindir}

install -D, again?

> +}
> +
> +GRUB_TARGET_aarch64 = "arm64"
> +GRUB_IMAGE_aarch64 = "grubaa64.efi"
> +
> +do_mkimage_class-native() {
> +        :
> +}
> +
> +do_deploy() {
> +    install -d ${DEPLOYDIR}
> +    install -m 0755 ${B}/${GRUB_IMAGE} ${DEPLOYDIR}

.. and again.

PS: Sorry, I seem to be in nitpicking mood right now ;)
thanks,

>  }
>
> +do_deploy_class-native() {
> +        :
> +}
> +
> +addtask deploy after do_install before do_build
> +
>  # debugedit chokes on bare metal binaries
>  INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
>
> -RDEPENDS_${PN} = "diffutils freetype"
> +RDEPENDS_${PN}_class-target = "diffutils freetype"
>  FILES_${PN}-dbg += "${libdir}/${BPN}/*/.debug"
>
>  INSANE_SKIP_${PN} = "arch"
>  INSANE_SKIP_${PN}-dbg = "arch"
> +
> +DEPENDS_class-target += "grub-native"
> +BBCLASSEXTEND = "native"
> --
> 1.7.9.5
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core



More information about the Openembedded-core mailing list