diff options
Diffstat (limited to 'toolchain/gcc/patches/4.9.3/microblaze.uclibc')
-rw-r--r-- | toolchain/gcc/patches/4.9.3/microblaze.uclibc | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/toolchain/gcc/patches/4.9.3/microblaze.uclibc b/toolchain/gcc/patches/4.9.3/microblaze.uclibc new file mode 100644 index 000000000..06dfddcd7 --- /dev/null +++ b/toolchain/gcc/patches/4.9.3/microblaze.uclibc @@ -0,0 +1,29 @@ +diff -Nur gcc-4.9.2.orig/gcc/config/microblaze/linux.h gcc-4.9.2/gcc/config/microblaze/linux.h +--- gcc-4.9.2.orig/gcc/config/microblaze/linux.h 2014-01-02 16:23:26.000000000 -0600 ++++ gcc-4.9.2/gcc/config/microblaze/linux.h 2015-06-07 09:32:24.621501374 -0500 +@@ -25,10 +25,23 @@ + #undef TLS_NEEDS_GOT + #define TLS_NEEDS_GOT 1 + +-#define DYNAMIC_LINKER "/lib/ld.so.1" ++#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" ++#if DEFAULT_LIBC == LIBC_UCLIBC ++#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}" ++#elif DEFAULT_LIBC == LIBC_GLIBC ++#define CHOOSE_DYNAMIC_LINKER(G, U) "%{muclibc:" U ";:" G "}" ++#else ++#error "Unsupported DEFAULT_LIBC" ++#endif ++#define GNU_USER_DYNAMIC_LINKER \ ++ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) ++ ++#define ELF_DYNAMIC_LINKER GNU_USER_DYNAMIC_LINKER ++ + #undef SUBTARGET_EXTRA_SPECS + #define SUBTARGET_EXTRA_SPECS \ +- { "dynamic_linker", DYNAMIC_LINKER } ++ { "dynamic_linker", ELF_DYNAMIC_LINKER } + + #undef LINK_SPEC + #define LINK_SPEC "%{shared:-shared} \ |