[bitbake-devel] how to store a modification of a bbclass in the poky layer in my own layer.

Christopher Larson kergoth at gmail.com
Fri Aug 17 22:56:52 UTC 2018


Layer priority as defined by BBFILE_PRIORITY controls recipe selection, not
bbclass and config file parsing. See the bitbake reference manual for more
detail.

On Fri, Aug 17, 2018 at 3:54 PM Davis Roman <davis.roman84 at gmail.com> wrote:

> Hi Christopher,
>
> I am very intrigued by your response.
>
> Initially I had mentioned that the 'bitbake-layers show-layers'
> command indicates that my layer, meta-hon-grip, has a priority of 8
> which is among the highest while the meta layer only has a priority of
> 5.
>
> However, now that you mentioned the bblayers.conf file, I see that the
> meta-hon-grip layer is defined after the meta layer.
>
> Therefore it appears to me that my bblayers.conf contradicts
> 'bitbake-layers show-layers'
>
> Could you please help me make sense of this?
>
> Thank you,
>
> Davis
>
>
>
> --------------------------------------------------------------------------------------------
>
> POKY_BBLAYERS_CONF_VERSION = "2"
>
> BBPATH = "${TOPDIR}"
> BSPDIR := "${@os.path.abspath(os.path.dirname(d.getVar('FILE', True))
> + '/../..')}"
>
> BBFILES ?= ""
> BBLAYERS = " \
>   ${BSPDIR}/sources/poky/meta \
>   ${BSPDIR}/sources/poky/meta-poky \
>   \
>   ${BSPDIR}/sources/meta-openembedded/meta-oe \
>   ${BSPDIR}/sources/meta-openembedded/meta-multimedia \
>   \
>   ${BSPDIR}/sources/meta-fsl-arm \
>   ${BSPDIR}/sources/meta-fsl-arm-extra \
>   ${BSPDIR}/sources/meta-fsl-demos \
> "
> ##Freescale Yocto Project Release layer
> BBLAYERS += " ${BSPDIR}/sources/meta-fsl-bsp-release/imx/meta-bsp "
> BBLAYERS += " ${BSPDIR}/sources/meta-fsl-bsp-release/imx/meta-sdk "
> BBLAYERS += " ${BSPDIR}/sources/meta-browser "
> BBLAYERS += " ${BSPDIR}/sources/meta-openembedded/meta-gnome "
> BBLAYERS += " ${BSPDIR}/sources/meta-openembedded/meta-networking "
> BBLAYERS += " ${BSPDIR}/sources/meta-openembedded/meta-python "
> BBLAYERS += " ${BSPDIR}/sources/meta-openembedded/meta-filesystems "
> BBLAYERS += " ${BSPDIR}/sources/meta-qt5 "
> BBLAYERS += " ${BSPDIR}/sources/meta-hon-grip "
> BBLAYERS += " ${BSPDIR}/sources/meta-java "
> BBLAYERS += " ${BSPDIR}/sources/meta-swupdate "
> BBLAYERS += " ${BSPDIR}/sources/meta-bc "
> BBLAYERS += " ${BSPDIR}/sources/meta-updater "
> BBLAYERS += " ${BSPDIR}/sources/meta-gplv2 "
>
> On Fri, Aug 17, 2018 at 6:01 PM, Christopher Larson <kergoth at gmail.com>
> wrote:
> > Your layer has to be before poky/meta in BBLAYERS, as that determines
> > BBPATH, which is how bbclasses and config files are found (much like
> PATH).
> >
> > On Fri, Aug 17, 2018 at 12:11 PM Davis Roman <davis.roman84 at gmail.com>
> > wrote:
> >>
> >> Hello!
> >>
> >>
> >> I've made a modification in poky/meta/classes/libc-package.bbclass (
> >> shown below)
> >>
> >> However I don't want this change to be stored here long term and
> >> instead feel that it should live in my project specific layer,
> >> meta-hon-grip.
> >>
> >> After checking with bitbake-layers, I saw that my layer has a higher
> >> priority than the poky layer so my layer should be checked first ( or
> >> so I thought)
> >>
> >> I copied the modified version of libc-packages.bbclass into
> >> meta-hon-grip/classes and I restored the version in the poky layer to
> >> its original state.
> >>
> >> After making this change, I found that the modified version in my
> >> layer is not being used and instead the version in the poky layer is
> >> the one in play.
> >>
> >> I'm trying to figure out what else to try.
> >>
> >> Any suggestions would be greatly appreciated!
> >>
> >> Thank you,
> >>
> >> Davis
> >>
> >> diff --git a/meta/classes/libc-package.bbclass
> >> b/meta/classes/libc-package.bbclass
> >> index 467d567..72d447a 100644
> >> --- a/meta/classes/libc-package.bbclass
> >> +++ b/meta/classes/libc-package.bbclass
> >> @@ -287,7 +287,7 @@ python package_do_split_gconvs () {
> >>                  bb.error("locale_arch_options not found for
> >> target_arch=" + target_arch)
> >>                  raise bb.build.FuncFailed("unknown arch:" +
> >> target_arch + " for locale_arch_options")
> >>
> >> -            localedef_opts += " --force --old-style --no-archive
> >> --prefix=%s \
> >> +            localedef_opts += " --force --no-archive --prefix=%s \
> >>                  --inputfile=%s/%s/i18n/locales/%s --charmap=%s %s/%s" \
> >>                  % (treedir, treedir, datadir, locale, encoding,
> >> outputpath, name)
> >>
> >> @@ -295,7 +295,7 @@ python package_do_split_gconvs () {
> >>                  (path, i18npath, gconvpath, localedef_opts)
> >>          else: # earlier slower qemu way
> >>              qemu = qemu_target_binary(d)
> >> -            localedef_opts = "--force --old-style --no-archive
> >> --prefix=%s \
> >> +            localedef_opts = "--force --no-archive --prefix=%s \
> >>                  --inputfile=%s/i18n/locales/%s --charmap=%s %s" \
> >>                  % (treedir, datadir, locale, encoding, name)
> >> --
> >> _______________________________________________
> >> bitbake-devel mailing list
> >> bitbake-devel at lists.openembedded.org
> >> http://lists.openembedded.org/mailman/listinfo/bitbake-devel
> >
> >
> >
> > --
> > Christopher Larson
> > kergoth at gmail dot com
> > Founder - BitBake, OpenEmbedded, OpenZaurus
> > Senior Software Engineer, Mentor Graphics
>


-- 
Christopher Larson
kergoth at gmail dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Senior Software Engineer, Mentor Graphics
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/bitbake-devel/attachments/20180817/f97378f2/attachment-0002.html>


More information about the bitbake-devel mailing list