From 6528871efd3e99f18deba5a768f935fd6c75d533 Mon Sep 17 00:00:00 2001 From: nbd Date: Sat, 18 Apr 2009 17:03:55 +0000 Subject: add a modified version of the mips64 patch from #4603 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15249 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- toolchain/gcc/Makefile | 2 ++ toolchain/glibc/Config.version | 6 +++--- toolchain/glibc/Makefile | 1 + toolchain/uClibc/Config.in | 1 + toolchain/uClibc/config-0.9.29/mips64 | 19 +++++++++++++++++++ toolchain/uClibc/config-0.9.29/mips64el | 19 +++++++++++++++++++ toolchain/uClibc/config-0.9.30/mips64 | 17 +++++++++++++++++ toolchain/uClibc/config-0.9.30/mips64el | 17 +++++++++++++++++ toolchain/uClibc/config-nptl/mips64 | 17 +++++++++++++++++ toolchain/uClibc/config-nptl/mips64el | 17 +++++++++++++++++ 10 files changed, 113 insertions(+), 3 deletions(-) create mode 100644 toolchain/uClibc/config-0.9.29/mips64 create mode 100644 toolchain/uClibc/config-0.9.29/mips64el create mode 100644 toolchain/uClibc/config-0.9.30/mips64 create mode 100644 toolchain/uClibc/config-0.9.30/mips64el create mode 100644 toolchain/uClibc/config-nptl/mips64 create mode 100644 toolchain/uClibc/config-nptl/mips64el (limited to 'toolchain') diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile index 6f2b626f38..d7170ea8ec 100644 --- a/toolchain/gcc/Makefile +++ b/toolchain/gcc/Makefile @@ -73,6 +73,7 @@ GCC_CONFIGURE:= \ --disable-nls \ $(SOFT_FLOAT_CONFIG_OPTION) \ $(call qstrip,$(CONFIG_EXTRA_GCC_CONFIG_OPTIONS)) \ + $(if $(CONFIG_mips64)$(CONFIG_mips64el),--with-arch=mips64 --with-abi=64) \ ifneq ($(CONFIG_GCC_VERSION_4_3),) GCC_BUILD_TARGET_LIBGCC:=y @@ -189,6 +190,7 @@ define Stage2/Configure ln -sf ../include $(TOOLCHAIN_DIR)/usr/$(REAL_GNU_TARGET_NAME)/sys-include rm -rf $(TOOLCHAIN_DIR)/usr/$(REAL_GNU_TARGET_NAME)/lib ln -sf ../lib $(TOOLCHAIN_DIR)/usr/$(REAL_GNU_TARGET_NAME)/lib + $(if $(CONFIG_mips64)$(CONFIG_mips64el),ln -sf ../lib64 $(TOOLCHAIN_DIR)/usr/$(REAL_GNU_TARGET_NAME)/lib64) (cd $(HOST_BUILD_DIR2); rm -f config.cache; \ $(GCC_CONFIGURE_STAGE2) \ ); diff --git a/toolchain/glibc/Config.version b/toolchain/glibc/Config.version index d68eeea8a9..1debf0c040 100644 --- a/toolchain/glibc/Config.version +++ b/toolchain/glibc/Config.version @@ -9,7 +9,7 @@ config GLIBC_VERSION config GLIBC_PORTS bool depends on USE_GLIBC - default y if GLIBC_VERSION_2_3_6 && (arm || armeb || mips || mipsel) - default y if GLIBC_VERSION_2_6_1 && (arm || armeb || mips || mipsel || powerpc) - default y if GLIBC_VERSION_2_7 && (arm || armeb || mips || mipsel || powerpc) + default y if GLIBC_VERSION_2_3_6 && (arm || armeb || mips || mipsel || mips64 || mips64el) + default y if GLIBC_VERSION_2_6_1 && (arm || armeb || mips || mipsel || mips64 || mips64el || powerpc) + default y if GLIBC_VERSION_2_7 && (arm || armeb || mips || mipsel || mips64 || mips64el || powerpc) default n diff --git a/toolchain/glibc/Makefile b/toolchain/glibc/Makefile index d014cacded..054d891303 100644 --- a/toolchain/glibc/Makefile +++ b/toolchain/glibc/Makefile @@ -57,6 +57,7 @@ GLIBC_CONFIGURE:= \ --build=$(GNU_HOST_NAME) \ --host=$(REAL_GNU_TARGET_NAME) \ --with-headers="$(TOOLCHAIN_DIR)/usr/include" \ + $(if $(CONFIG_mips64)$(CONFIG_mips64el), --enable-kernel="2.6.0") \ --disable-debug \ --disable-profile \ --enable-add-ons="$(GLIBC_ADD_ONS)" \ diff --git a/toolchain/uClibc/Config.in b/toolchain/uClibc/Config.in index 70834770f2..523120a454 100644 --- a/toolchain/uClibc/Config.in +++ b/toolchain/uClibc/Config.in @@ -13,6 +13,7 @@ choice config UCLIBC_VERSION_0_9_28 bool "uClibc 0.9.28" + depends !(mips64 || mips64el) config UCLIBC_VERSION_0_9_29 bool "uClibc 0.9.29" diff --git a/toolchain/uClibc/config-0.9.29/mips64 b/toolchain/uClibc/config-0.9.29/mips64 new file mode 100644 index 0000000000..5ec91eea20 --- /dev/null +++ b/toolchain/uClibc/config-0.9.29/mips64 @@ -0,0 +1,19 @@ +ARCH_ANY_ENDIAN=y +ARCH_BIG_ENDIAN=y +ARCH_CFLAGS="-mno-split-addresses" +# ARCH_LITTLE_ENDIAN is not set +ARCH_WANTS_BIG_ENDIAN=y +# CONFIG_MIPS_ISA_1 is not set +# CONFIG_MIPS_ISA_2 is not set +# CONFIG_MIPS_ISA_3 is not set +# CONFIG_MIPS_ISA_4 is not set +# CONFIG_MIPS_ISA_MIPS32 is not set +CONFIG_MIPS_ISA_MIPS64=y +# CONFIG_MIPS_N32_ABI is not set +CONFIG_MIPS_N64_ABI=y +# CONFIG_MIPS_O32_ABI is not set +DL_FINI_CRT_COMPAT=y +KERNEL_HEADERS="." +KERNEL_SOURCE="." +TARGET_ARCH="mips" +TARGET_mips=y diff --git a/toolchain/uClibc/config-0.9.29/mips64el b/toolchain/uClibc/config-0.9.29/mips64el new file mode 100644 index 0000000000..0b6f5b4e1f --- /dev/null +++ b/toolchain/uClibc/config-0.9.29/mips64el @@ -0,0 +1,19 @@ +ARCH_ANY_ENDIAN=y +# ARCH_BIG_ENDIAN is not set +ARCH_CFLAGS="-mno-split-addresses" +ARCH_LITTLE_ENDIAN=y +ARCH_WANTS_LITTLE_ENDIAN=y +# CONFIG_MIPS_ISA_1 is not set +# CONFIG_MIPS_ISA_2 is not set +# CONFIG_MIPS_ISA_3 is not set +# CONFIG_MIPS_ISA_4 is not set +# CONFIG_MIPS_ISA_MIPS32 is not set +CONFIG_MIPS_ISA_MIPS64=y +# CONFIG_MIPS_N32_ABI is not set +CONFIG_MIPS_N64_ABI=y +# CONFIG_MIPS_O32_ABI is not set +DL_FINI_CRT_COMPAT=y +KERNEL_HEADERS="." +KERNEL_SOURCE="." +TARGET_ARCH="mips" +TARGET_mips=y diff --git a/toolchain/uClibc/config-0.9.30/mips64 b/toolchain/uClibc/config-0.9.30/mips64 new file mode 100644 index 0000000000..fa5bee3aa5 --- /dev/null +++ b/toolchain/uClibc/config-0.9.30/mips64 @@ -0,0 +1,17 @@ +ARCH_ANY_ENDIAN=y +ARCH_BIG_ENDIAN=y +ARCH_CFLAGS="-mno-split-addresses" +ARCH_WANTS_BIG_ENDIAN=y +# CONFIG_MIPS_ISA_1 is not set +# CONFIG_MIPS_ISA_2 is not set +# CONFIG_MIPS_ISA_3 is not set +# CONFIG_MIPS_ISA_4 is not set +# CONFIG_MIPS_ISA_MIPS32 is not set +# CONFIG_MIPS_ISA_MIPS32R2 is not set +CONFIG_MIPS_ISA_MIPS64=y +# CONFIG_MIPS_N32_ABI is not set +CONFIG_MIPS_N64_ABI=y +# CONFIG_MIPS_O32_ABI is not set +TARGET_ARCH="mips" +TARGET_mips=y +UCLIBC_HAS_FPU=y diff --git a/toolchain/uClibc/config-0.9.30/mips64el b/toolchain/uClibc/config-0.9.30/mips64el new file mode 100644 index 0000000000..1ca764f6e2 --- /dev/null +++ b/toolchain/uClibc/config-0.9.30/mips64el @@ -0,0 +1,17 @@ +ARCH_ANY_ENDIAN=y +ARCH_CFLAGS="-mno-split-addresses" +ARCH_LITTLE_ENDIAN=y +ARCH_WANTS_LITTLE_ENDIAN=y +# CONFIG_MIPS_ISA_1 is not set +# CONFIG_MIPS_ISA_2 is not set +# CONFIG_MIPS_ISA_3 is not set +# CONFIG_MIPS_ISA_4 is not set +# CONFIG_MIPS_ISA_MIPS32 is not set +# CONFIG_MIPS_ISA_MIPS32R2 is not set +CONFIG_MIPS_ISA_MIPS64=y +# CONFIG_MIPS_N32_ABI is not set +CONFIG_MIPS_N64_ABI=y +# CONFIG_MIPS_O32_ABI is not set +TARGET_ARCH="mips" +TARGET_mips=y +UCLIBC_HAS_FPU=y diff --git a/toolchain/uClibc/config-nptl/mips64 b/toolchain/uClibc/config-nptl/mips64 new file mode 100644 index 0000000000..fa5bee3aa5 --- /dev/null +++ b/toolchain/uClibc/config-nptl/mips64 @@ -0,0 +1,17 @@ +ARCH_ANY_ENDIAN=y +ARCH_BIG_ENDIAN=y +ARCH_CFLAGS="-mno-split-addresses" +ARCH_WANTS_BIG_ENDIAN=y +# CONFIG_MIPS_ISA_1 is not set +# CONFIG_MIPS_ISA_2 is not set +# CONFIG_MIPS_ISA_3 is not set +# CONFIG_MIPS_ISA_4 is not set +# CONFIG_MIPS_ISA_MIPS32 is not set +# CONFIG_MIPS_ISA_MIPS32R2 is not set +CONFIG_MIPS_ISA_MIPS64=y +# CONFIG_MIPS_N32_ABI is not set +CONFIG_MIPS_N64_ABI=y +# CONFIG_MIPS_O32_ABI is not set +TARGET_ARCH="mips" +TARGET_mips=y +UCLIBC_HAS_FPU=y diff --git a/toolchain/uClibc/config-nptl/mips64el b/toolchain/uClibc/config-nptl/mips64el new file mode 100644 index 0000000000..1ca764f6e2 --- /dev/null +++ b/toolchain/uClibc/config-nptl/mips64el @@ -0,0 +1,17 @@ +ARCH_ANY_ENDIAN=y +ARCH_CFLAGS="-mno-split-addresses" +ARCH_LITTLE_ENDIAN=y +ARCH_WANTS_LITTLE_ENDIAN=y +# CONFIG_MIPS_ISA_1 is not set +# CONFIG_MIPS_ISA_2 is not set +# CONFIG_MIPS_ISA_3 is not set +# CONFIG_MIPS_ISA_4 is not set +# CONFIG_MIPS_ISA_MIPS32 is not set +# CONFIG_MIPS_ISA_MIPS32R2 is not set +CONFIG_MIPS_ISA_MIPS64=y +# CONFIG_MIPS_N32_ABI is not set +CONFIG_MIPS_N64_ABI=y +# CONFIG_MIPS_O32_ABI is not set +TARGET_ARCH="mips" +TARGET_mips=y +UCLIBC_HAS_FPU=y -- cgit v1.2.3