| Submitter | Peter Seebach |
|---|---|
| Date | Feb. 21, 2013, 5:40 p.m. |
| Message ID | <da66b07f031b6522b25dc353724b3c656d7511e1.1361468282.git.peter.seebach@windriver.com> |
| Download | mbox | patch |
| Permalink | /patch/44985/ |
| State | Accepted |
| Commit | 0c243a550f5a0e539823fe168bcc7b2bbb9f19e1 |
| Headers | show |
Comments
On 21 February 2013 18:40:22 Peter Seebach <peter.seebach@windriver.com> wrote: > For perfectly sound reasons, n32 MIPS is a mips64 subset denoted by an > ABI change, thus, "mips64-vendor-linux-gnun32" rather than > "mips-vendor-linux-gnu". A previous change had fixed up insane.bbclass > to recognize these, which mostly worked, but left SITEINFO_BITS set to > 64. > > Since bit-32 is processed first, and there are specific checks for > linux-gnun32, modify the mips64-linux-gnun32 lines to specify "bit-32", > so things that check SITEINFO_BITS get the right answer. Also, drop > the mips{,el}-linux-gnun32 lines, because that's not a valid combination; > n32 only makes sense for mips64. > > Also, the insane.bbclass change spelled "mips64el" as "mipsel64", which > no one noticed because no one's using little-endian n32, apparently. Would be great if you could have a look at the FIXME in meta/recipes-core/uclibc/uclibc-config.inc for the correct setting of the respective mips ABI. Cheers, Sent with AquaMail for Android http://www.aqua-mail.com
Patch
diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass index f52fcea..3eff4df 100644 --- a/meta/classes/insane.bbclass +++ b/meta/classes/insane.bbclass @@ -107,7 +107,7 @@ def package_qa_get_machine_dict(): }, "linux-gnun32" : { "mips64": ( 8, 0, 0, False, 32), - "mipsel64": ( 8, 0, 0, True, 32), + "mips64el": ( 8, 0, 0, True, 32), }, } diff --git a/meta/classes/siteinfo.bbclass b/meta/classes/siteinfo.bbclass index e09d16a..09f88c6 100644 --- a/meta/classes/siteinfo.bbclass +++ b/meta/classes/siteinfo.bbclass @@ -67,10 +67,8 @@ def siteinfo_data(d): "arm-linux-uclibceabi": "arm-linux-uclibc", "armeb-linux-gnueabi": "armeb-linux", "armeb-linux-uclibceabi": "armeb-linux-uclibc", - "mips-linux-gnun32": "mips-linux", - "mipsel-linux-gnun32": "mipsel-linux", - "mips64-linux-gnun32": "mips-linux", - "mips64el-linux-gnun32": "mipsel-linux", + "mips64-linux-gnun32": "mips-linux bit-32", + "mips64el-linux-gnun32": "mipsel-linux bit-32", "powerpc-linux": "powerpc32-linux", "powerpc-linux-uclibc": "powerpc-linux powerpc32-linux", "powerpc-linux-gnuspe": "powerpc-linux powerpc32-linux",
For perfectly sound reasons, n32 MIPS is a mips64 subset denoted by an ABI change, thus, "mips64-vendor-linux-gnun32" rather than "mips-vendor-linux-gnu". A previous change had fixed up insane.bbclass to recognize these, which mostly worked, but left SITEINFO_BITS set to 64. Since bit-32 is processed first, and there are specific checks for linux-gnun32, modify the mips64-linux-gnun32 lines to specify "bit-32", so things that check SITEINFO_BITS get the right answer. Also, drop the mips{,el}-linux-gnun32 lines, because that's not a valid combination; n32 only makes sense for mips64. Also, the insane.bbclass change spelled "mips64el" as "mipsel64", which no one noticed because no one's using little-endian n32, apparently. Signed-off-by: Peter Seebach <peter.seebach@windriver.com> --- meta/classes/insane.bbclass | 2 +- meta/classes/siteinfo.bbclass | 6 ++---- 2 files changed, 3 insertions(+), 5 deletions(-)