[oe-commits] [openembedded-core] 01/08: goarch.bbclass: fixups for Go mips32 support

git at git.openembedded.org git at git.openembedded.org
Mon Sep 25 13:19:48 UTC 2017


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit bdd20c296048937737da0f10bd1a3b63843c5bf4
Author: Matt Madison <matt at madison.systems>
AuthorDate: Fri Sep 22 17:58:20 2017 -0700

    goarch.bbclass: fixups for Go mips32 support
    
    * Fix the regular expression in the mips test
    
    * Flag as incompatible any mips32 tunes for n32 ABI
      or soft-float, as go does not support them.
    
    * Replace mips32r2 tune with mips32r1. Go only supports
      mips32r1, which is a strict subset of r2.  Adjusting
      this tune is not ideal, but is hopefully a temporary
      measure until more complete mips32 ISA coverage
      arrives upstream.
    
    [YOCTO #12108]
    
    Signed-off-by: Matt Madison <matt at madison.systems>
    Signed-off-by: Khem Raj <raj.khem at gmail.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/classes/goarch.bbclass | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/meta/classes/goarch.bbclass b/meta/classes/goarch.bbclass
index 8b95c5f..9ed562d 100644
--- a/meta/classes/goarch.bbclass
+++ b/meta/classes/goarch.bbclass
@@ -43,10 +43,14 @@ def go_map_arch(a, d):
         return 'mips64le'
     elif re.match('mips64*', a):
         return 'mips64'
-    elif re.match('mipsel*', a):
-        return 'mipsle'
-    elif re.match('mips*', a):
-        return 'mips'
+    elif re.match('mips.*', a):
+        tf = d.getVar('TUNE_FEATURES').split()
+        if 'fpu-hard' in tf and 'n32' not in tf:
+            if 'mips32r2' in tf:
+                newtf = [t for t in tf if t != 'mips32r2']
+                newtf.append('mips32')
+                d.setVar('TUNE_FEATURES', ' '.join(newtf))
+            return 'mips' if 'bigendian' in tf else 'mipsle'
     elif re.match('p(pc|owerpc)(64)', a):
         return 'ppc64'
     elif re.match('p(pc|owerpc)(64el)', a):

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list