[OE-core] [daisy][PATCH] binutils: Add fix for recent patch on older gcc
Paul Eggleton
paul.eggleton at linux.intel.com
Wed Sep 17 17:28:17 UTC 2014
On Tuesday 29 July 2014 09:13:05 Darcy Watkins wrote:
> From: Darcy Watkins <dwatkins>
>
> The recent bintuils patch update breaks on older gccs such as CentOS 6.
> Backport a patch to address this.
>
> (From master: 540b7a196a00c4dc1bf8f7c87e68e80ab310756e)
> (From OE-Core rev: 76f65e73081f52cea718ef164f9d1d7a5c65d537)
>
> Signed-off-by: Darcy Watkins <dwatkins at sierrawireless.com>
> ---
> meta/recipes-devtools/binutils/binutils-2.24.inc | 1 +
> .../binutils/binutils-uninitialised-warning.patch | 50
> ++++++++++++++++++++++ 2 files changed, 51 insertions(+)
> create mode 100644
> meta/recipes-devtools/binutils/binutils/binutils-uninitialised-warning.patc
> h
>
> diff --git a/meta/recipes-devtools/binutils/binutils-2.24.inc
> b/meta/recipes-devtools/binutils/binutils-2.24.inc index ef6a4eb..8f3216f
> 100644
> --- a/meta/recipes-devtools/binutils/binutils-2.24.inc
> +++ b/meta/recipes-devtools/binutils/binutils-2.24.inc
> @@ -31,6 +31,7 @@ SRC_URI = "\
> file://fix-pr16428.patch \
> file://replace_macros_with_static_inline.patch \
> file://0001-Fix-MMIX-build-breakage-from-bfd_set_section_vma-cha.patch
> \ + file://binutils-uninitialised-warning.patch \
> "
>
> SRC_URI[md5sum] = "e0f71a7b2ddab0f8612336ac81d9636b"
> diff --git
> a/meta/recipes-devtools/binutils/binutils/binutils-uninitialised-warning.pa
> tch
> b/meta/recipes-devtools/binutils/binutils/binutils-uninitialised-warning.pa
> tch new file mode 100644
> index 0000000..2feb80c
> --- /dev/null
> +++
> b/meta/recipes-devtools/binutils/binutils/binutils-uninitialised-warning.pa
> tch @@ -0,0 +1,50 @@
> +From f9c316c4d75be236bbaa8464ef803ed2d3859d6d Mon Sep 17 00:00:00 2001
> +From: H.J. Lu <hjl.tools at gmail.com>
> +Date: Wed, 15 Jan 2014 07:43:19 -0800
> +Subject: [PATCH 1/1] Silence uninitialized warning on ehdr_start_save
> +
> +Older GCC, like 4.1/4.2, will issue an uninitialized warning on
> +ehdr_start_save. This patch silences by using
> +
> +struct bfd_link_hash_entry ehdr_start_save = ehdr_start_save;
> +
> + * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
> + Silence uninitialized warning on ehdr_start_save with older
> + GCC.
> +
> +Upstream-Status: Backport
> +---
> + ld/ChangeLog | 6 ++++++
> + ld/emultempl/elf32.em | 2 +-
> + 2 files changed, 7 insertions(+), 1 deletions(-)
> +
> +#diff --git a/ld/ChangeLog b/ld/ChangeLog
> +#index eaa6b93..91055de 100644
> +#--- a/ld/ChangeLog
> +#+++ b/ld/ChangeLog
> +#@@ -1,3 +1,9 @@
> +#+2014-01-15 H.J. Lu <hongjiu.lu at intel.com>
> +#+
> +#+ * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation):
> +#+ Silence uninitialized warning on ehdr_start_save with older
> +#+ GCC.
> +#+
> +# 2014-01-15 Alan Modra <amodra at gmail.com>
> +#
> +# * emultempl/elf32.em (gld${EMULATION_NAME}_before_allocation): Define
> +diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
> +index 13f86f0..569c7f7 100644
> +--- a/ld/emultempl/elf32.em
> ++++ b/ld/emultempl/elf32.em
> +@@ -1481,7 +1481,7 @@ gld${EMULATION_NAME}_before_allocation (void)
> + asection *sinterp;
> + bfd *abfd;
> + struct elf_link_hash_entry *ehdr_start = NULL;
> +- struct bfd_link_hash_entry ehdr_start_save;
> ++ struct bfd_link_hash_entry ehdr_start_save = ehdr_start_save;
> +
> + if (is_elf_hash_table (link_info.hash))
> + {
> +--
> +1.7.1
> +
ping - I can confirm the issue on CentOS 6 with daisy and that this patch (or
at least the master patch cherry-picked) fixes it.
Cheers,
Paul
--
Paul Eggleton
Intel Open Source Technology Centre
More information about the Openembedded-core
mailing list