gcc: use the -sf suffix for musl ldso on powerpc
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 46313
This commit is contained in:
parent
29039f51b3
commit
0f81020b97
3 changed files with 19 additions and 6 deletions
|
@ -17,7 +17,7 @@
|
|||
#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld64.so.1"
|
||||
#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0"
|
||||
#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0"
|
||||
+#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-powerpc.so.1"
|
||||
+#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-powerpc%{msoft-float:-sf}.so.1"
|
||||
+#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-powerpc64.so.1"
|
||||
#if DEFAULT_LIBC == LIBC_UCLIBC
|
||||
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
||||
|
@ -72,7 +72,7 @@
|
|||
|
||||
#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
|
||||
#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
|
||||
+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-powerpc.so.1"
|
||||
+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-powerpc%{msoft-float:-sf}.so.1"
|
||||
#if DEFAULT_LIBC == LIBC_UCLIBC
|
||||
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
||||
+#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{mmusl:" M ";:" U "}}"
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
#endif
|
||||
#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0"
|
||||
#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0"
|
||||
+#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-powerpc.so.1"
|
||||
+#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-powerpc%{msoft-float:-sf}.so.1"
|
||||
+#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-powerpc64.so.1"
|
||||
#if DEFAULT_LIBC == LIBC_UCLIBC
|
||||
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
||||
|
@ -72,7 +72,7 @@
|
|||
|
||||
#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
|
||||
#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
|
||||
+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-powerpc.so.1"
|
||||
+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-powerpc%{msoft-float:-sf}.so.1"
|
||||
#if DEFAULT_LIBC == LIBC_UCLIBC
|
||||
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
||||
+#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{mmusl:" M ";:" U "}}"
|
||||
|
|
|
@ -7,8 +7,7 @@ instruction set for floating point operations (SPE).
|
|||
Executing regular PowerPC floating point instructions results in
|
||||
"Illegal instruction" errors.
|
||||
|
||||
Until support for SPE FPU is added, make it possible to run these
|
||||
devices in soft-float mode.
|
||||
Make it possible to run these devices in soft-float mode.
|
||||
|
||||
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
|
||||
---
|
||||
|
@ -18,6 +17,20 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
|
|||
create mode 100644 src/setjmp/powerpc-sf/setjmp.s
|
||||
create mode 100644 src/setjmp/powerpc-sf/setjmp.sub
|
||||
|
||||
--- a/arch/powerpc/reloc.h
|
||||
+++ b/arch/powerpc/reloc.h
|
||||
@@ -1,4 +1,10 @@
|
||||
-#define LDSO_ARCH "powerpc"
|
||||
+#ifdef _SOFT_FLOAT
|
||||
+#define FP_SUFFIX "-sf"
|
||||
+#else
|
||||
+#define FP_SUFFIX ""
|
||||
+#endif
|
||||
+
|
||||
+#define LDSO_ARCH "powerpc" FP_SUFFIX
|
||||
|
||||
#define TPOFF_K (-0x7000)
|
||||
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -498,6 +498,10 @@ trycppif "_MIPSEL || __MIPSEL || __MIPSE
|
||||
|
|
Loading…
Reference in a new issue