[OE-core] [oe-core][PATCH 2/2] pixman: ignore NEON, IWMMXT, LOONGSON_MMI variables for class-native

Martin Jansa martin.jansa at gmail.com
Wed Sep 5 08:19:09 UTC 2012


On Wed, Sep 05, 2012 at 02:11:41PM +0800, Robert Yang wrote:
> 
> 
> On 09/05/2012 09:05 AM, Martin Jansa wrote:
> > * pixman-native can have different do_configure sstate checksums if it's built with armv4t machine and armv7a
> >    OE @ ~ $ bitbake/bin/bitbake-diffsigs
> >      before-mgmt/stamps.1346795706/nokia900/x86_64-linux/pixman-native-*.do_configure.sigdata.*
> >      after-mgmt/stamps.1346801508/om-gta02/x86_64-linux/pixman-native-*.do_configure.sigdata.*
> >    basehash changed from 27e577de60880a788c7aaba797ef83e0 to c6799807eb3e767daf1e75738fc753f7
> >    Variable NEON value changed from   to  --disable-arm-neon
> > * so if you start building with different machine then last time (wrt
> >    NEON setting) all recipes which depends on pixman-native will be rebuilt too
> > * this explains why sstate-cache-management.sh wanted to remove many
> >    native sstate packages when --stamps-dir option was used (see comment
> >    28 in https://bugzilla.yoctoproject.org/show_bug.cgi?id=2897)
> >
> > Signed-off-by: Martin Jansa <Martin.Jansa at gmail.com>
> > ---
> >   meta/recipes-graphics/xorg-lib/pixman_0.27.2.bb | 5 +++--
> >   1 file changed, 3 insertions(+), 2 deletions(-)
> >
> > diff --git a/meta/recipes-graphics/xorg-lib/pixman_0.27.2.bb b/meta/recipes-graphics/xorg-lib/pixman_0.27.2.bb
> > index 35a2def..218808a 100644
> > --- a/meta/recipes-graphics/xorg-lib/pixman_0.27.2.bb
> > +++ b/meta/recipes-graphics/xorg-lib/pixman_0.27.2.bb
> > @@ -15,7 +15,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=14096c769ae0cbb5fcb94ec468be11b3 \
> >   DEPENDS += "zlib libpng"
> >   BBCLASSEXTEND = "native"
> >
> > -PR = "r1"
> > +PR = "r2"
> >
> >   PE = "1"
> >
> > @@ -25,7 +25,8 @@ NEON = " --disable-arm-neon "
> >   NEON_armv7a = " "
> >   NEON_armv7a-vfp-neon = " "
> >
> > -EXTRA_OECONF="--disable-gtk ${IWMMXT} ${LOONGSON_MMI} ${NEON}"
> > +EXTRA_OECONF = "--disable-gtk ${IWMMXT} ${LOONGSON_MMI} ${NEON}"
> > +EXTRA_OECONF_class-native = "--disable-gtk"
> >
> 
> Hi Martin,
> 
> What's the differences between "_virtclass-native" and "_class-native", please?

_class-foo works for all types of recipes:
target,native,cross,crosssdk,cross-canadian,nativesdk

classes/base.bbclass:CLASSOVERRIDE ?= "class-target"
classes/cross-canadian.bbclass:CLASSOVERRIDE = "class-cross-canadian"
classes/cross.bbclass:CLASSOVERRIDE = "class-cross"
classes/crosssdk.bbclass:CLASSOVERRIDE = "class-crosssdk"
classes/native.bbclass:CLASSOVERRIDE = "class-native"
classes/nativesdk.bbclass:CLASSOVERRIDE = "class-nativesdk"
conf/bitbake.conf:OVERRIDES = "${TARGET_OS}:${TRANSLATED_TARGET_ARCH}:build-${BUILD_OS}:pn-${PN}:${MACHINEOVERRIDES}:${DISTROOVERRIDES}:${CLASSOVERRIDE}:forcevariable"
conf/bitbake.conf:CLASSOVERRIDE ?= "class-target"

while _virtclass-foo works only for cross, native, nativesdk and multilib
classes/cross.bbclass:    bb.data.setVar("OVERRIDES", e.data.getVar("OVERRIDES", False) + ":virtclass-cross", e.data)
classes/native.bbclass:    e.data.setVar("OVERRIDES", e.data.getVar("OVERRIDES", False) + ":virtclass-native")
classes/nativesdk.bbclass:    e.data.setVar("OVERRIDES", e.data.getVar("OVERRIDES", False) + ":virtclass-nativesdk")
classes/populate_sdk_base.bbclass:        overrides = d.getVar("OVERRIDES", False) + ":virtclass-multilib-" + item
classes/utils.bbclass:        overrides = localdata.getVar("OVERRIDES", False) + ":virtclass-multilib-" + item
recipes-core/eglibc/eglibc-ld.inc:        overrides = localdata.getVar("OVERRIDES", False) + ":virtclass-multilib-" + item

IIRC RP said somewhere that virtclass usages should be 
cleaned from metadata and replaced with stronger CLASSOVERRIDE, that's
why I used class-native here.

Cheers,

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20120905/358ad8d5/attachment-0002.sig>


More information about the Openembedded-core mailing list