[oe] [PATCH] Reverse the order of OVERRIDES

Martin Jansa martin.jansa at gmail.com
Sat Oct 16 19:54:32 UTC 2010


On Sat, Oct 16, 2010 at 9:35 PM, Martin Jansa <martin.jansa at gmail.com> wrote:
> On Sat, Oct 16, 2010 at 8:50 PM, Martin Jansa <martin.jansa at gmail.com> wrote:
>> On Sat, Oct 16, 2010 at 8:24 PM, Chris Larson <clarson at kergoth.com> wrote:
>>> On Sat, Oct 16, 2010 at 11:04 AM, Martin Jansa <martin.jansa at gmail.com>wrote:
>>>
>>>> Probably needs reversed OVERRIDES order also in bitbake.conf FILESPATH
>>>>
>>>> FILESPATH = "${@':'.join([os.path.normpath(os.path.join(fp, p, o)) for
>>>> fp in d.getVar('FILESPATHBASE', 1).split(':') for p in
>>>> d.getVar('FILESPATHPKG', 1).split(':') for o in (d.getVar('OVERRIDES',
>>>> 1) + ':').split(':')])}"
>>>>
>>>
>>> Yes, you're right.  OVERRIDES in bitbake is used such that the *last*
>>> defined overridden variable is used, but FILESPATH uses the *first* file it
>>> finds.  Reversing it there should indeed fix it.  Nicely spotted, thanks.  I
>>> have some errands to run, so won't have a chance to apply a fix until this
>>> evening, so if someone else wants to get it in, feel free.
>>
>> It's a bit more complicated
>>
>> OE om-gta02 at shr ~/dev/recipes/xorg-xserver $ bitbake -e -b
>> xserver-xorg-conf_0.1.bb | grep ^OVERRIDES
>> OVERRIDES="thumb:thumb-interwork:libc-glibc:pn-xserver-xorg-conf:fail-fast:build-linux:arm:linux-gnueabi:shr::om-gta02:local:armv4t:armv4t"
>>
>> that empty :: between shr and om-gta02 (where MACHINE_OVERRIDES should
>> be) is breaking it for both orders (ie ignoring all after om-gta02 or
>> after shr from with reversed order)
>
> Even with those 2 patches I've just sent I still have wrong order of
> TARGET_ARCH OVERRIDES :/.
>
>
> OE om-gta02 at shr ~/dev/recipes/xorg-xserver $ bitbake -e -b
> xserver-xorg-conf_0.1.bb | grep ^FILESPATH= | sed "s/:/\n/g" | head -n
> 20
> FILESPATH="
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/armv4t
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/armv4t
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/local
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/om-gta02
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/shr
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/linux-gnueabi
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/arm
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/build-linux
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/fail-fast
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/pn-xserver-xorg-conf
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/libc-glibc
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/thumb-interwork
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/thumb
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1/armv4t
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1/armv4t
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1/local
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1/om-gta02
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1/shr
> /OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1/linux-gnueabi
> .....
>
> any hint?

Ah I have TARGET_ARCH (actually FEED_ARCH) twice in OVERRIDES, one
from sane-toolchain.inc and second from sane-feed.inc (maybe we should
drop one of them).

I have patch which preppends FEED_ARCH instead of appending it
-OVERRIDES .= ":${FEED_ARCH}"
+OVERRIDES =. "${FEED_ARCH}:"

in few distro configs

#       modified:   ../../conf/distro/chinook-compat.conf
#       modified:   ../../conf/distro/include/kaeilos-2010.inc
#       modified:   ../../conf/distro/include/kaeilos.inc
#       modified:   ../../conf/distro/include/sane-feed.inc
#       modified:   ../../conf/distro/include/sane-toolchain.inc
#       modified:   ../../conf/distro/maemo5-compat.conf

but now I'm quite confused if it's right fix, because with this
reversed order of OVERRIDES it's not enough to change from append to
preppend, because it also depends on order how
bitbake.conf/sane-*.inc/distro.conf are included together :/.

So now I have

OE om-gta02 at shr ~/dev/recipes/xorg-xserver $ bitbake -e -b
xserver-xorg-conf_0.1.bb | grep ^OVERRIDES
OVERRIDES="thumb:thumb-interwork:libc-glibc:armv4t:armv4t:pn-xserver-xorg-conf:fail-fast:build-linux:arm:linux-gnueabi:shr:om-gta02:local"

OE om-gta02 at shr ~/dev/recipes/xorg-xserver $ bitbake -e -b
xserver-xorg-conf_0.1.bb | grep ^FILESPATH= | sed "s/:/\n/g" | head -n
20
FILESPATH="
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/local
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/om-gta02
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/shr
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/linux-gnueabi
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/arm
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/build-linux
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/fail-fast
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/pn-xserver-xorg-conf
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/armv4t
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/armv4t
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/libc-glibc
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/thumb-interwork
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36/thumb
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1-r36
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1/local
/OE/dev/recipes/xorg-xserver/xserver-xorg-conf-0.1/om-gta02

but it doesn't seem right again :/

Regards,




More information about the Openembedded-devel mailing list