From d5c83f28bf22610932b64e4eb6b27097ec34980b Mon Sep 17 00:00:00 2001 From: Tyler Hall Date: Fri, 8 Jan 2016 16:17:46 -0500 Subject: [PATCH] rust: aarch64 support --- classes/rust.bbclass | 2 ++ recipes-devtools/rust/rust.inc | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/classes/rust.bbclass b/classes/rust.bbclass index 6535131..7b71197 100644 --- a/classes/rust.bbclass +++ b/classes/rust.bbclass @@ -33,6 +33,8 @@ def rust_base_triple(d, thing): if arch.startswith("arm"): if os.endswith("gnueabi"): os += bb.utils.contains('TUNE_FEATURES', 'callconvention-hard', 'hf', '', d) + elif arch.startswith("aarch64"): + os = "linux-gnu" elif arch.startswith("x86_64"): os = "linux-gnu" elif arch.startswith("i586"): diff --git a/recipes-devtools/rust/rust.inc b/recipes-devtools/rust/rust.inc index 2e2efc7..c38657e 100644 --- a/recipes-devtools/rust/rust.inc +++ b/recipes-devtools/rust/rust.inc @@ -36,6 +36,12 @@ TARGET_POINTER_WIDTH[arm] = "32" FEATURES[arm] = "+v6,+vfp2" PRE_LINK_ARGS[arm] = "-Wl,--as-needed" +DATA_LAYOUT[aarch64] = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-n32:64-S128" +LLVM_TARGET[aarch64] = "aarch64-unknown-linux-gnu" +TARGET_ENDIAN[aarch64] = "little" +TARGET_POINTER_WIDTH[aarch64] = "64" +PRE_LINK_ARGS[aarch64] = "-Wl,--as-needed" + ## x86_64-unknown-linux-gnu DATA_LAYOUT[x86_64] = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" LLVM_TARGET[x86_64] = "x86_64-unknown-linux-gnu"