浏览代码

Merge branch 'master' of git+ssh://openadk.org/git/openadk

Waldemar Brodkorb 11 年之前
父节点
当前提交
cea2d6801d

+ 3 - 4
mk/build.mk

@@ -41,8 +41,6 @@ DEFCONFIG=		ADK_DEBUG=n \
 			ADK_PKG_XORG=n \
 			ADK_PKG_XORG=n \
 			ADK_PKG_MPDBOX=n \
 			ADK_PKG_MPDBOX=n \
 			ADK_PKG_DEVELOPMENT=n \
 			ADK_PKG_DEVELOPMENT=n \
-			ADK_TOOLCHAIN_GCC_JAVA=n \
-			ADK_TOOLCHAIN_GCC_OBJC=n \
 			ADK_TOOLCHAIN_GCC_USE_SSP=n \
 			ADK_TOOLCHAIN_GCC_USE_SSP=n \
 			ADK_TOOLCHAIN_GCC_USE_LTO=n \
 			ADK_TOOLCHAIN_GCC_USE_LTO=n \
 			BUSYBOX_IFPLUGD=n \
 			BUSYBOX_IFPLUGD=n \
@@ -530,15 +528,16 @@ endif # ! ifeq ($(strip $(ADK_HAVE_DOT_CONFIG)),y)
 
 
 # build all target architecture and libc combinations (toolchain only)
 # build all target architecture and libc combinations (toolchain only)
 bulktoolchain:
 bulktoolchain:
-	for libc in uclibc eglibc glibc musl;do \
+	for libc in glibc eglibc uclibc musl;do \
 		while read arch; do \
 		while read arch; do \
 		    mkdir -p $(TOPDIR)/firmware/toolchain_$${arch}_$$libc; \
 		    mkdir -p $(TOPDIR)/firmware/toolchain_$${arch}_$$libc; \
 		    ( \
 		    ( \
 			echo === building $$arch $$libc toolchain-$$arch on $$(date); \
 			echo === building $$arch $$libc toolchain-$$arch on $$(date); \
-			tarch=$$(echo $$arch|sed -e "s#el##" -e "s#eb##"); \
+			tarch=$$(echo $$arch|sed -e "s#el##" -e "s#eb##" -e "s#mips64.*#mips#"); \
 			$(GMAKE) prereq && \
 			$(GMAKE) prereq && \
 				$(GMAKE) ARCH=$$tarch SYSTEM=toolchain-$$arch LIBC=$$libc defconfig; \
 				$(GMAKE) ARCH=$$tarch SYSTEM=toolchain-$$arch LIBC=$$libc defconfig; \
 				$(GMAKE) VERBOSE=1 all; if [ $$? -ne 0 ]; then touch .exit;fi; \
 				$(GMAKE) VERBOSE=1 all; if [ $$? -ne 0 ]; then touch .exit;fi; \
+				tar -cJf ${TOPDIR}/firmware/toolchain_$${arch}_$${libc}.tar.xz host_$${arch}_*_$${libc} target_$${arch}_*_$${libc}; \
 			rm .config; \
 			rm .config; \
 		    ) 2>&1 | tee $(TOPDIR)/firmware/toolchain_$${arch}_$${libc}/build.log; \
 		    ) 2>&1 | tee $(TOPDIR)/firmware/toolchain_$${arch}_$${libc}/build.log; \
 		    if [ -f .exit ];then break;fi \
 		    if [ -f .exit ];then break;fi \

+ 3 - 0
target/config/Config.in

@@ -63,6 +63,8 @@ prompt "Target Kernel"
 depends on ADK_TARGET_SYSTEM_LEMOTE_YEELONG \
 depends on ADK_TARGET_SYSTEM_LEMOTE_YEELONG \
 	|| ADK_TARGET_SYSTEM_QEMU_MIPS64 \
 	|| ADK_TARGET_SYSTEM_QEMU_MIPS64 \
 	|| ADK_TARGET_SYSTEM_QEMU_MIPS64EL \
 	|| ADK_TARGET_SYSTEM_QEMU_MIPS64EL \
+	|| ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64 \
+	|| ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64EL \
 	|| ADK_LINUX_X86_64
 	|| ADK_LINUX_X86_64
 
 
 config ADK_TARGET_KERNEL64
 config ADK_TARGET_KERNEL64
