Seeing compile error on 32bit platforms.  Apply patch for the printf
formats to accommodate the longer numbers.

Signed-off-by: Ryan Eatmon <[email protected]>
---
v2: Fix for 64bit builds.

 .../yavta/0001-yavta-Fix-32-bit-compile.patch | 64 +++++++++++++++++++
 .../v4l2apps/yavta_%.bbappend                 |  7 ++
 2 files changed, 71 insertions(+)
 create mode 100644 
meta-arago-extras/recipes-multimedia/v4l2apps/yavta/0001-yavta-Fix-32-bit-compile.patch
 create mode 100644 
meta-arago-extras/recipes-multimedia/v4l2apps/yavta_%.bbappend

diff --git 
a/meta-arago-extras/recipes-multimedia/v4l2apps/yavta/0001-yavta-Fix-32-bit-compile.patch
 
b/meta-arago-extras/recipes-multimedia/v4l2apps/yavta/0001-yavta-Fix-32-bit-compile.patch
new file mode 100644
index 00000000..9fe8f894
--- /dev/null
+++ 
b/meta-arago-extras/recipes-multimedia/v4l2apps/yavta/0001-yavta-Fix-32-bit-compile.patch
@@ -0,0 +1,64 @@
+From 1ae1c9e0420bba033da232df0d17acc0a9874b3d Mon Sep 17 00:00:00 2001
+From: Ryan Eatmon <[email protected]>
+Date: Fri, 13 Sep 2024 09:05:29 -0500
+Subject: [master][PATCH] yavta: Fix 32-bit compile
+
+The format for printing various time elements are not working for 64bit
+times on a 32bit compile.
+
+../git/yavta.c:2195:51: error: format '%ld' expects argument of type 'long 
int', but argument 8 has type '__time64_t' {aka 'long long int'} 
[-Werror=format=]
+ 2195 |                 printf("%u (%u) [%c] %s %u %u B %ld.%06ld %ld.%06ld 
%.3f fps ts %s/%s\n", i, buf.index,
+      |                                                 ~~^
+      |                                                   |
+      |                                                   long int
+      |                                                 %lld
+......
+ 2199 |                         buf.timestamp.tv_sec, buf.timestamp.tv_usec,
+      |                         ~~~~~~~~~~~~~~~~~~~~
+      |                                      |
+      |                                      __time64_t {aka long long int}
+
+Change the formats to be lld/llu to accommodate the change for 32bit
+compiles.
+
+Upstream-Status: Pending
+
+Signed-off-by: Ryan Eatmon <[email protected]>
+---
+ yavta.c | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/yavta.c b/yavta.c
+index 3bf82b3..0655311 100644
+--- a/yavta.c
++++ b/yavta.c
+@@ -2192,12 +2192,12 @@ static int video_do_capture(struct device *dev, 
unsigned int nframes,
+ 
+               clock_gettime(CLOCK_MONOTONIC, &ts);
+               get_ts_flags(buf.flags, &ts_type, &ts_source);
+-              printf("%u (%u) [%c] %s %u %u B %ld.%06ld %ld.%06ld %.3f fps ts 
%s/%s\n", i, buf.index,
++              printf("%u (%u) [%c] %s %u %u B %lld.%06lld %lld.%06ld %.3f fps 
ts %s/%s\n", i, buf.index,
+                       (buf.flags & V4L2_BUF_FLAG_ERROR) ? 'E' : '-',
+                       v4l2_field_name(buf.field),
+                       buf.sequence, video_buffer_bytes_used(dev, &buf),
+-                      buf.timestamp.tv_sec, buf.timestamp.tv_usec,
+-                      ts.tv_sec, ts.tv_nsec/1000, fps,
++                      (long long int) buf.timestamp.tv_sec, (long long int) 
buf.timestamp.tv_usec,
++                      (long long int) ts.tv_sec, ts.tv_nsec/1000, fps,
+                       ts_type, ts_source);
+ 
+               last = buf.timestamp;
+@@ -2254,8 +2254,8 @@ static int video_do_capture(struct device *dev, unsigned 
int nframes,
+       bps = size/(ts.tv_nsec/1000.0+1000000.0*ts.tv_sec)*1000000.0;
+       fps = i/(ts.tv_nsec/1000.0+1000000.0*ts.tv_sec)*1000000.0;
+ 
+-      printf("Captured %u frames in %lu.%06lu seconds (%f fps, %f B/s).\n",
+-              i, ts.tv_sec, ts.tv_nsec/1000, fps, bps);
++      printf("Captured %u frames in %llu.%06lu seconds (%f fps, %f B/s).\n",
++              i, (long long unsigned int) ts.tv_sec, ts.tv_nsec/1000, fps, 
bps);
+ 
+ done:
+       video_free_buffers(dev);
+-- 
+2.17.1
+
diff --git a/meta-arago-extras/recipes-multimedia/v4l2apps/yavta_%.bbappend 
b/meta-arago-extras/recipes-multimedia/v4l2apps/yavta_%.bbappend
new file mode 100644
index 00000000..c3c22a55
--- /dev/null
+++ b/meta-arago-extras/recipes-multimedia/v4l2apps/yavta_%.bbappend
@@ -0,0 +1,7 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
+
+SRC_URI:append = " \
+    file://0001-yavta-Fix-32-bit-compile.patch \
+"
+
+PR:append = ".arago0"
-- 
2.17.1



-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#15559): 
https://lists.yoctoproject.org/g/meta-arago/message/15559
Mute This Topic: https://lists.yoctoproject.org/mt/108438777/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-arago/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to