[prev in list] [next in list] [prev in thread] [next in thread]
List: buildroot
Subject: [Buildroot] [git commit] package/libheif: fix libjpeg build
From: Peter Korsgaard <peter () korsgaard ! com>
Date: 2024-02-29 16:07:16
Message-ID: 20240229160814.91DB887DE0 () busybox ! osuosl ! org
[Download RAW message or body]
commit: https://git.buildroot.net/buildroot/commit/?id=bd5d1f5b6ae8d9765520728e4995897940c86b05
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
libheif raises the following build failure with libjpeg since bump to
version 1.17.5 in commit 5714126edac88e3adc043a482b262b319a907dd3 and
https://github.com/strukturag/libheif/commit/ebd13a20b8b7f1964939642b08b662ef7e483f39
/home/buildroot/autobuild/instance-3/output-1/build/libheif-1.17.5/libheif/plugins/encoder_jpeg.cc: \
In function 'heif_error jpeg_encode_image(void*, const heif_image*, \
heif_image_input_class)':
/home/buildroot/autobuild/instance-3/output-1/build/libheif-1.17.5/libheif/plugins/encoder_jpeg.cc:366:37: \
error: invalid conversion from 'long unsigned int*' to 'size_t*' {aka 'unsigned \
int*'} [-fpermissive] 366 | jpeg_mem_dest(&cinfo, &outbuffer, &outlength);
| ^~~~~~~~~~
| |
| long unsigned int*
Fixes:
- http://autobuild.buildroot.org/results/8ca909564c8dabe28ad08c96ebbc04b25592e727
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
---
...plugins-encoder_jpeg.cc-fix-libjpeg-build.patch | 47 ++++++++++++++++++++++
1 file changed, 47 insertions(+)
diff --git a/package/libheif/0001-libheif-plugins-encoder_jpeg.cc-fix-libjpeg-build.patch \
b/package/libheif/0001-libheif-plugins-encoder_jpeg.cc-fix-libjpeg-build.patch new \
file mode 100644 index 0000000000..5245327fe7
--- /dev/null
+++ b/package/libheif/0001-libheif-plugins-encoder_jpeg.cc-fix-libjpeg-build.patch
@@ -0,0 +1,47 @@
+From 33eb948240365434c845b618854403e82a229012 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Wed, 31 Jan 2024 21:04:37 +0100
+Subject: [PATCH] libheif/plugins/encoder_jpeg.cc: fix libjpeg build
+
+Fix the following libjpeg build failure raised since version 1.17.0 and
+https://github.com/strukturag/libheif/commit/ebd13a20b8b7f1964939642b08b662ef7e483f39
+because third argument of jpeg_mem_dest is defined as size_t* on libjpeg
+instead of unsigned long* on jpeg-turbo:
+
+/home/buildroot/autobuild/instance-3/output-1/build/libheif-1.17.5/libheif/plugins/encoder_jpeg.cc: \
In function 'heif_error jpeg_encode_image(void*, const heif_image*, \
heif_image_input_class)': \
+/home/buildroot/autobuild/instance-3/output-1/build/libheif-1.17.5/libheif/plugins/encoder_jpeg.cc:366:37: \
error: invalid conversion from 'long unsigned int*' to 'size_t*' {aka 'unsigned \
int*'} [-fpermissive] + 366 | jpeg_mem_dest(&cinfo, &outbuffer, &outlength);
+ | ^~~~~~~~~~
+ | |
+ | long unsigned int*
+
+Fix #1008 and #1086
+
+Fixes:
+ - http://autobuild.buildroot.org/results/8ca909564c8dabe28ad08c96ebbc04b25592e727
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Upstream: https://github.com/strukturag/libheif/pull/1120
+---
+ libheif/plugins/encoder_jpeg.cc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/libheif/plugins/encoder_jpeg.cc b/libheif/plugins/encoder_jpeg.cc
+index d6c7854..21a5541 100644
+--- a/libheif/plugins/encoder_jpeg.cc
++++ b/libheif/plugins/encoder_jpeg.cc
+@@ -360,7 +360,11 @@ struct heif_error jpeg_encode_image(void* encoder_raw, const \
struct heif_image* + }
+
+ uint8_t* outbuffer = nullptr;
++#ifdef LIBJPEG_TURBO_VERSION
+ unsigned long outlength = 0;
++#else
++ size_t outlength = 0;
++#endif
+
+ jpeg_create_compress(&cinfo);
+ jpeg_mem_dest(&cinfo, &outbuffer, &outlength);
+--
+2.43.0
+
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic