summaryrefslogtreecommitdiff
path: root/toolchain/gcc
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2010-04-04 10:34:02 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2010-04-04 10:34:02 +0200
commit5042ac8e5927d0089d3902b1c37e5bcc1565d053 (patch)
treecd2be3085808c5ac59dd70f9c610c6a40bfe3ffd /toolchain/gcc
parent401dabf66529cfb5ab47b4c78d5e25fd493eef1f (diff)
parent4d569ed1a3305c7b7abe8fa4273cea3b559cc85a (diff)
Merge branch 'master' of git+ssh://openadk.org/git/openadk
Conflicts: BUGS package/autoconf/Makefile
Diffstat (limited to 'toolchain/gcc')
-rw-r--r--toolchain/gcc/Makefile46
-rw-r--r--toolchain/gcc/Makefile.inc4
-rw-r--r--toolchain/gcc/patches/mirbsd-compat.patch12
-rw-r--r--toolchain/gcc/patches/no-lib64.patch2
4 files changed, 34 insertions, 30 deletions
diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile
index 210c0f68a..9ad2a3b05 100644
--- a/toolchain/gcc/Makefile
+++ b/toolchain/gcc/Makefile
@@ -5,13 +5,6 @@ include $(TOPDIR)/rules.mk
include ../rules.mk
include Makefile.inc
-
-ifeq ($(ADK_CXX),y)
-TARGET_LANGUAGES:= c,c++
-else
-TARGET_LANGUAGES:= c
-endif
-
GCC_CONFOPTS= --prefix=$(STAGING_TOOLS) \
--build=$(GNU_HOST_NAME) \
--host=$(GNU_HOST_NAME) \
@@ -24,23 +17,14 @@ GCC_CONFOPTS= --prefix=$(STAGING_TOOLS) \
--disable-libmudflap \
--disable-libgomp \
--disable-biarch \
+ --disable-decimal-float \
--disable-multilib \
--disable-sjlj-exceptions \
- --disable-nls
-
-#ifeq ($(ADK_LINUX_ARM_TOMTOM),y)
-#GCC_CONFOPTS+= --enable-sjlj-exceptions
-#else
-#GCC_CONFOPTS+= --disable-sjlj-exceptions
-#endif
-
-ifeq ($(ADK_SSP),y)
-GCC_CONFOPTS+= --enable-libssp
-else
-GCC_CONFOPTS+= --disable-libssp
-endif
+ --disable-libssp \
+ --disable-libstdcxx-pch \
+ --disable-nls
-ifeq ($(ADK_DEVICE_NO_FPU),y)
+ifeq ($(ADK_TARGET_NO_FPU),y)
GCC_CONFOPTS+= --with-float=soft
endif
@@ -50,6 +34,12 @@ endif
ifeq ($(ADK_TARGET_LIB_UCLIBC),y)
GCC_CONFOPTS+= --disable-tls
+else
+GCC_CONFOPTS+= --enable-tls
+endif
+
+ifeq (${ADK_MAKE_PARALLEL},y)
+GCC_MAKEOPTS+= -j${ADK_MAKE_JOBS}
endif
include ${TOPDIR}/mk/buildhlp.mk
@@ -73,7 +63,7 @@ $(GCC_BUILD_DIR_MINIMAL)/.configured:
$(GCC_BUILD_DIR_MINIMAL)/.compiled: $(GCC_BUILD_DIR_MINIMAL)/.configured
PATH=$(TARGET_PATH) \
- $(MAKE) -C $(GCC_BUILD_DIR_MINIMAL) all-gcc
+ $(MAKE) ${GCC_MAKEOPTS} -C $(GCC_BUILD_DIR_MINIMAL) all-gcc
touch $@
$(WRKBUILD)/.headers: $(GCC_BUILD_DIR_MINIMAL)/.compiled
@@ -93,6 +83,8 @@ $(GCC_BUILD_DIR_INITIAL)/.configured:
${GCC_CONFOPTS} \
--enable-languages=c \
--disable-shared \
+ --disable-threads \
+ --with-newlib \
--with-sysroot=$(TOOLCHAIN_SYSROOT) \
);
touch $@
@@ -100,12 +92,12 @@ $(GCC_BUILD_DIR_INITIAL)/.configured:
$(GCC_BUILD_DIR_INITIAL)/.compiled: $(GCC_BUILD_DIR_INITIAL)/.configured
PATH=$(TARGET_PATH) \
- $(MAKE) -C $(GCC_BUILD_DIR_INITIAL) all
+ $(MAKE) ${GCC_MAKEOPTS} -C $(GCC_BUILD_DIR_INITIAL) all-gcc all-target-libgcc
touch $@
$(WRKBUILD)/.configured: $(GCC_BUILD_DIR_INITIAL)/.compiled
PATH=$(TARGET_PATH) \
- $(MAKE) -C $(GCC_BUILD_DIR_INITIAL) install
+ $(MAKE) -C $(GCC_BUILD_DIR_INITIAL) install-gcc install-target-libgcc
touch $@
$(GCC_BUILD_DIR_FINAL)/.configured:
@@ -114,7 +106,7 @@ $(GCC_BUILD_DIR_FINAL)/.configured:
PATH=$(TARGET_PATH) \
$(WRKBUILD)/configure \
${GCC_CONFOPTS} \
- --enable-languages=$(TARGET_LANGUAGES) \
+ --enable-languages=c,c++ \
--with-sysroot=$(STAGING_DIR) \
--with-slibdir=$(STAGING_DIR)/lib \
--enable-shared \
@@ -123,7 +115,7 @@ $(GCC_BUILD_DIR_FINAL)/.configured:
$(WRKBUILD)/.compiled: $(GCC_BUILD_DIR_FINAL)/.configured
PATH=$(TARGET_PATH) \
- $(MAKE) -C $(GCC_BUILD_DIR_FINAL) all
+ $(MAKE) ${GCC_MAKEOPTS} -C $(GCC_BUILD_DIR_FINAL) all
touch $@
$(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
@@ -138,7 +130,7 @@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
cd bin; \
for app in $(REAL_GNU_TARGET_NAME)-* ; do \
ln -sf $${app} \
- $(GNU_TARGET_NAME)$${app##$(REAL_GNU_TARGET_NAME)}; \
+ $(GNU_TARGET_NAME)$${app##$(REAL_GNU_TARGET_NAME)}; \
done; \
)
touch $@
diff --git a/toolchain/gcc/Makefile.inc b/toolchain/gcc/Makefile.inc
index 9ef38d96e..e40fc2dec 100644
--- a/toolchain/gcc/Makefile.inc
+++ b/toolchain/gcc/Makefile.inc
@@ -2,8 +2,8 @@
# material, please see the LICENCE file in the top-level directory.
PKG_NAME:= gcc
-PKG_VERSION:= 4.4.1
+PKG_VERSION:= 4.4.3
PKG_RELEASE:= 1
-PKG_MD5SUM:= 927eaac3d44b22f31f9c83df82f26436
+PKG_MD5SUM:= fe1ca818fc6d2caeffc9051fe67ff103
PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/}
DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2
diff --git a/toolchain/gcc/patches/mirbsd-compat.patch b/toolchain/gcc/patches/mirbsd-compat.patch
new file mode 100644
index 000000000..2f3ea0c87
--- /dev/null
+++ b/toolchain/gcc/patches/mirbsd-compat.patch
@@ -0,0 +1,12 @@
+diff -Nur gcc-4.4.2.orig/gcc/configure gcc-4.4.2/gcc/configure
+--- gcc-4.4.2.orig/gcc/configure Tue Mar 24 18:45:39 2009
++++ gcc-4.4.2/gcc/configure Sat Dec 19 21:07:07 2009
+@@ -19381,7 +19381,7 @@
+ dynamic_linker='ldqnx.so'
+ ;;
+
+-openbsd*)
++mirbsd*|openbsd*)
+ version_type=sunos
+ sys_lib_dlsearch_path_spec="/usr/lib"
+ need_lib_prefix=no
diff --git a/toolchain/gcc/patches/no-lib64.patch b/toolchain/gcc/patches/no-lib64.patch
index 25ada0e4e..add17ecb8 100644
--- a/toolchain/gcc/patches/no-lib64.patch
+++ b/toolchain/gcc/patches/no-lib64.patch
@@ -6,7 +6,7 @@ diff -Nur gcc-4.4.1.orig/gcc/config/i386/linux64.h gcc-4.4.1/gcc/config/i386/lin
#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
-+#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2"
#undef ASM_SPEC
#define ASM_SPEC "%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} \