elfutils: fix building elfutils-native with GCC7
Backport a fix from upstream for a -Wformat-truncation=2 warning and implement a simple fix for a -Wimplicit-fallthrough warning. (From OE-Core rev: aaf4c4f3d09ac3897205417eb15e19d54e0c0d05) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
34313c4047
commit
5784961762
|
@ -0,0 +1,44 @@
|
|||
From 93c51144c3f664d4e9709da75a1d0fa00ea0fe95 Mon Sep 17 00:00:00 2001
|
||||
From: Mark Wielaard <mark@klomp.org>
|
||||
Date: Sun, 12 Feb 2017 21:51:34 +0100
|
||||
Subject: [PATCH] libasm: Fix one GCC7 -Wformat-truncation=2 warning.
|
||||
|
||||
Make sure that if we have really lots of labels the tempsym doesn't get
|
||||
truncated because it is too small to hold the whole name.
|
||||
|
||||
This doesn't enable -Wformat-truncation=2 or fix other "issues" pointed
|
||||
out by enabling this warning because there are currently some issues
|
||||
with it. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79448
|
||||
|
||||
Signed-off-by: Mark Wielaard <mark@klomp.org>
|
||||
|
||||
Upstream-Status: Backport (https://sourceware.org/git/?p=elfutils.git;a=commit;h=93c51144c3f664d4e9709da75a1d0fa00ea0fe95)
|
||||
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
|
||||
|
||||
---
|
||||
libasm/ChangeLog | 6 +++++-
|
||||
libasm/asm_newsym.c | 6 ++++--
|
||||
2 files changed, 9 insertions(+), 3 deletions(-)
|
||||
|
||||
Index: elfutils-0.168/libasm/asm_newsym.c
|
||||
===================================================================
|
||||
--- elfutils-0.168.orig/libasm/asm_newsym.c
|
||||
+++ elfutils-0.168/libasm/asm_newsym.c
|
||||
@@ -1,5 +1,5 @@
|
||||
/* Define new symbol for current position in given section.
|
||||
- Copyright (C) 2002, 2005, 2016 Red Hat, Inc.
|
||||
+ Copyright (C) 2002, 2005, 2016, 2017 Red Hat, Inc.
|
||||
This file is part of elfutils.
|
||||
Written by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||
|
||||
@@ -44,7 +44,9 @@ AsmSym_t *
|
||||
asm_newsym (AsmScn_t *asmscn, const char *name, GElf_Xword size,
|
||||
int type, int binding)
|
||||
{
|
||||
-#define TEMPSYMLEN 10
|
||||
+/* We don't really expect labels with many digits, but in theory it could
|
||||
+ be 10 digits (plus ".L" and a zero terminator). */
|
||||
+#define TEMPSYMLEN 13
|
||||
char tempsym[TEMPSYMLEN];
|
||||
AsmSym_t *result;
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
GCC7 adds -Wimplicit-fallthrough to warn when a switch case falls through,
|
||||
however this causes warnings (which are promoted to errors) with the elfutils
|
||||
patches from Debian for mips and parisc, which use fallthrough's by design.
|
||||
|
||||
Explicitly mark the intentional fallthrough switch cases with a comment to
|
||||
disable the warnings where the fallthrough behaviour is desired.
|
||||
|
||||
Upstream-Status: Pending [debian]
|
||||
Signed-off-by: Joshua Lock <joshua.g.lock@intel.com>
|
||||
|
||||
Index: elfutils-0.168/backends/parisc_retval.c
|
||||
===================================================================
|
||||
--- elfutils-0.168.orig/backends/parisc_retval.c
|
||||
+++ elfutils-0.168/backends/parisc_retval.c
|
||||
@@ -166,7 +166,7 @@ parisc_return_value_location_ (Dwarf_Die
|
||||
return nloc_intregpair;
|
||||
|
||||
/* Else fall through. */
|
||||
- }
|
||||
+ } // fallthrough
|
||||
|
||||
case DW_TAG_structure_type:
|
||||
case DW_TAG_class_type:
|
||||
Index: elfutils-0.168/backends/mips_retval.c
|
||||
===================================================================
|
||||
--- elfutils-0.168.orig/backends/mips_retval.c
|
||||
+++ elfutils-0.168/backends/mips_retval.c
|
||||
@@ -387,7 +387,7 @@ mips_return_value_location (Dwarf_Die *f
|
||||
else
|
||||
return nloc_intregpair;
|
||||
}
|
||||
- }
|
||||
+ } // fallthrough
|
||||
|
||||
/* Fallthrough to handle large types */
|
||||
|
|
@ -17,6 +17,7 @@ SRC_URI += "\
|
|||
file://0001-remove-the-unneed-checking.patch \
|
||||
file://0001-fix-a-stack-usage-warning.patch \
|
||||
file://aarch64_uio.patch \
|
||||
file://Fix_one_GCC7_warning.patch \
|
||||
file://shadow.patch \
|
||||
"
|
||||
|
||||
|
@ -35,6 +36,8 @@ SRC_URI += "\
|
|||
file://debian/hurd_path.patch \
|
||||
file://debian/ignore_strmerge.diff \
|
||||
"
|
||||
# Fix the patches from Debian with GCC7
|
||||
SRC_URI += "file://fallthrough.patch"
|
||||
SRC_URI_append_libc-musl = " file://0001-build-Provide-alternatives-for-glibc-assumptions-hel.patch "
|
||||
|
||||
# The buildsystem wants to generate 2 .h files from source using a binary it just built,
|
||||
|
|
Loading…
Reference in New Issue