From ebd07998d0b3f5e748aba7a9aabbd7df879bc1a8 Mon Sep 17 00:00:00 2001 From: Dario Binacchi Date: Wed, 22 Oct 2025 18:31:02 +0200 Subject: [PATCH] package/libgphoto2: fix build with gcc >= 14 The commit adds a backported upstream patch to fix the following build failure: ptp2/ptp-pack.c:3168:31: note: earlier argument should specify number of elements, later size of each element ptp2/chdk.c: In function 'yuv_live_to_jpeg': ptp2/chdk.c:1203:41: error: passing argument 3 of 'jpeg_mem_dest' from incompatible pointer type [-Wincompatible-pointer-types] 1203 | jpeg_mem_dest (&cinfo, &outbuf, &outlen); | ^~~~~~~ | | | uint64_t * {aka long long unsigned int *} In file included from ptp2/chdk.c:31: /home/autobuild/autobuild/instance-0/output-1/per-package/libgphoto2/host/armeb-buildroot-linux-gnueabi/sysroot/usr/include/jpeglib.h:989:43: note: expected 'long unsigned int *' but argument is of type 'uint64_t *' {aka 'long long unsigned int *'} 989 | unsigned long *outsize); Fixes: - https://autobuild.buildroot.org/results/db742e301a401c9f4bdf3c7e8cfde9f0ba1c4558 Signed-off-by: Dario Binacchi Signed-off-by: Julien Olivain --- ...gth-with-jpeg-jeaders.-fixes-https-g.patch | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 package/libgphoto2/0001-align-outlen-length-with-jpeg-jeaders.-fixes-https-g.patch diff --git a/package/libgphoto2/0001-align-outlen-length-with-jpeg-jeaders.-fixes-https-g.patch b/package/libgphoto2/0001-align-outlen-length-with-jpeg-jeaders.-fixes-https-g.patch new file mode 100644 index 0000000000..910c9b125a --- /dev/null +++ b/package/libgphoto2/0001-align-outlen-length-with-jpeg-jeaders.-fixes-https-g.patch @@ -0,0 +1,39 @@ +From 721f7f8c3ec8058d504607873e4c317aac0c99c5 Mon Sep 17 00:00:00 2001 +From: Marcus Meissner +Date: Mon, 4 Dec 2023 13:26:08 +0100 +Subject: [PATCH] align outlen length with jpeg jeaders. fixes + https://github.com/gphoto/libgphoto2/issues/941 + +Signed-off-by: Dario Binacchi +Upstream: https://github.com/gphoto/libgphoto2/commit/721f7f8c3ec8058d504607873e4c317aac0c99c5 +--- + camlibs/ptp2/chdk.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/camlibs/ptp2/chdk.c b/camlibs/ptp2/chdk.c +index e1d898f37811..e775ea1d4bbb 100644 +--- a/camlibs/ptp2/chdk.c ++++ b/camlibs/ptp2/chdk.c +@@ -1150,7 +1150,7 @@ static void yuv_live_to_jpeg(unsigned char *p_yuv, + struct jpeg_error_mgr jerr; + JSAMPROW row_ptr[1]; + uint8_t *outbuf = NULL, *tmprowbuf = NULL; +- uint64_t outlen = 0; ++ unsigned long outlen = 0; + unsigned int row_inc; + int sshift, dshift, xshift, skip; + +@@ -1161,8 +1161,8 @@ static void yuv_live_to_jpeg(unsigned char *p_yuv, + sshift = 6; + dshift = (width/height > 2) ? 6 : 12; + xshift = 4; +- /* Digic 6 cameras: 8 bit per element UYVY, +- * 4 bytes used to encode 2 pixels, need 6 bytes raw YUV data for jpeg encoding */ ++ /* Digic 6 cameras: 8 bit per element UYVY, ++ * 4 bytes used to encode 2 pixels, need 6 bytes raw YUV data for jpeg encoding */ + } else { + row_inc = buf_width*2; + sshift = 4; +-- +2.43.0 +