When building for Arm, the following error is seen:
| ../../libunwind-1.6.2/src/arm/Gtrace.c:529:7: error: call to undeclared
library function 'printf' with type 'int (const char *, ...)'; ISO C99 and
later do not support implicit function declarations
[-Wimplicit-function-declaration]
| printf("XXX1\n");
Since every other reference to printf either has BSD or !linux then, I
think it's safe to assume this is not valid and a BSD ifdef can be
placed around this code.
Signed-off-by: Jon Mason <[email protected]>
---
.../0007-Remove-undefined-printf.patch | 32 +++++++++++++++++++
.../libunwind/libunwind_1.6.2.bb | 1 +
2 files changed, 33 insertions(+)
create mode 100644
meta/recipes-support/libunwind/libunwind/0007-Remove-undefined-printf.patch
diff --git
a/meta/recipes-support/libunwind/libunwind/0007-Remove-undefined-printf.patch
b/meta/recipes-support/libunwind/libunwind/0007-Remove-undefined-printf.patch
new file mode 100644
index 000000000000..1826d8d72405
--- /dev/null
+++
b/meta/recipes-support/libunwind/libunwind/0007-Remove-undefined-printf.patch
@@ -0,0 +1,32 @@
+From ed4777e3200aadacfaf2b48e1cd6dec9da37c737 Mon Sep 17 00:00:00 2001
+From: Jon Mason <[email protected]>
+Date: Tue, 21 Mar 2023 15:14:10 +0000
+Subject: [PATCH] Remove undefined printf
+
+Seeing the following error when building with clang for Linux on Arm
+| ../../libunwind-1.6.2/src/arm/Gtrace.c:529:7: error: call to undeclared
library function 'printf' with type 'int (const char *, ...)'; ISO C99 and
later do not support implicit function declarations
[-Wimplicit-function-declaration]
+| printf("XXX1\n");
+
+Based on other printf's in libunwind, this appears to not be used on
+Linux (and appears to only be used for BSD). So, add an ifdef around
+this chunk to only be defined for BSD
+
+Upstream-Status: Pending
+---
+ src/arm/Gtrace.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/arm/Gtrace.c b/src/arm/Gtrace.c
+index 51fc281..fb73d87 100644
+--- a/src/arm/Gtrace.c
++++ b/src/arm/Gtrace.c
+@@ -526,7 +526,9 @@ tdep_trace (unw_cursor_t *cursor, void **buffer, int *size)
+ break;
+
+ case UNW_ARM_FRAME_SYSCALL:
++#if defined(__FreeBSD__)
+ printf("XXX1\n");
++#endif
+ break;
+
+ default:
diff --git a/meta/recipes-support/libunwind/libunwind_1.6.2.bb
b/meta/recipes-support/libunwind/libunwind_1.6.2.bb
index 716be9a452f4..74d7874f50bb 100644
--- a/meta/recipes-support/libunwind/libunwind_1.6.2.bb
+++ b/meta/recipes-support/libunwind/libunwind_1.6.2.bb
@@ -5,6 +5,7 @@ SRC_URI =
"http://download.savannah.nongnu.org/releases/libunwind/libunwind-${PV
file://0004-Fix-build-on-mips-musl.patch \
file://0005-ppc32-Consider-ucontext-mismatches-between-glibc-and.patch \
file://0006-Fix-for-X32.patch \
+ file://0007-Remove-undefined-printf.patch \
"
SRC_URI:append:libc-musl = " file://musl-header-conflict.patch"
--
2.30.2
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#178897):
https://lists.openembedded.org/g/openembedded-core/message/178897
Mute This Topic: https://lists.openembedded.org/mt/97762342/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-