mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-04-02 02:49:12 +00:00
gcc-4.5: Sync patches from yocto
With this patchset now the gcc has all goodies from OE as well as yocto together merged into meta-oe Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
This commit is contained in:
parent
2fe69cb8c5
commit
469531f353
@ -14,7 +14,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
|
||||
|
||||
SRCREV = "170880"
|
||||
PV = "4.5"
|
||||
INC_PR = "r33"
|
||||
INC_PR = "r34"
|
||||
|
||||
# BINV should be incremented after updating to a revision
|
||||
# after a minor gcc release (e.g. 4.5.1 or 4.5.2) has been made
|
||||
@ -37,6 +37,7 @@ SRC_URI = "svn://gcc.gnu.org/svn/gcc/branches;module=${BRANCH} \
|
||||
file://gcc-armv4-pass-fix-v4bx-to-ld.patch \
|
||||
file://sh4-multilib.patch \
|
||||
file://arm-lib1funcs.as-fix-mismatch-between-conditions-of-an-IT-block.patch \
|
||||
\
|
||||
file://linaro/gcc-4.5-linaro-r99297.patch \
|
||||
file://linaro/gcc-4.5-linaro-r99298.patch \
|
||||
file://linaro/gcc-4.5-linaro-r99299.patch \
|
||||
@ -182,9 +183,23 @@ SRC_URI = "svn://gcc.gnu.org/svn/gcc/branches;module=${BRANCH} \
|
||||
file://gcc-scalar-widening-pr45847.patch \
|
||||
file://gcc-arm-volatile-bitfield-fix.patch \
|
||||
\
|
||||
file://fedora/gcc43-c++-builtin-redecl.patch;striplevel=0 \
|
||||
file://fedora/gcc43-ia64-libunwind.patch;striplevel=0 \
|
||||
file://fedora/gcc43-java-nomulti.patch;striplevel=0 \
|
||||
file://fedora/gcc43-ppc32-retaddr.patch;striplevel=0 \
|
||||
file://fedora/gcc43-pr32139.patch;striplevel=0 \
|
||||
file://fedora/gcc43-pr33763.patch;striplevel=0 \
|
||||
file://fedora/gcc43-rh330771.patch;striplevel=0 \
|
||||
file://fedora/gcc43-rh341221.patch;striplevel=0 \
|
||||
file://fedora/gcc43-java-debug-iface-type.patch;striplevel=0 \
|
||||
file://fedora/gcc43-i386-libgomp.patch;striplevel=0 \
|
||||
file://fedora/gcc45-no-add-needed.patch;striplevel=0 \
|
||||
file://optional_libstdc.patch \
|
||||
file://64bithack.patch \
|
||||
file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.patch \
|
||||
file://COLLECT_GCC_OPTIONS.patch \
|
||||
file://gcc-poison-dir-extend.patch \
|
||||
file://gcc-poison-parameters.patch \
|
||||
"
|
||||
|
||||
# Language Overrides
|
||||
|
||||
@ -0,0 +1,23 @@
|
||||
#This patck added --sysroot into COLLECT_GCC_OPTIONS which is used to
|
||||
#invoke collect2.
|
||||
|
||||
Index: gcc-4_5-branch/gcc/gcc.c
|
||||
===================================================================
|
||||
--- gcc-4_5-branch.orig/gcc/gcc.c
|
||||
+++ gcc-4_5-branch/gcc/gcc.c
|
||||
@@ -4667,6 +4667,15 @@ set_collect_gcc_options (void)
|
||||
sizeof ("COLLECT_GCC_OPTIONS=") - 1);
|
||||
|
||||
first_time = TRUE;
|
||||
+#ifdef HAVE_LD_SYSROOT
|
||||
+ if (target_system_root_changed && target_system_root)
|
||||
+ {
|
||||
+ obstack_grow (&collect_obstack, "'--sysroot=", sizeof("'--sysroot=")-1);
|
||||
+ obstack_grow (&collect_obstack, target_system_root,strlen(target_system_root));
|
||||
+ obstack_grow (&collect_obstack, "'", 1);
|
||||
+ first_time = FALSE;
|
||||
+ }
|
||||
+#endif
|
||||
for (i = 0; (int) i < n_switches; i++)
|
||||
{
|
||||
const char *const *args;
|
||||
@ -0,0 +1,52 @@
|
||||
2010-02-08 Roland McGrath <roland@redhat.com>
|
||||
|
||||
* config/rs6000/sysv4.h (LINK_EH_SPEC): Pass --no-add-needed to the
|
||||
linker.
|
||||
* config/linux.h (LINK_EH_SPEC): Likewise.
|
||||
* config/alpha/elf.h (LINK_EH_SPEC): Likewise.
|
||||
* config/ia64/linux.h (LINK_EH_SPEC): Likewise.
|
||||
|
||||
--- gcc/config/alpha/elf.h.~1~
|
||||
+++ gcc/config/alpha/elf.h
|
||||
@@ -421,7 +421,7 @@ extern int alpha_this_gpdisp_sequence_nu
|
||||
I imagine that other systems will catch up. In the meantime, it
|
||||
doesn't harm to make sure that the data exists to be used later. */
|
||||
#if defined(HAVE_LD_EH_FRAME_HDR)
|
||||
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
|
||||
+#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
|
||||
#endif
|
||||
|
||||
/* A C statement (sans semicolon) to output to the stdio stream STREAM
|
||||
--- gcc/config/ia64/linux.h.~1~
|
||||
+++ gcc/config/ia64/linux.h
|
||||
@@ -58,7 +58,7 @@ do { \
|
||||
Signalize that because we have fde-glibc, we don't need all C shared libs
|
||||
linked against -lgcc_s. */
|
||||
#undef LINK_EH_SPEC
|
||||
-#define LINK_EH_SPEC ""
|
||||
+#define LINK_EH_SPEC "--no-add-needed "
|
||||
|
||||
#define MD_UNWIND_SUPPORT "config/ia64/linux-unwind.h"
|
||||
|
||||
--- gcc/config/linux.h.~1~
|
||||
+++ gcc/config/linux.h
|
||||
@@ -89,7 +89,7 @@ see the files COPYING3 and COPYING.RUNTI
|
||||
} while (0)
|
||||
|
||||
#if defined(HAVE_LD_EH_FRAME_HDR)
|
||||
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
|
||||
+#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
|
||||
#endif
|
||||
|
||||
/* Define this so we can compile MS code for use with WINE. */
|
||||
--- gcc/config/rs6000/sysv4.h.~1~
|
||||
+++ gcc/config/rs6000/sysv4.h
|
||||
@@ -917,7 +917,7 @@ SVR4_ASM_SPEC \
|
||||
%{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER "}}}"
|
||||
|
||||
#if defined(HAVE_LD_EH_FRAME_HDR)
|
||||
-# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
|
||||
+# define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} "
|
||||
#endif
|
||||
|
||||
#define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \
|
||||
@ -8,17 +8,18 @@ wants this to be a failure, they can add "-Werror=poison-system-directories".
|
||||
|
||||
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
|
||||
|
||||
diff -ur gcc-4.5.0.orig/gcc/incpath.c gcc-4.5.0/gcc/incpath.c
|
||||
--- gcc-4.5.0.orig/gcc/incpath.c 2010-09-29 14:58:31.358975524 -0500
|
||||
+++ gcc-4.5.0/gcc/incpath.c 2010-09-29 15:08:02.065975516 -0500
|
||||
@@ -363,7 +363,9 @@
|
||||
{
|
||||
if ((!strncmp (p->name, "/usr/include", 12))
|
||||
|| (!strncmp (p->name, "/usr/local/include", 18))
|
||||
- || (!strncmp (p->name, "/usr/X11R6/include", 18)))
|
||||
+ || (!strncmp (p->name, "/usr/X11R6/include", 18))
|
||||
+ || (!strncmp (p->name, "/sw/include", 11))
|
||||
+ || (!strncmp (p->name, "/opt/include", 12)))
|
||||
warning (OPT_Wpoison_system_directories,
|
||||
"include location \"%s\" is unsafe for "
|
||||
"cross-compilation",
|
||||
Index: gcc-4_5-branch/gcc/incpath.c
|
||||
===================================================================
|
||||
--- gcc-4_5-branch.orig/gcc/incpath.c
|
||||
+++ gcc-4_5-branch/gcc/incpath.c
|
||||
@@ -365,7 +365,9 @@ merge_include_chains (const char *sysroo
|
||||
{
|
||||
if ((!strncmp (p->name, "/usr/include", 12))
|
||||
|| (!strncmp (p->name, "/usr/local/include", 18))
|
||||
- || (!strncmp (p->name, "/usr/X11R6/include", 18)))
|
||||
+ || (!strncmp (p->name, "/usr/X11R6/include", 18))
|
||||
+ || (!strncmp (p->name, "/sw/include", 11))
|
||||
+ || (!strncmp (p->name, "/opt/include", 12)))
|
||||
warning (OPT_Wpoison_system_directories,
|
||||
"include location \"%s\" is unsafe for "
|
||||
"cross-compilation",
|
||||
|
||||
@ -6,11 +6,11 @@ This could avoid potential binary crash.
|
||||
|
||||
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
|
||||
|
||||
diff --git a/gcc/config.in b/gcc/config.in
|
||||
index a9e208f..3004321 100644
|
||||
--- a/gcc/config.in
|
||||
+++ b/gcc/config.in
|
||||
@@ -132,6 +132,12 @@
|
||||
Index: gcc-4_5-branch/gcc/config.in
|
||||
===================================================================
|
||||
--- gcc-4_5-branch.orig/gcc/config.in
|
||||
+++ gcc-4_5-branch/gcc/config.in
|
||||
@@ -138,6 +138,12 @@
|
||||
#endif
|
||||
|
||||
|
||||
@ -23,19 +23,19 @@ index a9e208f..3004321 100644
|
||||
/* Define if you want all operations on RTL (the basic data structure of the
|
||||
optimizer and back end) to be checked for dynamic type safety at runtime.
|
||||
This is quite expensive. */
|
||||
diff --git a/gcc/configure b/gcc/configure
|
||||
index 2e022ed..004ec0b 100755
|
||||
--- a/gcc/configure
|
||||
+++ b/gcc/configure
|
||||
@@ -909,6 +909,7 @@ enable_maintainer_mode
|
||||
enable_version_specific_runtime_libs
|
||||
Index: gcc-4_5-branch/gcc/configure
|
||||
===================================================================
|
||||
--- gcc-4_5-branch.orig/gcc/configure
|
||||
+++ gcc-4_5-branch/gcc/configure
|
||||
@@ -915,6 +915,7 @@ enable_version_specific_runtime_libs
|
||||
with_slibdir
|
||||
enable_poison_system_directories
|
||||
enable_plugin
|
||||
+enable_target_optspace
|
||||
'
|
||||
ac_precious_vars='build_alias
|
||||
host_alias
|
||||
@@ -25289,6 +25290,13 @@ $as_echo "#define ENABLE_PLUGIN 1" >>confdefs.h
|
||||
@@ -25658,6 +25659,13 @@ $as_echo "#define ENABLE_PLUGIN 1" >>con
|
||||
|
||||
fi
|
||||
|
||||
@ -49,11 +49,11 @@ index 2e022ed..004ec0b 100755
|
||||
# Configure the subdirectories
|
||||
# AC_CONFIG_SUBDIRS($subdirs)
|
||||
|
||||
diff --git a/gcc/configure.ac b/gcc/configure.ac
|
||||
index ac4ca70..18ec0aa 100644
|
||||
--- a/gcc/configure.ac
|
||||
+++ b/gcc/configure.ac
|
||||
@@ -4434,6 +4434,11 @@ if test x"$enable_plugin" = x"yes"; then
|
||||
Index: gcc-4_5-branch/gcc/configure.ac
|
||||
===================================================================
|
||||
--- gcc-4_5-branch.orig/gcc/configure.ac
|
||||
+++ gcc-4_5-branch/gcc/configure.ac
|
||||
@@ -4659,6 +4659,11 @@ if test x"$enable_plugin" = x"yes"; then
|
||||
AC_DEFINE(ENABLE_PLUGIN, 1, [Define to enable plugin support.])
|
||||
fi
|
||||
|
||||
@ -65,11 +65,11 @@ index ac4ca70..18ec0aa 100644
|
||||
# Configure the subdirectories
|
||||
# AC_CONFIG_SUBDIRS($subdirs)
|
||||
|
||||
diff --git a/gcc/opts.c b/gcc/opts.c
|
||||
index 139cd26..2fdd96a 100644
|
||||
--- a/gcc/opts.c
|
||||
+++ b/gcc/opts.c
|
||||
@@ -945,6 +945,11 @@ decode_options (unsigned int argc, const char **argv)
|
||||
Index: gcc-4_5-branch/gcc/opts.c
|
||||
===================================================================
|
||||
--- gcc-4_5-branch.orig/gcc/opts.c
|
||||
+++ gcc-4_5-branch/gcc/opts.c
|
||||
@@ -953,6 +953,11 @@ decode_options (unsigned int argc, const
|
||||
else
|
||||
set_param_value ("min-crossjump-insns", initial_min_crossjump_insns);
|
||||
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
PR = "${INC_PR}.0"
|
||||
PR = "${INC_PR}.1"
|
||||
|
||||
require recipes-devtools/gcc/gcc-${PV}.inc
|
||||
require recipes-devtools/gcc/gcc-configure-runtime.inc
|
||||
@ -9,3 +9,8 @@ SRC_URI_append = "file://fortran-cross-compile-hack.patch"
|
||||
ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
|
||||
|
||||
EXTRA_OECONF += "--disable-libunwind-exceptions"
|
||||
|
||||
# gcc 4.5 ends up in ICE when using -feliminate-dwarf2-dups in libstdc++
|
||||
# compiling pre compiled headers so we remove this option when compiling
|
||||
# to workaround it
|
||||
CXXFLAGS := "${@oe_filter_out('-feliminate-dwarf2-dups', '${CXXFLAGS}', d)}"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user