summaryrefslogtreecommitdiff
path: root/toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch')
-rw-r--r--toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch22
1 files changed, 22 insertions, 0 deletions
diff --git a/toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch b/toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch
new file mode 100644
index 0000000..7447dbd
--- /dev/null
+++ b/toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch
@@ -0,0 +1,22 @@
+Index: gcc-linaro-4.8-2014.04/gcc/config/mips/linux64.h
+===================================================================
+--- gcc-linaro-4.8-2014.04.orig/gcc/config/mips/linux64.h 2014-10-23 15:52:48.999134219 -0700
++++ gcc-linaro-4.8-2014.04/gcc/config/mips/linux64.h 2014-10-23 15:59:19.815116979 -0700
+@@ -27,6 +27,16 @@
+ #define GLIBC_DYNAMIC_LINKERN32 "/lib32/ld.so.1"
+ #define UCLIBC_DYNAMIC_LINKERN32 "/lib32/ld-uClibc.so.0"
+ #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32"
++
++#if TARGET_ENDIAN_DEFAULT == 0 /* LE */
++#define MUSL_DYNAMIC_LINKER_E "%{EB:;:el}"
++#else
++#define MUSL_DYNAMIC_LINKER_E "%{EL:el}"
++#endif
++
++#define MUSL_DYNAMIC_LINKERN32 "/lib/ld-musl-mips" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
++#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-mips" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
++#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-mips" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
+ #define GNU_USER_DYNAMIC_LINKERN32 \
+ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \
+- BIONIC_DYNAMIC_LINKERN32)
++ BIONIC_DYNAMIC_LINKERN32, MUSL_DYNAMIC_LINKERN32)