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 GLIBC_DYNAMIC_LINKER64 "/lib64/ld64.so.1"
|
||||||
#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0"
|
#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0"
|
||||||
#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-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"
|
+#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-powerpc64.so.1"
|
||||||
#if DEFAULT_LIBC == LIBC_UCLIBC
|
#if DEFAULT_LIBC == LIBC_UCLIBC
|
||||||
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
||||||
|
@ -72,7 +72,7 @@
|
||||||
|
|
||||||
#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
|
#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
|
||||||
#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
|
#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
|
#if DEFAULT_LIBC == LIBC_UCLIBC
|
||||||
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
||||||
+#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{mmusl:" M ";:" U "}}"
|
+#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{mmusl:" M ";:" U "}}"
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
#endif
|
#endif
|
||||||
#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0"
|
#define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0"
|
||||||
#define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-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"
|
+#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-powerpc64.so.1"
|
||||||
#if DEFAULT_LIBC == LIBC_UCLIBC
|
#if DEFAULT_LIBC == LIBC_UCLIBC
|
||||||
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
||||||
|
@ -72,7 +72,7 @@
|
||||||
|
|
||||||
#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
|
#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
|
||||||
#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
|
#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
|
#if DEFAULT_LIBC == LIBC_UCLIBC
|
||||||
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
-#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
|
||||||
+#define CHOOSE_DYNAMIC_LINKER(G, U, M) "%{mglibc:" G ";:%{mmusl:" M ";:" 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
|
Executing regular PowerPC floating point instructions results in
|
||||||
"Illegal instruction" errors.
|
"Illegal instruction" errors.
|
||||||
|
|
||||||
Until support for SPE FPU is added, make it possible to run these
|
Make it possible to run these devices in soft-float mode.
|
||||||
devices in soft-float mode.
|
|
||||||
|
|
||||||
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
|
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.s
|
||||||
create mode 100644 src/setjmp/powerpc-sf/setjmp.sub
|
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
|
--- a/configure
|
||||||
+++ b/configure
|
+++ b/configure
|
||||||
@@ -498,6 +498,10 @@ trycppif "_MIPSEL || __MIPSEL || __MIPSE
|
@@ -498,6 +498,10 @@ trycppif "_MIPSEL || __MIPSEL || __MIPSE
|
||||||
|
|
Loading…
Reference in a new issue