All of lore.kernel.org
 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.