summaryrefslogtreecommitdiff
path: root/toolchain
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain')
-rw-r--r--toolchain/gcc/Makefile10
-rw-r--r--toolchain/gcc/patches/4.7.3/musl-m68k.patch11
-rw-r--r--toolchain/gcc/patches/4.7.3/musl-sh.patch11
3 files changed, 27 insertions, 5 deletions
diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile
index 5d00be19b..d09264718 100644
--- a/toolchain/gcc/Makefile
+++ b/toolchain/gcc/Makefile
@@ -33,11 +33,8 @@ else
GCC_CONFOPTS+= --disable-sjlj-exceptions
endif
-ifeq ($(ADK_TARGET_WITH_MULTILIB),y)
-ifeq ($(ADK_LINUX_X86_64),y)
-GCC_CONFOPTS+= --with-multilib-list=$(ADK_MULTILIB_TARGET)
-endif
-GCC_CONFOPTS+= --enable-multilib
+ifeq ($(ADK_LINUX_SH),y)
+GCC_CONFOPTS+= --with-multilib-list=m4,m4-nofpu
else
GCC_CONFOPTS+= --disable-biarch \
--disable-multilib
@@ -116,6 +113,9 @@ $(GCC_BUILD_DIR_MINIMAL)/.configured:
ln -sf ${STAGING_TARGET_DIR}/include $(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME)/sys-include
rm -rf ${STAGING_HOST_DIR}/$(REAL_GNU_TARGET_NAME)/lib
ln -sf ${STAGING_TARGET_DIR}/lib $(STAGING_HOST_DIR)/$(REAL_GNU_TARGET_NAME)/lib
+ifeq ($(ADK_LINUX_SH),y)
+ (cd ${STAGING_TARGET_DIR}/ && ln -sf . m4 && ln -sf . m4-nofpu)
+endif
sed -i '/k prot/agcc_cv_libc_provides_ssp=yes' $(WRKBUILD)/gcc/configure
cd $(GCC_BUILD_DIR_MINIMAL); PATH='$(TARGET_PATH)' \
$(WRKBUILD)/configure \
diff --git a/toolchain/gcc/patches/4.7.3/musl-m68k.patch b/toolchain/gcc/patches/4.7.3/musl-m68k.patch
new file mode 100644
index 000000000..54c7e0eef
--- /dev/null
+++ b/toolchain/gcc/patches/4.7.3/musl-m68k.patch
@@ -0,0 +1,11 @@
+diff -Nur gcc-4.7.3.orig/gcc/config/m68k/linux.h gcc-4.7.3/gcc/config/m68k/linux.h
+--- gcc-4.7.3.orig/gcc/config/m68k/linux.h 2011-11-27 00:57:37.000000000 +0100
++++ gcc-4.7.3/gcc/config/m68k/linux.h 2013-09-28 22:37:22.000000000 +0200
+@@ -73,6 +73,7 @@
+ done. */
+
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
++#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-m68k.so.1"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC "-m m68kelf %{shared} \
diff --git a/toolchain/gcc/patches/4.7.3/musl-sh.patch b/toolchain/gcc/patches/4.7.3/musl-sh.patch
new file mode 100644
index 000000000..7738f266e
--- /dev/null
+++ b/toolchain/gcc/patches/4.7.3/musl-sh.patch
@@ -0,0 +1,11 @@
+diff -Nur gcc-4.7.3.orig/gcc/config/sh/linux.h gcc-4.7.3/gcc/config/sh/linux.h
+--- gcc-4.7.3.orig/gcc/config/sh/linux.h 2013-03-25 23:55:56.000000000 +0100
++++ gcc-4.7.3/gcc/config/sh/linux.h 2013-09-26 21:16:39.000000000 +0200
+@@ -46,6 +46,7 @@
+ #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
+
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-sh.1"
+
+ #undef SUBTARGET_LINK_EMUL_SUFFIX
+ #define SUBTARGET_LINK_EMUL_SUFFIX "_linux"