[OE-core] [PATCH] sanity.bbclass: Add sanity check that TUNE_PKGARCH appears in PACKAGE_ARCHS
Saul Wold
sgw at linux.intel.com
Fri Jul 29 03:07:55 UTC 2011
On 07/28/2011 06:57 PM, Kumar Gala wrote:
>
> On Jul 28, 2011, at 7:41 PM, Saul Wold wrote:
>
>> On 07/28/2011 05:07 PM, Kumar Gala wrote:
>>> Its possible we get duplications if we explicity add TUNE_PKGARCH to
>>> PACKAGE_ARCHS so instead just add a sanity check to verify it.
>>>
>>> Signed-off-by: Kumar Gala<galak at kernel.crashing.org>
>>> ---
>>> meta/classes/sanity.bbclass | 10 +++++++++-
>>> 1 files changed, 9 insertions(+), 1 deletions(-)
>>>
>>> diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
>>> index b054146..999e15d 100644
>>> --- a/meta/classes/sanity.bbclass
>>> +++ b/meta/classes/sanity.bbclass
>>> @@ -375,8 +375,10 @@ def check_sanity(e):
>>> elif oeroot.find (' ') != -1:
>>> messages = messages + "Error, you have a space in your COREBASE directory path. Please move the installation to a directory which doesn't include a space."
>>>
>>> - # Check that we don't have duplicate entries in PACKAGE_ARCHS
>>> + # Check that we don't have duplicate entries in PACKAGE_ARCHS& that TUNE_PKGARCH is in PACKAGE_ARCHS
>>> pkgarchs = data.getVar('PACKAGE_ARCHS', e.data, True)
>>> + tunepkg = data.getVar('TUNE_PKGARCH', e.data, True)
>>> + tunefound = False
>>> seen = {}
>>> dups = []
>>>
>>> @@ -385,9 +387,15 @@ def check_sanity(e):
>>> dups.append(pa)
>>> else:
>>> seen[pa] = 1
>>> + if pa == tunepkg:
>>> + tunefound = True
>>> +
>>> if len(dups):
>>> messages = messages + "Error, the PACKAGE_ARCHS variable contains duplicates. The following archs are listed more than once: %s" % " ".join(dups)
>>>
>> Kumar,
>>
>> Thanks for the patch, some questions.
>>
>> Is this correct, do you still want to report the error, if there is a dup?
>>
>> Would it not just be better to just drop the dup if it is the TUNE_PKGARCH?
>
> I wasn't sure how to drop the dup. :)
>
> If there is a way to uniq PACKAGE_ARCHS that would be fine
>
Would this be what your looking for, it "uniq"s only the tunepkg value.
- if seen.get(pa, 0) == 1:
+ if pa == tunepkg:
+ tunefound = True
+ if seen.get(pa, 0) == 1:
+ pkgarchs.remove(pa)
+ elif seen.get(pa, 0) == 1:
dups.append(pa)
else:
seen[pa] = 1
- if pa == tunepkg:
- tunefound = True
> - k
More information about the Openembedded-core
mailing list