mirror of
https://git.yoctoproject.org/poky
synced 2026-04-29 09:32:11 +02:00
elfutils: Fix ptest compile failures on musl
(From OE-Core rev: 0f3bb3541a01701820b52ee31b41d4a24ddd1d43) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -31,6 +31,7 @@ SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
|
||||
file://0001-skip-the-test-when-gcc-not-deployed.patch \
|
||||
file://run-ptest \
|
||||
file://ptest.patch \
|
||||
file://musl.patch \
|
||||
"
|
||||
SRC_URI_append_libc-musl = " file://0008-build-Provide-alternatives-for-glibc-assumptions-hel.patch \
|
||||
file://0001-fix-err-variable-and-function-conflicts.patch \
|
||||
|
||||
@@ -39,10 +39,10 @@ Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
|
||||
tests/dwfl-proc-attach.c | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/tests/dwfl-proc-attach.c b/tests/dwfl-proc-attach.c
|
||||
index 102ba18..ad4208e 100644
|
||||
--- a/tests/dwfl-proc-attach.c
|
||||
+++ b/tests/dwfl-proc-attach.c
|
||||
Index: elfutils-0.176/tests/dwfl-proc-attach.c
|
||||
===================================================================
|
||||
--- elfutils-0.176.orig/tests/dwfl-proc-attach.c
|
||||
+++ elfutils-0.176/tests/dwfl-proc-attach.c
|
||||
@@ -76,10 +76,10 @@ main (int argc __attribute__ ((unused)),
|
||||
char **argv __attribute__ ((unused)))
|
||||
{
|
||||
@@ -57,6 +57,35 @@ index 102ba18..ad4208e 100644
|
||||
error (-1, err, "Couldn't create thread2");
|
||||
|
||||
Dwfl *dwfl = dwfl_begin (&proc_callbacks);
|
||||
--
|
||||
2.7.4
|
||||
|
||||
Index: elfutils-0.176/tests/backtrace.c
|
||||
===================================================================
|
||||
--- elfutils-0.176.orig/tests/backtrace.c
|
||||
+++ elfutils-0.176/tests/backtrace.c
|
||||
@@ -219,23 +219,23 @@ dump (Dwfl *dwfl)
|
||||
{
|
||||
ptrdiff_t ptrdiff = dwfl_getmodules (dwfl, dump_modules, NULL, 0);
|
||||
assert (ptrdiff == 0);
|
||||
- bool err = false;
|
||||
+ bool err1 = false;
|
||||
switch (dwfl_getthreads (dwfl, thread_callback, NULL))
|
||||
{
|
||||
case 0:
|
||||
break;
|
||||
case DWARF_CB_ABORT:
|
||||
- err = true;
|
||||
+ err1 = true;
|
||||
break;
|
||||
case -1:
|
||||
error (0, 0, "dwfl_getthreads: %s", dwfl_errmsg (-1));
|
||||
- err = true;
|
||||
+ err1 = true;
|
||||
break;
|
||||
default:
|
||||
abort ();
|
||||
}
|
||||
callback_verify (0, 0, 0, NULL, dwfl);
|
||||
- if (err)
|
||||
+ if (err1)
|
||||
exit (EXIT_FAILURE);
|
||||
}
|
||||
|
||||
|
||||
29
meta/recipes-devtools/elfutils/files/musl.patch
Normal file
29
meta/recipes-devtools/elfutils/files/musl.patch
Normal file
@@ -0,0 +1,29 @@
|
||||
Fix error on musl:
|
||||
|
||||
| ../../elfutils-0.176/tests/elfstrmerge.c: In function 'main':
|
||||
| ../../elfutils-0.176/tests/elfstrmerge.c:370:60: error: 'ALLPERMS' undeclared (first use in this function); did you mean 'EPERM'?
|
||||
| fdnew = open (fnew, O_WRONLY | O_CREAT, st.st_mode & ALLPERMS);
|
||||
| ^~~~~~~~
|
||||
| EPERM
|
||||
| ../../elfutils-0.176/tests/elfstrmerge.c:370:60: note: each undeclared identifier is reported only once for each function it appears in
|
||||
|
||||
Upstream-Status: Inappropriate [workaround in musl]
|
||||
|
||||
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
||||
|
||||
Index: elfutils-0.176/tests/elfstrmerge.c
|
||||
===================================================================
|
||||
--- elfutils-0.176.orig/tests/elfstrmerge.c
|
||||
+++ elfutils-0.176/tests/elfstrmerge.c
|
||||
@@ -33,6 +33,11 @@
|
||||
#include ELFUTILS_HEADER(dwelf)
|
||||
#include "elf-knowledge.h"
|
||||
|
||||
+/* for musl */
|
||||
+#ifndef ALLPERMS
|
||||
+# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO)/* 07777 */
|
||||
+#endif
|
||||
+
|
||||
/* The original ELF file. */
|
||||
static int fd = -1;
|
||||
static Elf *elf = NULL;
|
||||
Reference in New Issue
Block a user