mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-06-05 02:50:46 +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:
@@ -14,7 +14,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \
|
|||||||
|
|
||||||
SRCREV = "170880"
|
SRCREV = "170880"
|
||||||
PV = "4.5"
|
PV = "4.5"
|
||||||
INC_PR = "r33"
|
INC_PR = "r34"
|
||||||
|
|
||||||
# BINV should be incremented after updating to a revision
|
# 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
|
# 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://gcc-armv4-pass-fix-v4bx-to-ld.patch \
|
||||||
file://sh4-multilib.patch \
|
file://sh4-multilib.patch \
|
||||||
file://arm-lib1funcs.as-fix-mismatch-between-conditions-of-an-IT-block.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-r99297.patch \
|
||||||
file://linaro/gcc-4.5-linaro-r99298.patch \
|
file://linaro/gcc-4.5-linaro-r99298.patch \
|
||||||
file://linaro/gcc-4.5-linaro-r99299.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-scalar-widening-pr45847.patch \
|
||||||
file://gcc-arm-volatile-bitfield-fix.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://optional_libstdc.patch \
|
||||||
file://64bithack.patch \
|
file://64bithack.patch \
|
||||||
file://GPLUSPLUS_INCLUDE_DIR_with_sysroot.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
|
# 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>
|
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
|
Index: gcc-4_5-branch/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
|
--- gcc-4_5-branch.orig/gcc/incpath.c
|
||||||
@@ -363,7 +363,9 @@
|
+++ 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))
|
if ((!strncmp (p->name, "/usr/include", 12))
|
||||||
- || (!strncmp (p->name, "/usr/X11R6/include", 18)))
|
|| (!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, "/usr/X11R6/include", 18))
|
||||||
+ || (!strncmp (p->name, "/opt/include", 12)))
|
+ || (!strncmp (p->name, "/sw/include", 11))
|
||||||
warning (OPT_Wpoison_system_directories,
|
+ || (!strncmp (p->name, "/opt/include", 12)))
|
||||||
"include location \"%s\" is unsafe for "
|
warning (OPT_Wpoison_system_directories,
|
||||||
"cross-compilation",
|
"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>
|
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
|
||||||
|
|
||||||
diff --git a/gcc/config.in b/gcc/config.in
|
Index: gcc-4_5-branch/gcc/config.in
|
||||||
index a9e208f..3004321 100644
|
===================================================================
|
||||||
--- a/gcc/config.in
|
--- gcc-4_5-branch.orig/gcc/config.in
|
||||||
+++ b/gcc/config.in
|
+++ gcc-4_5-branch/gcc/config.in
|
||||||
@@ -132,6 +132,12 @@
|
@@ -138,6 +138,12 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
@@ -23,19 +23,19 @@ index a9e208f..3004321 100644
|
|||||||
/* Define if you want all operations on RTL (the basic data structure of the
|
/* 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.
|
optimizer and back end) to be checked for dynamic type safety at runtime.
|
||||||
This is quite expensive. */
|
This is quite expensive. */
|
||||||
diff --git a/gcc/configure b/gcc/configure
|
Index: gcc-4_5-branch/gcc/configure
|
||||||
index 2e022ed..004ec0b 100755
|
===================================================================
|
||||||
--- a/gcc/configure
|
--- gcc-4_5-branch.orig/gcc/configure
|
||||||
+++ b/gcc/configure
|
+++ gcc-4_5-branch/gcc/configure
|
||||||
@@ -909,6 +909,7 @@ enable_maintainer_mode
|
@@ -915,6 +915,7 @@ enable_version_specific_runtime_libs
|
||||||
enable_version_specific_runtime_libs
|
|
||||||
with_slibdir
|
with_slibdir
|
||||||
|
enable_poison_system_directories
|
||||||
enable_plugin
|
enable_plugin
|
||||||
+enable_target_optspace
|
+enable_target_optspace
|
||||||
'
|
'
|
||||||
ac_precious_vars='build_alias
|
ac_precious_vars='build_alias
|
||||||
host_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
|
fi
|
||||||
|
|
||||||
@@ -49,11 +49,11 @@ index 2e022ed..004ec0b 100755
|
|||||||
# Configure the subdirectories
|
# Configure the subdirectories
|
||||||
# AC_CONFIG_SUBDIRS($subdirs)
|
# AC_CONFIG_SUBDIRS($subdirs)
|
||||||
|
|
||||||
diff --git a/gcc/configure.ac b/gcc/configure.ac
|
Index: gcc-4_5-branch/gcc/configure.ac
|
||||||
index ac4ca70..18ec0aa 100644
|
===================================================================
|
||||||
--- a/gcc/configure.ac
|
--- gcc-4_5-branch.orig/gcc/configure.ac
|
||||||
+++ b/gcc/configure.ac
|
+++ gcc-4_5-branch/gcc/configure.ac
|
||||||
@@ -4434,6 +4434,11 @@ if test x"$enable_plugin" = x"yes"; then
|
@@ -4659,6 +4659,11 @@ if test x"$enable_plugin" = x"yes"; then
|
||||||
AC_DEFINE(ENABLE_PLUGIN, 1, [Define to enable plugin support.])
|
AC_DEFINE(ENABLE_PLUGIN, 1, [Define to enable plugin support.])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -65,11 +65,11 @@ index ac4ca70..18ec0aa 100644
|
|||||||
# Configure the subdirectories
|
# Configure the subdirectories
|
||||||
# AC_CONFIG_SUBDIRS($subdirs)
|
# AC_CONFIG_SUBDIRS($subdirs)
|
||||||
|
|
||||||
diff --git a/gcc/opts.c b/gcc/opts.c
|
Index: gcc-4_5-branch/gcc/opts.c
|
||||||
index 139cd26..2fdd96a 100644
|
===================================================================
|
||||||
--- a/gcc/opts.c
|
--- gcc-4_5-branch.orig/gcc/opts.c
|
||||||
+++ b/gcc/opts.c
|
+++ gcc-4_5-branch/gcc/opts.c
|
||||||
@@ -945,6 +945,11 @@ decode_options (unsigned int argc, const char **argv)
|
@@ -953,6 +953,11 @@ decode_options (unsigned int argc, const
|
||||||
else
|
else
|
||||||
set_param_value ("min-crossjump-insns", initial_min_crossjump_insns);
|
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-${PV}.inc
|
||||||
require recipes-devtools/gcc/gcc-configure-runtime.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}"
|
ARCH_FLAGS_FOR_TARGET += "-isystem${STAGING_INCDIR}"
|
||||||
|
|
||||||
EXTRA_OECONF += "--disable-libunwind-exceptions"
|
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)}"
|
||||||
|
|||||||
Reference in New Issue
Block a user