From 570ae1afecc88b12a11e62a4341069c125d18403 Mon Sep 17 00:00:00 2001 From: Victor Kamensky Date: Thu, 10 Oct 2013 12:16:51 +0200 Subject: classes: add aarch64_be target Add big endian ARMv8 target to OE infrastructure Signed-off-by: Victor Kamensky Signed-off-by: Koen Kooi Signed-off-by: Richard Purdie --- 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 d73cc2b9b0..eb440c24ff 100644 --- a/meta/classes/insane.bbclass +++ b/meta/classes/insane.bbclass @@ -57,6 +57,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 4a140ebdaf..6a6ad91866 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 40c3138d5b..454ee76602 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 8705eaa243..9ae2561c88 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", -- cgit 1.2.3-korg