summaryrefslogtreecommitdiff
path: root/toolchain
diff options
context:
space:
mode:
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>2015-10-09 11:14:48 +0200
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2015-12-20 22:59:03 +0100
commitb2ec7830b6786812bba8fe3e01d41fc54f415c9b (patch)
treeb55a3dbea2aa166ac94f41bbae7b965b71bd03f2 /toolchain
parent9412dfe6c1e6ae3f4cd88c4adfdd6760873531c5 (diff)
toolchain-external: add support for musl toolchain on ARM EABIhf
Since a few releases, the pre-built musl external toolchain has added an ARM EABIhf variant, built for ARMv5T. This commit allows this additional external toolchain to be used. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'toolchain')
-rw-r--r--toolchain/toolchain-external/Config.in10
-rw-r--r--toolchain/toolchain-external/toolchain-external.mk4
2 files changed, 10 insertions, 4 deletions
diff --git a/toolchain/toolchain-external/Config.in b/toolchain/toolchain-external/Config.in
index 727fc2bf0..8d4a8358d 100644
--- a/toolchain/toolchain-external/Config.in
+++ b/toolchain/toolchain-external/Config.in
@@ -446,7 +446,9 @@ config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64
config BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS
bool "Musl 1.1.6 toolchain (experimental)"
- depends on (BR2_arm && BR2_ARM_EABI) || (BR2_armeb && BR2_ARM_EABI) || \
+ depends on (BR2_arm && BR2_ARM_EABI) || \
+ (BR2_arm && BR2_ARM_EABIHF && !BR2_ARM_CPU_ARMV4) || \
+ (BR2_armeb && BR2_ARM_EABI) || \
(BR2_i386 && !BR2_x86_i386) || BR2_microblazebe || BR2_mips || \
BR2_mipsel || (BR2_powerpc && BR2_powerpc_CLASSIC) || BR2_x86_64
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
@@ -462,7 +464,8 @@ config BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS
musl-cross project. It uses gcc 4.9.2, binutils 2.25 and
musl 1.1.6. It does not have a cross debugger included.
- The ARM toolchain is built for ARMv4t, soft-float.
+ The ARM soft-float toolchain is built for ARMv4t, while the
+ ARM hard-float toolchain is built for ARMv5t.
The x86 toolchain is built for i486.
http://musl.codu.org/
@@ -555,7 +558,8 @@ config BR2_TOOLCHAIN_EXTERNAL_PREFIX
default "x86_64-amd-linux-gnu" if BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AMD64
default "bfin-uclinux" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX && BR2_BINFMT_FLAT
default "bfin-linux-uclibc" if BR2_TOOLCHAIN_EXTERNAL_BLACKFIN_UCLINUX && BR2_BINFMT_FDPIC
- default "arm-linux-musleabi" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_arm
+ default "arm-linux-musleabi" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_arm && BR2_ARM_EABI
+ default "arm-linux-musleabihf" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_arm && BR2_ARM_EABIHF
default "armeb-linux-musleabi" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_armeb
default "i486-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_i386
default "microblaze-linux-musl" if BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS && BR2_microblazebe
diff --git a/toolchain/toolchain-external/toolchain-external.mk b/toolchain/toolchain-external/toolchain-external.mk
index 969d82610..8a9ea884a 100644
--- a/toolchain/toolchain-external/toolchain-external.mk
+++ b/toolchain/toolchain-external/toolchain-external.mk
@@ -350,8 +350,10 @@ TOOLCHAIN_EXTERNAL_SOURCE = aarch64-2014.05-30-aarch64-linux-gnu-i686-pc-linux-g
else ifeq ($(BR2_TOOLCHAIN_EXTERNAL_MUSL_CROSS),y)
TOOLCHAIN_EXTERNAL_VERSION = 1.1.6
TOOLCHAIN_EXTERNAL_SITE = https://googledrive.com/host/0BwnS5DMB0YQ6bDhPZkpOYVFhbk0/musl-$(TOOLCHAIN_EXTERNAL_VERSION)
-ifeq ($(BR2_arm),y)
+ifeq ($(BR2_arm)$(BR2_ARM_EABI),yy)
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-arm-linux-musleabi-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
+else ifeq ($(BR2_arm)$(BR2_ARM_EABIHF),yy)
+TOOLCHAIN_EXTERNAL_SOURCE = crossx86-arm-linux-musleabihf-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
else ifeq ($(BR2_armeb),y)
TOOLCHAIN_EXTERNAL_SOURCE = crossx86-armeb-linux-musleabi-$(TOOLCHAIN_EXTERNAL_VERSION).tar.xz
else ifeq ($(BR2_i386),y)