Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH V2] allarch.bbclass: Set FEED_ARCH to original value of BASE_PACKAGE_ARCH and then set BASE_PACKAGE_ARCH to 'all'
Date: Wed, 15 Jun 2011 11:16:00 +0100	[thread overview]
Message-ID: <1308132960.15712.390.camel@rex> (raw)
In-Reply-To: <3E89612B-A102-423A-8499-55E5AC1CDF07@dominion.thruhere.net>

On Wed, 2011-06-15 at 09:00 +0200, Koen Kooi wrote:
> Op 15 jun 2011, om 01:12 heeft Khem Raj het volgende geschreven:
> 
> > On Tue, Jun 14, 2011 at 2:44 PM, Koen Kooi <koen@dominion.thruhere.net> wrote:
> >> 
> >> Op 14 jun 2011, om 23:40 heeft Khem Raj het volgende geschreven:
> >> 
> >>> On Tue, Jun 14, 2011 at 2:32 PM, Koen Kooi <koen@dominion.thruhere.net> wrote:
> >>>> 
> >>>> Op 14 jun 2011, om 23:24 heeft Richard Purdie het volgende geschreven:
> >>>> 
> >>>>> On Tue, 2011-06-14 at 14:13 -0700, Khem Raj wrote:
> >>>>>> Signed-off-by: Khem Raj <raj.khem@gmail.com>
> >>>>>> ---
> >>>>>> meta/classes/allarch.bbclass |    5 +++--
> >>>>>> 1 files changed, 3 insertions(+), 2 deletions(-)
> >>>>>> 
> >>>>>> diff --git a/meta/classes/allarch.bbclass b/meta/classes/allarch.bbclass
> >>>>>> index e3ac392..b9ba28b 100644
> >>>>>> --- a/meta/classes/allarch.bbclass
> >>>>>> +++ b/meta/classes/allarch.bbclass
> >>>>>> @@ -2,9 +2,10 @@
> >>>>>> # This class is used for architecture independent recipes/data files (usally scripts)
> >>>>>> #
> >>>>>> 
> >>>>>> +# We need to pour the value of BASE_PACKAGE_ARCH into FEED_ARCH
> >>>>>> +# before we reset it
> >>>>>> +FEED_ARCH := ${BASE_PACKAGE_ARCH}
> >>>>>> BASE_PACKAGE_ARCH = "all"
> >>>>>> -PACKAGE_ARCH = "all"
> >>>>>> -
> >>>>>> # No need for virtual/libc or a cross compiler
> >>>>>> INHIBIT_DEFAULT_DEPS = "1"
> >>>>> 
> >>>>> This is a *really* bad idea. An "all" package should have no need to set
> >>>>> architecture specific values into FEED_ARCH.
> >>>>> 
> >>>>> Just for those not following IRC, the problem is Angstrom adds FEED_ARCH
> >>>>> to OVERRIDES. Adding "all" to overrides turns out to do nasty things to
> >>>>> classes like rm_work with "_all" in the function names.
> >>>> 
> >>>> So why don't we just set PACKAGE_ARCH = all in allarch.bbclass and not touch BASE_PACKAGE_ARCH and FEED_ARCH?
> >>>> 
> >>> 
> >>> because there are some machines conf files which use BASE_PACKAGE_ARCH e.g.
> >>> tune-xscale.inc
> >>> 
> >>> BASE_PACKAGE_ARCH = "${@['armv5teb',
> >>> 'armv5te'][bb.data.getVar('SITEINFO_ENDIANESS', d, 1) == 'le']}"
> >>> 
> >>> PACKAGE_EXTRA_ARCHS = "${@['armeb armv4b armv4tb armv5teb', 'arm armv4
> >>> armv4t armv5te'][bb.data.getVar('SITEINFO_ENDIANESS', d, 1) == 'le']}"
> >>> 
> >>> and this does not get evaluated properly then
> >> 
> >> But that wouldn't matter in the scope of allarch, though?
> > 
> > SITEINFO_ENDIANESS  = "${@siteinfo_get_endianess(d)}"
> > 
> > def siteinfo_get_endianess(d):
> >       info = get_siteinfo_list(d)
> >       if 'endian-little' in info:
> >              return "le"
> >       elif 'endian-big' in info:
> >              return "be"
> >       bb.error("Site info could not determine endianess for target")
> > 
> > 
> > and
> > get_siteinfo_list has this
> > 
> >       targetinfo = {\
> >               "allarch-linux":           "",\
> > 
> > hence siteinfo_get_endianess ends up with
> > 
> > bb.error("Site info could not determine endianess for target")
> > 
> > may be we need to differentiate with None return and empty string
> > return along with 'endian-little' and 'endian-big'
> > or may be add another option called 'endian-neutral'
> 
> Or just add a bogus endianness: http://cgit.openembedded.org/cgit.cgi/meta-openembedded/commit/?id=f95ffd6cedb2a0fcad9db1b2d612663a327be87b

This is just papering over cracks. "allarch" packages shouldn't be
querying endianness, it really is that simple.

Cheers,

Richard




  reply	other threads:[~2011-06-15 10:19 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-14 21:13 [PATCH V2] allarch.bbclass: Set FEED_ARCH to original value of BASE_PACKAGE_ARCH and then set BASE_PACKAGE_ARCH to 'all' Khem Raj
2011-06-14 21:18 ` Koen Kooi
2011-06-14 21:24 ` Richard Purdie
2011-06-14 21:32   ` Khem Raj
2011-06-14 21:33     ` Koen Kooi
2011-06-14 21:39       ` Khem Raj
2011-06-14 21:32   ` Koen Kooi
2011-06-14 21:40     ` Khem Raj
2011-06-14 21:44       ` Koen Kooi
2011-06-14 23:12         ` Khem Raj
2011-06-15  7:00           ` Koen Kooi
2011-06-15 10:16             ` Richard Purdie [this message]
2011-06-15 10:18               ` Koen Kooi
2011-06-15 10:23                 ` Richard Purdie
2011-06-15 15:28                   ` Khem Raj
2011-06-15 10:07     ` Richard Purdie
2011-06-15 10:15       ` Koen Kooi
2011-06-15 10:22         ` Richard Purdie
2011-06-15 10:37           ` Koen Kooi
2011-06-15 11:36             ` Richard Purdie
2011-06-15 11:52               ` Koen Kooi
2011-06-15 15:29                 ` Mark Hatle
2011-06-15  8:56   ` Koen Kooi
2011-06-15  9:33     ` Richard Purdie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1308132960.15712.390.camel@rex \
    --to=richard.purdie@linuxfoundation.org \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox