From: Mark Hatle <mark.hatle@windriver.com>
To: Robert Yang <liezhi.yang@windriver.com>,
<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 1/1] package_manager.py: fix RPM_PREFER_ELF_ARCH for mips
Date: Mon, 23 Nov 2015 10:00:39 -0600 [thread overview]
Message-ID: <56533827.7020100@windriver.com> (raw)
In-Reply-To: <56532095.5090301@windriver.com>
On 11/23/15 8:20 AM, Mark Hatle wrote:
> On 11/23/15 7:41 AM, Robert Yang wrote:
>> We can install 64 bit pkg to 32 bit pkg, so the previous checking is
>> incorrect, it should not only check mips64 or mips64el, the "mips"
>> should work, and 64bit ELF can also use mips as TUNE_ARCH, and there
>> are other mips varieties, so only check whether TUNE_ARCH starts with
>> mips or not.
>>
>> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
>> ---
>> meta/lib/oe/package_manager.py | 9 ++++-----
>> 1 file changed, 4 insertions(+), 5 deletions(-)
>>
>> diff --git a/meta/lib/oe/package_manager.py b/meta/lib/oe/package_manager.py
>> index 964fddc..5e7bb66 100644
>> --- a/meta/lib/oe/package_manager.py
>> +++ b/meta/lib/oe/package_manager.py
>> @@ -954,12 +954,11 @@ class RpmPM(PackageManager):
>> bb.fatal("Invalid RPM_PREFER_ELF_ARCH: %s, it should be one of:\n"
>> "\t1: ELF32 wins\n"
>> "\t2: ELF64 wins\n"
>> - "\t4: ELF64 N32 wins (mips64 or mips64el only)" %
>> + "\t4: ELF64 N32 wins (mips only)" %
>
> N32 is only available on a MIPS64 platform. It requires MIPS64 instructions,
> which is why it is documented as such above.
>
>> prefer_color)
>> - if prefer_color == "4" and self.d.getVar("TUNE_ARCH", True) not in \
>> - ['mips64', 'mips64el']:
>> - bb.fatal("RPM_PREFER_ELF_ARCH = \"4\" is for mips64 or mips64el "
>> - "only.")
>> + if prefer_color == "4" and not \
>> + self.d.getVar("TUNE_ARCH", True).startswith('mips'):
>> + bb.fatal("RPM_PREFER_ELF_ARCH = \"4\" is for mips only.")
>
> The bug is that it's looking for TUNE_ARCH, it should be MACHINE_ARCH in this
> case. Since the overall MACHINE Is what defined if it can be used or not.
I just realized, it's not MACHINE_ARCH either. It's the canonical arch that is
derived from the MACHINE_ARCH -- which may not be available at this point.
So doing the sanity based on the TUNE_ARCH starting with mips might be the best
compromise. But the comment should remain that it's only applicable on MIPS64.
--Mark
> --Mark
>
>> self._invoke_smart('config --set rpm-extra-macros._prefer_color=%s'
>> % prefer_color)
>>
>>
>
prev parent reply other threads:[~2015-11-23 16:00 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-23 13:41 [PATCH 0/1] package_manager.py: fix RPM_PREFER_ELF_ARCH for mips Robert Yang
2015-11-23 13:41 ` [PATCH 1/1] " Robert Yang
2015-11-23 14:20 ` Mark Hatle
2015-11-23 16:00 ` Mark Hatle [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=56533827.7020100@windriver.com \
--to=mark.hatle@windriver.com \
--cc=liezhi.yang@windriver.com \
--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.