summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2016-02-04 08:31:07 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-02-06 23:10:45 +0000
commit576a248b46c0e0346c4d0ac8b44af049d5ee7526 (patch)
treeb5b2f2213f25517690d21cc2abb029617688f283
parentbbdbe00c2a0c1b07f1dfd8a33a6afe8f764571c3 (diff)
downloadpoky-576a248b46c0e0346c4d0ac8b44af049d5ee7526.tar.gz
patchelf: Add patch to handle large files
There were "maximum size exceeded" errors from patchelf when processing qemu-native. There is an issue open for this upstream, add a patch proposed there for this issue. "32" was increased to "64" to handle our qemu-ppc binary. (From OE-Core rev: 79d320544202d719eeb5affd9b687505dcd9b725) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/patchelf/patchelf/maxsize.patch30
-rw-r--r--meta/recipes-devtools/patchelf/patchelf_0.8.bb3
2 files changed, 32 insertions, 1 deletions
diff --git a/meta/recipes-devtools/patchelf/patchelf/maxsize.patch b/meta/recipes-devtools/patchelf/patchelf/maxsize.patch
new file mode 100644
index 0000000000..cc04a89e69
--- /dev/null
+++ b/meta/recipes-devtools/patchelf/patchelf/maxsize.patch
@@ -0,0 +1,30 @@
1From f6886c2c33a1cf8771163919f3d20f6340c0ce38 Mon Sep 17 00:00:00 2001
2From: Eelco Dolstra <eelco.dolstra@logicblox.com>
3Date: Fri, 10 Jul 2015 18:12:37 +0200
4Subject: [PATCH] Quick fix for #47
5
6https://github.com/NixOS/patchelf/issues/47
7
8Avoid issues with holes in binaries such as qemu-pcc from qemu-native.
9
10Upstream-Status: Submitted
11RP
122016/2/3
13
14---
15 src/patchelf.cc | 2 +-
16 1 file changed, 1 insertion(+), 1 deletion(-)
17
18diff --git a/src/patchelf.cc b/src/patchelf.cc
19index 8566ed9..df75593 100644
20--- a/src/patchelf.cc
21+++ b/src/patchelf.cc
22@@ -248,7 +248,7 @@ static void readFile(string fileName, mode_t * fileMode)
23 if (stat(fileName.c_str(), &st) != 0) error("stat");
24 fileSize = st.st_size;
25 *fileMode = st.st_mode;
26- maxSize = fileSize + 8 * 1024 * 1024;
27+ maxSize = fileSize + 64 * 1024 * 1024;
28
29 contents = (unsigned char *) malloc(fileSize + maxSize);
30 if (!contents) abort(); \ No newline at end of file
diff --git a/meta/recipes-devtools/patchelf/patchelf_0.8.bb b/meta/recipes-devtools/patchelf/patchelf_0.8.bb
index c1b87f5539..8484a7e589 100644
--- a/meta/recipes-devtools/patchelf/patchelf_0.8.bb
+++ b/meta/recipes-devtools/patchelf/patchelf_0.8.bb
@@ -1,4 +1,5 @@
1SRC_URI = "http://nixos.org/releases/${BPN}/${BPN}-${PV}/${BPN}-${PV}.tar.bz2" 1SRC_URI = "http://nixos.org/releases/${BPN}/${BPN}-${PV}/${BPN}-${PV}.tar.bz2 \
2 file://maxsize.patch"
2LICENSE = "GPLv3" 3LICENSE = "GPLv3"
3SUMMARY = "Tool to allow editing of RPATH and interpreter fields in ELF binaries" 4SUMMARY = "Tool to allow editing of RPATH and interpreter fields in ELF binaries"
4 5