summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2014-01-17 06:21:15 +0000
committerMike Frysinger <vapier@gentoo.org>2014-01-17 06:21:15 +0000
commit031b5110171207e99f7a728c9f301a4a1dd41d2f (patch)
treeb3275dff0437edcdd787d0a007ca279a64efe023 /eclass
parentMark m68k stable. (diff)
downloadgentoo-2-031b5110171207e99f7a728c9f301a4a1dd41d2f.tar.gz
gentoo-2-031b5110171207e99f7a728c9f301a4a1dd41d2f.tar.bz2
gentoo-2-031b5110171207e99f7a728c9f301a4a1dd41d2f.zip
multilib_env: add aarch64 details
Diffstat (limited to 'eclass')
-rw-r--r--eclass/multilib.eclass24
1 files changed, 22 insertions, 2 deletions
diff --git a/eclass/multilib.eclass b/eclass/multilib.eclass
index f958a3d45e76..c4f259b5c339 100644
--- a/eclass/multilib.eclass
+++ b/eclass/multilib.eclass
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/eclass/multilib.eclass,v 1.103 2013/04/22 01:18:51 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/eclass/multilib.eclass,v 1.104 2014/01/17 06:21:15 vapier Exp $
# @ECLASS: multilib.eclass
# @MAINTAINER:
@@ -280,8 +280,28 @@ get_modname() {
# a crosscompiler (and thus they aren't set in the profile)
multilib_env() {
local CTARGET=${1:-${CTARGET}}
+ local cpu=${CTARGET%%*-}
+
+ case ${cpu} in
+ aarch64*)
+ # Not possible to do multilib with aarch64 and a single toolchain.
+ export CFLAGS_arm=${CFLAGS_arm-}
+ case ${cpu} in
+ aarch64*be) export CHOST_arm="armv8b-${CTARGET#*-}";;
+ *) export CHOST_arm="armv8l-${CTARGET#*-}";;
+ esac
+ CHOST_arm=${CHOST_arm/%-gnu/-gnueabi}
+ export CTARGET_arm=${CHOST_arm}
+ export LIBDIR_arm="lib"
+
+ export CFLAGS_aarch64=${CFLAGS_aarch64-}
+ export CHOST_aarch64=${CTARGET}
+ export CTARGET_aarch64=${CHOST_aarch64}
+ export LIBDIR_aarch64="lib64"
- case ${CTARGET} in
+ : ${MULTILIB_ABIS=aarch64}
+ : ${DEFAULT_ABI=aarch64}
+ ;;
x86_64*)
export CFLAGS_x86=${CFLAGS_x86--m32}
export CHOST_x86=${CTARGET/x86_64/i686}