@@ -599,6 +601,7 @@ config ADK_TARGET_LIB_UCLIBC
 	select ADK_uclibc
 	select ADK_uclibc
 	depends on \
 	depends on \
 		   !ADK_LINUX_MICROBLAZE && \
 		   !ADK_LINUX_MICROBLAZE && \
+		   !ADK_LINUX_SPARC && \
 		   !ADK_LINUX_SPARC64 && \
 		   !ADK_LINUX_SPARC64 && \
 		   !ADK_LINUX_PPC64 && \
 		   !ADK_LINUX_PPC64 && \
 		   !ADK_LINUX_NATIVE
 		   !ADK_LINUX_NATIVE

+ 10 - 0
target/mips/sys-available/toolchain-mips64

@@ -0,0 +1,10 @@
+config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64
+	bool "Toolchain only (mips64 big endian)"
+	select ADK_mips
+	select ADK_big
+	select ADK_CPU_MIPS64
+	select ADK_toolchain_mips64
+	select ADK_TOOLCHAIN
+	select ADK_TARGET_PACKAGE_TGZ
+	help
+	  MIPS64 big endian toolchain.

+ 10 - 0
target/mips/sys-available/toolchain-mips64el

@@ -0,0 +1,10 @@
+config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64EL
+	bool "Toolchain only (mips64 little endian)"
+	select ADK_mips
+	select ADK_little
+	select ADK_CPU_MIPS64
+	select ADK_toolchain_mips64el
+	select ADK_TOOLCHAIN
+	select ADK_TARGET_PACKAGE_TGZ
+	help
+	  MIPS64 little endian toolchain.

+ 3 - 0
target/tarch.lst

@@ -2,8 +2,11 @@ arm
 armeb
 armeb
 m68k
 m68k
 microblaze
 microblaze
+microblazeel
 mips
 mips
 mipsel
 mipsel
+mips64
+mips64el
 ppc
 ppc
 ppc64
 ppc64
 sparc
 sparc

+ 1 - 0
target/x86_64/sys-available/toolchain-x86_64

@@ -2,6 +2,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_X86_64
 	bool "Toolchain only"
 	bool "Toolchain only"
 	select ADK_x86_64
 	select ADK_x86_64
 	select ADK_toolchain_x86_64
 	select ADK_toolchain_x86_64
+	select ADK_CPU_X86_64
 	select ADK_TOOLCHAIN
 	select ADK_TOOLCHAIN
 	select ADK_TARGET_PACKAGE_TGZ
 	select ADK_TARGET_PACKAGE_TGZ
 	help
 	help

+ 4 - 1
toolchain/eglibc/Makefile

@@ -4,13 +4,16 @@
 include $(TOPDIR)/rules.mk
 include $(TOPDIR)/rules.mk
 include ../rules.mk
 include ../rules.mk
 
 
-# eglibc does not compile with Os on sparc
+# eglibc does not compile with Os on some architectures
 ifeq ($(ADK_LINUX_SPARC),y)
 ifeq ($(ADK_LINUX_SPARC),y)
 TARGET_CFLAGS_LIBC:=	$(subst Os,O2,$(TARGET_CFLAGS))
 TARGET_CFLAGS_LIBC:=	$(subst Os,O2,$(TARGET_CFLAGS))
 endif
 endif
 ifeq ($(ADK_LINUX_MICROBLAZE),y)
 ifeq ($(ADK_LINUX_MICROBLAZE),y)
 TARGET_CFLAGS_LIBC:=	$(subst Os,O2,$(TARGET_CFLAGS))
 TARGET_CFLAGS_LIBC:=	$(subst Os,O2,$(TARGET_CFLAGS))
 endif
 endif
+ifeq ($(ADK_LINUX_PPC64),y)
+TARGET_CFLAGS_LIBC:=	$(subst Os,O2,$(TARGET_CFLAGS))
+endif
 
 
 # ssp not supported
 # ssp not supported
 TARGET_CFLAGS_LIBC:= 	$(filter-out -fstack-protector,$(TARGET_CFLAGS_LIBC))
 TARGET_CFLAGS_LIBC:= 	$(filter-out -fstack-protector,$(TARGET_CFLAGS_LIBC))