summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2014-02-23 19:51:14 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2014-02-23 19:51:14 +0100
commitcea2d6801d8bb29ae976ca75a7b1f7715d24c553 (patch)
tree7441852b044b2fc6c449aba89f2ce8515a9ec1d9
parentbe4659ebff230c85615ec5585d2b0de9965c6ae6 (diff)
parent6b6fe26dee627bbc6506b0e96ed13a55440bcd9d (diff)
Merge branch 'master' of git+ssh://openadk.org/git/openadk
-rw-r--r--mk/build.mk7
-rw-r--r--target/config/Config.in3
-rw-r--r--target/mips/sys-available/toolchain-mips6410
-rw-r--r--target/mips/sys-available/toolchain-mips64el10
-rw-r--r--target/tarch.lst3
-rw-r--r--target/x86_64/sys-available/toolchain-x86_641
-rw-r--r--toolchain/eglibc/Makefile5
7 files changed, 34 insertions, 5 deletions
diff --git a/mk/build.mk b/mk/build.mk
index cb2bf9be9..cbfb371b1 100644
--- a/mk/build.mk
+++ b/mk/build.mk
@@ -41,8 +41,6 @@ DEFCONFIG= ADK_DEBUG=n \
ADK_PKG_XORG=n \
ADK_PKG_MPDBOX=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_LTO=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)
bulktoolchain:
- for libc in uclibc eglibc glibc musl;do \
+ for libc in glibc eglibc uclibc musl;do \
while read arch; do \
mkdir -p $(TOPDIR)/firmware/toolchain_$${arch}_$$libc; \
( \
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) ARCH=$$tarch SYSTEM=toolchain-$$arch LIBC=$$libc defconfig; \
$(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; \
) 2>&1 | tee $(TOPDIR)/firmware/toolchain_$${arch}_$${libc}/build.log; \
if [ -f .exit ];then break;fi \
diff --git a/target/config/Config.in b/target/config/Config.in
index 6cab5a99d..3e20b46a6 100644
--- a/target/config/Config.in
+++ b/target/config/Config.in
@@ -63,6 +63,8 @@ prompt "Target Kernel"
depends on ADK_TARGET_SYSTEM_LEMOTE_YEELONG \
|| ADK_TARGET_SYSTEM_QEMU_MIPS64 \
|| ADK_TARGET_SYSTEM_QEMU_MIPS64EL \
+ || ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64 \
+ || ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64EL \
|| ADK_LINUX_X86_64
config ADK_TARGET_KERNEL64
@@ -599,6 +601,7 @@ config ADK_TARGET_LIB_UCLIBC
select ADK_uclibc
depends on \
!ADK_LINUX_MICROBLAZE && \
+ !ADK_LINUX_SPARC && \
!ADK_LINUX_SPARC64 && \
!ADK_LINUX_PPC64 && \
!ADK_LINUX_NATIVE
diff --git a/target/mips/sys-available/toolchain-mips64 b/target/mips/sys-available/toolchain-mips64
new file mode 100644
index 000000000..9cc19e299
--- /dev/null
+++ b/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.
diff --git a/target/mips/sys-available/toolchain-mips64el b/target/mips/sys-available/toolchain-mips64el
new file mode 100644
index 000000000..2cb27d99c
--- /dev/null
+++ b/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.
diff --git a/target/tarch.lst b/target/tarch.lst
index d515ddfd5..239c496df 100644
--- a/target/tarch.lst
+++ b/target/tarch.lst
@@ -2,8 +2,11 @@ arm
armeb
m68k
microblaze
+microblazeel
mips
mipsel
+mips64
+mips64el
ppc
ppc64
sparc
diff --git a/target/x86_64/sys-available/toolchain-x86_64 b/target/x86_64/sys-available/toolchain-x86_64
index fd1025270..c268e9687 100644
--- a/target/x86_64/sys-available/toolchain-x86_64
+++ b/target/x86_64/sys-available/toolchain-x86_64
@@ -2,6 +2,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_X86_64
bool "Toolchain only"
select ADK_x86_64
select ADK_toolchain_x86_64
+ select ADK_CPU_X86_64
select ADK_TOOLCHAIN
select ADK_TARGET_PACKAGE_TGZ
help
diff --git a/toolchain/eglibc/Makefile b/toolchain/eglibc/Makefile
index 72dd1b1b7..dbccb8866 100644
--- a/toolchain/eglibc/Makefile
+++ b/toolchain/eglibc/Makefile
@@ -4,13 +4,16 @@
include $(TOPDIR)/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)
TARGET_CFLAGS_LIBC:= $(subst Os,O2,$(TARGET_CFLAGS))
endif
ifeq ($(ADK_LINUX_MICROBLAZE),y)
TARGET_CFLAGS_LIBC:= $(subst Os,O2,$(TARGET_CFLAGS))
endif
+ifeq ($(ADK_LINUX_PPC64),y)
+TARGET_CFLAGS_LIBC:= $(subst Os,O2,$(TARGET_CFLAGS))
+endif
# ssp not supported
TARGET_CFLAGS_LIBC:= $(filter-out -fstack-protector,$(TARGET_CFLAGS_LIBC))