From 4d45be537bef92d4222e89c958b26983d4009d2e Mon Sep 17 00:00:00 2001 From: Gregor Richards Date: Wed, 27 May 2015 13:17:11 +0000 Subject: [PATCH] [PATCH 4/13] arm musl support On behalf of szabolcs.nagy@arm.com 2015-05-27 Gregor Richards * config/arm/linux-eabi.h (MUSL_DYNAMIC_LINKER): Define. From-SVN: r223749 --- gcc/ChangeLog | 4 ++++ gcc/config/arm/linux-eabi.h | 17 +++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fa6ce5cd08b..b496476e712 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2015-05-27 Gregor Richards + + * config/arm/linux-eabi.h (MUSL_DYNAMIC_LINKER): Define. + 2015-05-27 Martin Liska * Makefile.in: Add additional dependencies related to memory report diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h index 2cf3ca77170..d51376fc3cb 100644 --- a/gcc/config/arm/linux-eabi.h +++ b/gcc/config/arm/linux-eabi.h @@ -77,6 +77,23 @@ %{mfloat-abi=soft*:" GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "} \ %{!mfloat-abi=*:" GLIBC_DYNAMIC_LINKER_DEFAULT "}" +/* For ARM musl currently supports four dynamic linkers: + - ld-musl-arm.so.1 - for the EABI-derived soft-float ABI + - ld-musl-armhf.so.1 - for the EABI-derived hard-float ABI + - ld-musl-armeb.so.1 - for the EABI-derived soft-float ABI, EB + - ld-musl-armebhf.so.1 - for the EABI-derived hard-float ABI, EB + musl does not support the legacy OABI mode. + All the dynamic linkers live in /lib. + We default to soft-float, EL. */ +#undef MUSL_DYNAMIC_LINKER +#if TARGET_BIG_ENDIAN_DEFAULT +#define MUSL_DYNAMIC_LINKER_E "%{mlittle-endian:;:eb}" +#else +#define MUSL_DYNAMIC_LINKER_E "%{mbig-endian:eb}" +#endif +#define MUSL_DYNAMIC_LINKER \ + "/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}.so.1" + /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to use the GNU/Linux version, not the generic BPABI version. */ #undef LINK_SPEC -- 2.30.2