summaryrefslogtreecommitdiffstats
path: root/toolchain/gcc
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2014-10-24 00:15:58 +0000
committerFlorian Fainelli <florian@openwrt.org>2014-10-24 00:15:58 +0000
commitafa36fe3bc7bf01bcebdc594028d8e45c42320bf (patch)
tree96dce867d410f3b4252dfbd6c2cc298fbdd13be2 /toolchain/gcc
parent16a9ab1d58f6c8d75a0c1444dc67a244806f93e1 (diff)
downloadmaster-31e0f0ae-afa36fe3bc7bf01bcebdc594028d8e45c42320bf.tar.gz
master-31e0f0ae-afa36fe3bc7bf01bcebdc594028d8e45c42320bf.tar.bz2
master-31e0f0ae-afa36fe3bc7bf01bcebdc594028d8e45c42320bf.zip
toolchain: fix mips64 musl linker names
Signed-off-by: Florian Fainelli <florian@openwrt.org> SVN-Revision: 43035
Diffstat (limited to 'toolchain/gcc')
-rw-r--r--toolchain/gcc/patches/4.8-linaro/221-musl_mips64.patch22
-rw-r--r--toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch22
2 files changed, 44 insertions, 0 deletions
diff --git a/toolchain/gcc/patches/4.8-linaro/221-musl_mips64.patch b/toolchain/gcc/patches/4.8-linaro/221-musl_mips64.patch
new file mode 100644
index 0000000000..7447dbd307
--- /dev/null
+++ b/toolchain/gcc/patches/4.8-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)
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 0000000000..7447dbd307
--- /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)