summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDongxiao Xu <dongxiao.xu@intel.com>2010-09-19 22:29:09 +0800
committerSaul Wold <Saul.Wold@intel.com>2010-09-22 09:52:41 -0700
commit460954b1b31981f0857f338d2fa702af9395a652 (patch)
treea4ac4ad642a9cebf7e9d799e574b495dcbe4945e
parentb80483094f3b08d86cf753d75a5ca6e79d103bff (diff)
downloadopenembedded-core-460954b1b31981f0857f338d2fa702af9395a652.tar.gz
openembedded-core-460954b1b31981f0857f338d2fa702af9395a652.tar.bz2
openembedded-core-460954b1b31981f0857f338d2fa702af9395a652.zip
upgrade gcc to 4.5.0 for mips architecture
Fix the out of memory when building webkit-gtk with gcc-4.5.0 The new feature added after 4.3.3 "http://www.pubbs.net/200909/gcc/94048-patch-add-support-for-rmipsjalr.html" will cause cc1plus eat up all the system memory when build webkit-gtk. The function mips_get_pic_call_symbol keeps on recursively calling itself. Disable this feature to walk aside the bug. Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
-rw-r--r--meta/conf/distro/include/poky-default.inc1
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.5.0.inc1
-rw-r--r--meta/recipes-devtools/gcc/gcc-4.5.0/disable_relax_pic_calls_flag.patch44
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross-canadian_4.5.0.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc-cross_4.5.0.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc-runtime_4.5.0.bb2
-rw-r--r--meta/recipes-devtools/gcc/gcc_4.5.0.bb2
7 files changed, 49 insertions, 5 deletions
diff --git a/meta/conf/distro/include/poky-default.inc b/meta/conf/distro/include/poky-default.inc
index 0dabeec27c..1e1a04c1f2 100644
--- a/meta/conf/distro/include/poky-default.inc
+++ b/meta/conf/distro/include/poky-default.inc
@@ -16,7 +16,6 @@ PREFERRED_PROVIDER_virtual/${SDK_PREFIX}libc-for-gcc-nativesdk ?= "${POKYLIBC}-n
GCCVERSION ?= "4.5.0"
-GCCVERSION_mips ?= "4.3.3"
SDKGCCVERSION ?= "4.5.0"
BINUVERSION ?= "2.20.1"
GLIBCVERSION ?= "2.10.1"
diff --git a/meta/recipes-devtools/gcc/gcc-4.5.0.inc b/meta/recipes-devtools/gcc/gcc-4.5.0.inc
index 6ca2f98bc8..6da8ddaa53 100644
--- a/meta/recipes-devtools/gcc/gcc-4.5.0.inc
+++ b/meta/recipes-devtools/gcc/gcc-4.5.0.inc
@@ -47,6 +47,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \
file://gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch \
file://64bithack.patch \
file://optional_libstdc.patch \
+ file://disable_relax_pic_calls_flag.patch \
"
SRC_URI_append_sh3 = " file://sh3-installfix-fixheaders.patch;patch=1 "
diff --git a/meta/recipes-devtools/gcc/gcc-4.5.0/disable_relax_pic_calls_flag.patch b/meta/recipes-devtools/gcc/gcc-4.5.0/disable_relax_pic_calls_flag.patch
new file mode 100644
index 0000000000..b1d5a1a3cb
--- /dev/null
+++ b/meta/recipes-devtools/gcc/gcc-4.5.0/disable_relax_pic_calls_flag.patch
@@ -0,0 +1,44 @@
+GCC: disable MASK_RELAX_PIC_CALLS bit
+
+The new feature added after 4.3.3
+"http://www.pubbs.net/200909/gcc/94048-patch-add-support-for-rmipsjalr.html"
+will cause cc1plus eat up all the system memory when build webkit-gtk.
+The function mips_get_pic_call_symbol keeps on recursively calling itself.
+Disable this feature to walk aside the bug.
+
+Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
+
+diff -ruN gcc-4.5.0-orig/gcc/configure gcc-4.5.0/gcc/configure
+--- gcc-4.5.0-orig/gcc/configure 2010-09-17 23:30:21.000000000 +0800
++++ gcc-4.5.0/gcc/configure 2010-09-19 18:21:28.000000000 +0800
+@@ -23945,13 +23945,6 @@
+ rm -f conftest.*
+ fi
+ fi
+- if test $gcc_cv_as_ld_jalr_reloc = yes; then
+- if test x$target_cpu_default = x; then
+- target_cpu_default=MASK_RELAX_PIC_CALLS
+- else
+- target_cpu_default="($target_cpu_default)|MASK_RELAX_PIC_CALLS"
+- fi
+- fi
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_ld_jalr_reloc" >&5
+ $as_echo "$gcc_cv_as_ld_jalr_reloc" >&6; }
+
+diff -ruN gcc-4.5.0-orig/gcc/configure.ac gcc-4.5.0/gcc/configure.ac
+--- gcc-4.5.0-orig/gcc/configure.ac 2010-09-17 23:30:21.000000000 +0800
++++ gcc-4.5.0/gcc/configure.ac 2010-09-19 18:21:11.000000000 +0800
+@@ -3467,13 +3467,6 @@
+ rm -f conftest.*
+ fi
+ fi
+- if test $gcc_cv_as_ld_jalr_reloc = yes; then
+- if test x$target_cpu_default = x; then
+- target_cpu_default=MASK_RELAX_PIC_CALLS
+- else
+- target_cpu_default="($target_cpu_default)|MASK_RELAX_PIC_CALLS"
+- fi
+- fi
+ AC_MSG_RESULT($gcc_cv_as_ld_jalr_reloc)
+
+ AC_CACHE_CHECK([linker for .eh_frame personality relaxation],
diff --git a/meta/recipes-devtools/gcc/gcc-cross-canadian_4.5.0.bb b/meta/recipes-devtools/gcc/gcc-cross-canadian_4.5.0.bb
index e1a8e970d0..a9f79b6509 100644
--- a/meta/recipes-devtools/gcc/gcc-cross-canadian_4.5.0.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross-canadian_4.5.0.bb
@@ -5,7 +5,7 @@ require gcc-cross-canadian.inc
require gcc-configure-sdk.inc
require gcc-package-sdk.inc
-PR = "r7"
+PR = "r8"
DEPENDS += "gmp-nativesdk mpfr-nativesdk libmpc-nativesdk elfutils-nativesdk"
RDEPENDS_${PN} += "mpfr-nativesdk libmpc-nativesdk elfutils-nativesdk"
diff --git a/meta/recipes-devtools/gcc/gcc-cross_4.5.0.bb b/meta/recipes-devtools/gcc/gcc-cross_4.5.0.bb
index 2246663594..d3a068e1f6 100644
--- a/meta/recipes-devtools/gcc/gcc-cross_4.5.0.bb
+++ b/meta/recipes-devtools/gcc/gcc-cross_4.5.0.bb
@@ -1,4 +1,4 @@
-PR = "r8"
+PR = "r9"
require gcc-${PV}.inc
require gcc-cross4.inc
diff --git a/meta/recipes-devtools/gcc/gcc-runtime_4.5.0.bb b/meta/recipes-devtools/gcc/gcc-runtime_4.5.0.bb
index 2231c4269e..79ce466a29 100644
--- a/meta/recipes-devtools/gcc/gcc-runtime_4.5.0.bb
+++ b/meta/recipes-devtools/gcc/gcc-runtime_4.5.0.bb
@@ -1,4 +1,4 @@
-PR = "r7"
+PR = "r8"
require gcc-${PV}.inc
require gcc-configure-runtime.inc
diff --git a/meta/recipes-devtools/gcc/gcc_4.5.0.bb b/meta/recipes-devtools/gcc/gcc_4.5.0.bb
index 45bbb01e40..a42fb39764 100644
--- a/meta/recipes-devtools/gcc/gcc_4.5.0.bb
+++ b/meta/recipes-devtools/gcc/gcc_4.5.0.bb
@@ -1,4 +1,4 @@
-PR = "r7"
+PR = "r8"
require gcc-${PV}.inc
require gcc-configure-target.inc