aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2018-12-06 19:12:33 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-01-28 16:56:28 +0000
commit86a4ecad734087cff7d5c1d6109f6256b8e2b75b (patch)
tree3081ec83c71a8048a073f79195ddc40afbf33a97
parent1f3577fb6bacb09d2826c879a38d3d7d329cc39a (diff)
downloadopenembedded-core-contrib-86a4ecad734087cff7d5c1d6109f6256b8e2b75b.tar.gz
binutils: Fix build with clang
(From OE-Core rev: 208dadb8f1864aca88c69766f3bfb37a2ef4953c) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r--meta/recipes-devtools/binutils/binutils-2.31.inc1
-rw-r--r--meta/recipes-devtools/binutils/binutils/clang-bfd-fix.patch32
2 files changed, 33 insertions, 0 deletions
diff --git a/meta/recipes-devtools/binutils/binutils-2.31.inc b/meta/recipes-devtools/binutils/binutils-2.31.inc
index 0c9d4cef21..c3c15fb416 100644
--- a/meta/recipes-devtools/binutils/binutils-2.31.inc
+++ b/meta/recipes-devtools/binutils/binutils-2.31.inc
@@ -41,6 +41,7 @@ SRC_URI = "\
file://0019-Improved-robustness.-Return-FALSE-in-case-of-NULL-po.patch \
file://0020-Make-sure-global-symbol-is-not-an-indirect-or-warnin.patch \
file://0021-PLT-information-was-still-being-generated-when-symbo.patch \
+ file://clang-bfd-fix.patch \
file://CVE-2018-17358.patch \
file://CVE-2018-17360.patch \
file://CVE-2018-18309.patch \
diff --git a/meta/recipes-devtools/binutils/binutils/clang-bfd-fix.patch b/meta/recipes-devtools/binutils/binutils/clang-bfd-fix.patch
new file mode 100644
index 0000000000..caf78488df
--- /dev/null
+++ b/meta/recipes-devtools/binutils/binutils/clang-bfd-fix.patch
@@ -0,0 +1,32 @@
+Fix compiler error seen with clang, The return value of this
+function is not checked anywhere so in a way its useless but
+still technically correct to return a value here
+
+Fixes
+
+../../bfd/reloc.c:1638:7: error: non-void function '_bfd_clear_contents' should return a value [-Wreturn-type]
+ return;
+ ^
+1 error generated.
+
+It has been fixed in master along with a larger cleanup and fix for relocations
+
+https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commit;h=1dc9e2d63e37839ff1768346b2e3f52e338baba5
+
+Upstream-Status: Backport [Fixes differently]
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Index: git/bfd/reloc.c
+===================================================================
+--- git.orig/bfd/reloc.c
++++ git/bfd/reloc.c
+@@ -1635,7 +1635,7 @@ _bfd_clear_contents (reloc_howto_type *h
+ default:
+ abort ();
+ case 0:
+- return;
++ return 0;
+ case 1:
+ x = bfd_get_8 (input_bfd, location);
+ break;