SHA256
3
0
forked from pool/elfutils

Accepting request 491760 from Base:System

- Add 0001-backends-Add-support-for-EM_PPC64-GNU_ATTRIBUTES.patch
  unconditionally in the spec file. As we can't support binary diff,
  a newly added test-case is removed from the patch.

- Add 0001-backends-Add-support-for-EM_PPC64-GNU_ATTRIBUTES.patch:
  fix .gnu.attributes checking on ppc64{,le}.

OBS-URL: https://build.opensuse.org/request/show/491760
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/elfutils?expand=0&rev=58
This commit is contained in:
Dominique Leuenberger 2017-05-27 11:05:43 +00:00 committed by Git OBS Bridge
commit a0315395a6
3 changed files with 63 additions and 0 deletions

View File

@ -0,0 +1,48 @@
From b1042ce216eaef96099f263fb81141dbdec004fd Mon Sep 17 00:00:00 2001
From: Mark Wielaard <mark@klomp.org>
Date: Wed, 15 Feb 2017 14:30:27 +0100
Subject: [PATCH] backends: Add support for EM_PPC64 GNU_ATTRIBUTES.
ppc64 and ppc64le ELF files can also contain a power specific
.gnu.attributes section. Add support for those and recognize the new
GNU_Power_ABI_FP Single-precision hard float value.
Signed-off-by: Mark Wielaard <mark@klomp.org>
---
backends/ChangeLog | 6 ++++++
backends/ppc64_init.c | 1 +
backends/ppc_attrs.c | 1 +
tests/ChangeLog | 5 +++++
tests/Makefile.am | 4 ++--
tests/run-readelf-A.sh | 16 +++++++++++++++-
tests/testfileppc64attrs.o.bz2 | Bin 0 -> 222 bytes
7 files changed, 30 insertions(+), 3 deletions(-)
create mode 100644 tests/testfileppc64attrs.o.bz2
diff --git a/backends/ppc64_init.c b/backends/ppc64_init.c
index 2ba82327..11d3a77f 100644
--- a/backends/ppc64_init.c
+++ b/backends/ppc64_init.c
@@ -67,6 +67,7 @@ ppc64_init (Elf *elf __attribute__ ((unused)),
HOOK (eh, syscall_abi);
HOOK (eh, core_note);
HOOK (eh, auxv_info);
+ HOOK (eh, check_object_attribute);
HOOK (eh, abi_cfi);
/* gcc/config/ #define DWARF_FRAME_REGISTERS. */
eh->frame_nregs = (114 - 1) + 32;
diff --git a/backends/ppc_attrs.c b/backends/ppc_attrs.c
index 612c5769..48d7129d 100644
--- a/backends/ppc_attrs.c
+++ b/backends/ppc_attrs.c
@@ -51,6 +51,7 @@ ppc_check_object_attribute (Ebl *ebl __attribute__ ((unused)),
"Hard or soft float",
"Hard float",
"Soft float",
+ "Single-precision hard float",
};
if (value < sizeof fp_kinds / sizeof fp_kinds[0])
*value_name = fp_kinds[value];
--
2.12.2

View File

@ -1,3 +1,16 @@
-------------------------------------------------------------------
Thu Apr 27 07:43:44 UTC 2017 - mliska@suse.cz
- Add 0001-backends-Add-support-for-EM_PPC64-GNU_ATTRIBUTES.patch
unconditionally in the spec file. As we can't support binary diff,
a newly added test-case is removed from the patch.
-------------------------------------------------------------------
Tue Apr 25 14:46:06 UTC 2017 - mliska@suse.cz
- Add 0001-backends-Add-support-for-EM_PPC64-GNU_ATTRIBUTES.patch:
fix .gnu.attributes checking on ppc64{,le}.
-------------------------------------------------------------------
Fri Apr 7 19:16:26 UTC 2017 - jengelh@inai.de

View File

@ -31,6 +31,7 @@ Source1: README-BEFORE-ADDING-PATCHES
Source2: baselibs.conf
Source3: %{name}.changes
Patch1: disable-tests-with-ptrace.patch
Patch2: 0001-backends-Add-support-for-EM_PPC64-GNU_ATTRIBUTES.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf
BuildRequires: automake
@ -142,6 +143,7 @@ to develop applications that require these.
# qemu does not support ptrace
%patch1 -p1
%endif
%patch2 -p1
%build
# Change DATE/TIME macros to use last change time of elfutils.changes