summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch23
-rw-r--r--meta/recipes-devtools/elfutils/elfutils_0.148.bb6
2 files changed, 27 insertions, 2 deletions
diff --git a/meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch b/meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch
new file mode 100644
index 0000000000..e1e4ad0a1e
--- /dev/null
+++ b/meta/recipes-devtools/elfutils/elfutils-0.148/mempcpy.patch
@@ -0,0 +1,23 @@
1uclibc does not export __mempcpy like glibc so we alias it here.
2This patch may make sense for upstream but elfutils uses more
3glibc specific features like obstack_printf which are missing in
4uclibc they need to be fixed along to make it work all the way
5
6Upstream-status: Inappropriate[Elfutils uses more glibc specific features]
7
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9
10Index: elfutils-0.148/libelf/elf_begin.c
11===================================================================
12--- elfutils-0.148.orig/libelf/elf_begin.c
13+++ elfutils-0.148/libelf/elf_begin.c
14@@ -68,6 +68,9 @@
15 #include "libelfP.h"
16 #include "common.h"
17
18+#ifdef __UCLIBC__
19+#define __mempcpy mempcpy
20+#endif
21
22 /* Create descriptor for archive in memory. */
23 static inline Elf *
diff --git a/meta/recipes-devtools/elfutils/elfutils_0.148.bb b/meta/recipes-devtools/elfutils/elfutils_0.148.bb
index a55b98d1e7..df933f61ae 100644
--- a/meta/recipes-devtools/elfutils/elfutils_0.148.bb
+++ b/meta/recipes-devtools/elfutils/elfutils_0.148.bb
@@ -28,8 +28,8 @@ SRC_URI += "\
28 file://elf_additions.diff \ 28 file://elf_additions.diff \
29 file://elfutils-fsize.patch \ 29 file://elfutils-fsize.patch \
30 file://remove-unused.patch \ 30 file://remove-unused.patch \
31 file://mempcpy.patch \
31" 32"
32
33# The buildsystem wants to generate 2 .h files from source using a binary it just built, 33# The buildsystem wants to generate 2 .h files from source using a binary it just built,
34# which can not pass the cross compiling, so let's work around it by adding 2 .h files 34# which can not pass the cross compiling, so let's work around it by adding 2 .h files
35# along with the do_configure_prepend() 35# along with the do_configure_prepend()
@@ -38,7 +38,6 @@ SRC_URI += "\
38 file://i386_dis.h \ 38 file://i386_dis.h \
39 file://x86_64_dis.h \ 39 file://x86_64_dis.h \
40" 40"
41
42inherit autotools 41inherit autotools
43 42
44EXTRA_OECONF = "--program-prefix=eu-" 43EXTRA_OECONF = "--program-prefix=eu-"
@@ -49,6 +48,9 @@ do_configure_prepend() {
49 cp ${WORKDIR}/*dis.h ${S}/libcpu 48 cp ${WORKDIR}/*dis.h ${S}/libcpu
50} 49}
51 50
51# Only append ldflags for target recipe
52TARGET_LDFLAGS_libc-uclibc += "${@['', '-lintl -luargp']['${PN}' == '${BPN}']}"
53
52BBCLASSEXTEND = "native nativesdk" 54BBCLASSEXTEND = "native nativesdk"
53 55
54# Package utilities separately 56# Package utilities separately