X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fstaging%2Fyousong.git;a=blobdiff_plain;f=toolchain%2Fgcc%2Fpatches%2F5.2.0%2F204-musl_sh.patch;h=8c3753d53012812fa3d7afce06d4d966082d9015;hp=dfb5b5174631dd3a510bfb317b765d23b30118d1;hb=0fdb4a458b08a802302801915801685b62c16f10;hpb=5caee877dc2a7e848b2edf68f7f34e9e9163d228 diff --git a/toolchain/gcc/patches/5.2.0/204-musl_sh.patch b/toolchain/gcc/patches/5.2.0/204-musl_sh.patch index dfb5b51746..8c3753d530 100644 --- a/toolchain/gcc/patches/5.2.0/204-musl_sh.patch +++ b/toolchain/gcc/patches/5.2.0/204-musl_sh.patch @@ -1,17 +1,39 @@ +gcc/Changelog: + +2015-04-27 Gregor Richards + Szabolcs Nagy + + * config/sh/linux.h (MUSL_DYNAMIC_LINKER): Define. + (MUSL_DYNAMIC_LINKER_E, MUSL_DYNAMIC_LINKER_FP): Define. + --- a/gcc/config/sh/linux.h +++ b/gcc/config/sh/linux.h -@@ -43,7 +43,14 @@ along with GCC; see the file COPYING3. +@@ -43,6 +43,28 @@ along with GCC; see the file COPYING3. #define TARGET_ASM_FILE_END file_end_indicate_exec_stack -+#if TARGET_BIG_ENDIAN_DEFAULT /* BE */ -+#define MUSL_DYNAMIC_LINKER_E "eb" ++#if TARGET_ENDIAN_DEFAULT == MASK_LITTLE_ENDIAN ++#define MUSL_DYNAMIC_LINKER_E "%{mb:eb}" +#else -+#define MUSL_DYNAMIC_LINKER_E ++#define MUSL_DYNAMIC_LINKER_E "%{!ml:eb}" +#endif ++ ++#if TARGET_CPU_DEFAULT & ( MASK_HARD_SH2A_DOUBLE | MASK_SH4 ) ++/* "-nofpu" if any nofpu option is specified */ ++#define MUSL_DYNAMIC_LINKER_FP \ ++ "%{m1|m2|m2a-nofpu|m3|m4-nofpu|m4-100-nofpu|m4-200-nofpu|m4-300-nofpu|" \ ++ "m4-340|m4-400|m4-500|m4al|m5-32media-nofpu|m5-64media-nofpu|" \ ++ "m5-compact-nofpu:-nofpu}" ++#else ++/* "-nofpu" if none of the hard fpu options are specified */ ++#define MUSL_DYNAMIC_LINKER_FP \ ++ "%{m2a|m4|m4-100|m4-200|m4-300|m4a|m5-32media|m5-64media|m5-compact:;:-nofpu}" ++#endif ++ ++#undef MUSL_DYNAMIC_LINKER ++#define MUSL_DYNAMIC_LINKER \ ++ "/lib/ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP ".so.1" + #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" -+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-sh" MUSL_DYNAMIC_LINKER_E ".so.1" #undef SUBTARGET_LINK_EMUL_SUFFIX - #define SUBTARGET_LINK_EMUL_SUFFIX "_linux"