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 10:33:25 +0100	[thread overview]
Message-ID: <1308130405.15712.369.camel@rex> (raw)
In-Reply-To: <DCECC705-8B71-44A7-B1B6-1BE79A1FCADD@dominion.thruhere.net>

On Wed, 2011-06-15 at 10:56 +0200, Koen Kooi 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 I did the following in angstrom.inc:
> 
> # Add FEED_ARCH and SOC_FAMILY to machine overrides so we get access to e.g. 'armv7a' and 'omap3'
> # Hopefully we'll never see a machine or arch with 'all' as substring
> MACHINEOVERRIDES .= ":${@bb.data.getVar('FEED_ARCH', d,1).replace('all','noarch')}:${SOC_FAMILY}"
> 
> That makes parsing work for MACHINE=crownbay again, but:
> 
> koen@dominion:/OE/tentacle/sources/meta-openembedded$ MACHINE=crownbay bitbake foo
> NOTE: Out of date cache found, rebuilding...
> NOTE: angstrom DOES NOT support gconf-dbus because gconf-dbus has been merged back into main GConf                                                                                         | ETA:  00:03:09
> NOTE: angstrom DOES NOT support gconf-dbus-native because gconf-dbus has been merged back into main GConf
> NOTE: angstrom DOES NOT support libiconv because the eglibc provided iconv library is used##############################                                                                   | ETA:  00:00:44
> NOTE: angstrom DOES NOT support libiconv because the eglibc provided iconv library is used#############################################################                                    | ETA:  00:00:24
> Parsing recipes: 100% |####################################################################################################################################################################| Time: 00:01:52
> Parsing of 1287 .bb files complete (0 cached, 1287 parsed). 1655 targets, 60 skipped, 0 masked, 0 errors.
> Traceback (most recent call last):
>   File "/usr/lib/python2.6/multiprocessing/util.py", line 235, in _run_finalizers
> Traceback (most recent call last):
>   File "/usr/lib/python2.6/multiprocessing/util.py", line 235, in _run_finalizers
> Traceback (most recent call last):
>   File "/usr/lib/python2.6/multiprocessing/util.py", line 235, in _run_finalizers
> Traceback (most recent call last):
>   File "/usr/lib/python2.6/multiprocessing/util.py", line 235, in _run_finalizers
>     finalizer()
>   File "/usr/lib/python2.6/multiprocessing/util.py", line 174, in __call__
>     res = self._callback(*self._args, **self._kwargs)
>   File "/OE/tentacle/sources/bitbake/lib/bb/codeparser.py", line 91, in parser_cache_save
>     finalizer()
>   File "/usr/lib/python2.6/multiprocessing/util.py", line 174, in __call__
>     res = self._callback(*self._args, **self._kwargs)
>   File "/OE/tentacle/sources/bitbake/lib/bb/codeparser.py", line 91, in parser_cache_save
>     finalizer()
>   File "/usr/lib/python2.6/multiprocessing/util.py", line 174, in __call__
>     res = self._callback(*self._args, **self._kwargs)
>   File "/OE/tentacle/sources/bitbake/lib/bb/codeparser.py", line 91, in parser_cache_save
>     finalizer()
>   File "/usr/lib/python2.6/multiprocessing/util.py", line 174, in __call__
>     res = self._callback(*self._args, **self._kwargs)
>   File "/OE/tentacle/sources/bitbake/lib/bb/codeparser.py", line 91, in parser_cache_save
>     data, version = p.load()
> ValueError: could not convert string to int
>     data, version = p.load()
> ValueError: could not convert string to int
>     data, version = p.load()
>     data, version = p.load()
> ValueError: could not convert string to int
> ValueError: could not convert string to int
> ERROR: Command execution failed: Traceback (most recent call last):
>   File "/OE/tentacle/sources/bitbake/lib/bb/command.py", line 99, in runAsyncCommand
>     self.cooker.updateCache()
>   File "/OE/tentacle/sources/bitbake/lib/bb/cooker.py", line 937, in updateCache
>     if not self.parser.parse_next():
>   File "/OE/tentacle/sources/bitbake/lib/bb/cooker.py", line 1247, in parse_next
>     self.shutdown()
>   File "/OE/tentacle/sources/bitbake/lib/bb/cooker.py", line 1236, in shutdown
>     bb.codeparser.parser_cache_savemerge(self.cooker.configuration.data)
>   File "/OE/tentacle/sources/bitbake/lib/bb/codeparser.py", line 121, in parser_cache_savemerge
>     data, version = p.load()
> ValueError: could not convert string to int
> 
> And the same happens for every machine now. So where did I misconvert an int to string?!?!?

Wiping out the code parser cache would fix this. I also pushed a fix for
it to bitbake master.

Cheers,

Richard




      reply	other threads:[~2011-06-15  9:36 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
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 [this message]

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=1308130405.15712.369.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