[OE-core] [PATCH] classes: add aarch64_be target

Koen Kooi koen at dominion.thruhere.net
Thu Oct 10 10:16:51 UTC 2013


From: Victor Kamensky <victor.kamensky at linaro.org>

Add big endian ARMv8 target to OE infrastructure

Signed-off-by: Victor Kamensky <victor.kamensky at linaro.org>
Signed-off-by: Koen Kooi <koen.kooi at linaro.org>
---
 meta/classes/insane.bbclass       | 1 +
 meta/classes/kernel-arch.bbclass  | 1 +
 meta/classes/libc-package.bbclass | 1 +
 meta/classes/siteinfo.bbclass     | 2 ++
 4 files changed, 5 insertions(+)

diff --git a/meta/classes/insane.bbclass b/meta/classes/insane.bbclass
index a784aff..f1c6d22 100644
--- a/meta/classes/insane.bbclass
+++ b/meta/classes/insane.bbclass
@@ -55,6 +55,7 @@ def package_qa_get_machine_dict():
                       },
             "linux" : { 
                         "aarch64" :   (183,    0,    0,          True,          64),
+                        "aarch64_be" :(183,    0,    0,          False,         64),
                         "arm" :       (40,    97,    0,          True,          32),
                         "armeb":      (40,    97,    0,          False,         32),
                         "powerpc":    (20,     0,    0,          False,         32),
diff --git a/meta/classes/kernel-arch.bbclass b/meta/classes/kernel-arch.bbclass
index 4a140eb..6a6ad91 100644
--- a/meta/classes/kernel-arch.bbclass
+++ b/meta/classes/kernel-arch.bbclass
@@ -23,6 +23,7 @@ def map_kernel_arch(a, d):
     if   re.match('(i.86|athlon|x86.64)$', a):  return 'x86'
     elif re.match('armeb$', a):                 return 'arm'
     elif re.match('aarch64$', a):               return 'arm64'
+    elif re.match('aarch64_be$', a):            return 'arm64'
     elif re.match('mips(el|64|64el)$', a):      return 'mips'
     elif re.match('p(pc|owerpc)(|64)', a):      return 'powerpc'
     elif re.match('sh(3|4)$', a):               return 'sh'
diff --git a/meta/classes/libc-package.bbclass b/meta/classes/libc-package.bbclass
index fd06c4a..de3ffe6 100644
--- a/meta/classes/libc-package.bbclass
+++ b/meta/classes/libc-package.bbclass
@@ -268,6 +268,7 @@ python package_do_split_gconvs () {
             locale_arch_options = { \
                 "arm":     " --uint32-align=4 --little-endian ", \
                 "armeb":   " --uint32-align=4 --big-endian ",    \
+                "aarch64_be": " --uint32-align=4 --big-endian ",    \
                 "sh4":     " --uint32-align=4 --big-endian ",    \
                 "powerpc": " --uint32-align=4 --big-endian ",    \
                 "powerpc64": " --uint32-align=4 --big-endian ",  \
diff --git a/meta/classes/siteinfo.bbclass b/meta/classes/siteinfo.bbclass
index 8705eaa..9ae2561 100644
--- a/meta/classes/siteinfo.bbclass
+++ b/meta/classes/siteinfo.bbclass
@@ -19,6 +19,7 @@ def siteinfo_data(d):
     archinfo = {
         "allarch": "endian-little bit-32", # bogus, but better than special-casing the checks below for allarch
         "aarch64": "endian-little bit-64 arm-common",
+        "aarch64_be": "endian-big bit-64 arm-common",
         "arm": "endian-little bit-32 arm-common",
         "armeb": "endian-big bit-32 arm-common",
         "avr32": "endian-big bit-32 avr32-common",
@@ -63,6 +64,7 @@ def siteinfo_data(d):
     }
     targetinfo = {
         "aarch64-linux-gnu": "aarch64-linux",
+        "aarch64_be-linux-gnu": "aarch64_be-linux",
         "arm-linux-gnueabi": "arm-linux",
         "arm-linux-uclibceabi": "arm-linux-uclibc",
         "armeb-linux-gnueabi": "armeb-linux",
-- 
1.8.3.1




More information about the Openembedded-core mailing list