From d9f2fa8e63c35bdd79412902546f46a825d01305 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20M=C3=A9lotte?= Date: Tue, 25 Apr 2023 09:09:22 +0200 Subject: [PATCH] package/mupdf: fix building with zlib-ng MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The current mupdf version fails to build when zlib-ng is used as the zlib implementation. Add a patch to fix it. This fixes the following build failure raised since the bump to version 1.21.0 of the mupdf package in commit 3c2033cd2ace077e7dfaf58a2589b2a93a5fd7b0: source/fitz/encode-basic.c: In function 'deflate_write': source/fitz/encode-basic.c:343:27: error: 'UINT_MAX' undeclared (first use in this function) 343 | newbufsize = n >= UINT_MAX ? UINT_MAX : deflateBound(&state->z, n); | ^~~~~~~~ source/fitz/encode-basic.c:26:1: note: 'UINT_MAX' is defined in header ''; did you forget to '#include '? Fixes: http://autobuild.buildroot.net/results/87128e9967cff20078c65ab847877aa44cc409d9 Signed-off-by: Raphaël Mélotte Signed-off-by: Yann E. MORIN (cherry picked from commit b20eb56440fd2a7b8f578bf9eda89160c8053434) Signed-off-by: Peter Korsgaard --- ...issing-limits.h-include-for-UINT_MAX.patch | 70 +++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 package/mupdf/0001-Add-missing-limits.h-include-for-UINT_MAX.patch diff --git a/package/mupdf/0001-Add-missing-limits.h-include-for-UINT_MAX.patch b/package/mupdf/0001-Add-missing-limits.h-include-for-UINT_MAX.patch new file mode 100644 index 0000000000..95f2f86666 --- /dev/null +++ b/package/mupdf/0001-Add-missing-limits.h-include-for-UINT_MAX.patch @@ -0,0 +1,70 @@ +From ebce9f1b129ebc8f2b17afa02a4ffcb9453c11d9 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Rapha=C3=ABl=20M=C3=A9lotte?= +Date: Mon, 24 Apr 2023 17:27:35 +0200 +Subject: [PATCH] Add missing limits.h include for UINT_MAX +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +encode-basic.c uses 'UINT_MAX', which is available in the 'limits.h' +header. + +In some configurations that build with zlib from [1], by chance +limits.h gets indirectly included when including 'z-imp.h' (the +includes are: 'z-imp.h' -> 'zlib.h' -> 'zconf.h' -> 'limits.h'), so +the build succeeds. + +When using other zlib implementations however (for example from [2]), +limits.h is not necessarily included indirectly, which leads to the +build failing in the following way: + +source/fitz/encode-basic.c: In function 'deflate_write': +source/fitz/encode-basic.c:343:27: error: 'UINT_MAX' undeclared (first use in this function) + 343 | newbufsize = n >= UINT_MAX ? UINT_MAX : deflateBound(&state->z, n); + | ^~~~~~~~ +source/fitz/encode-basic.c:26:1: note: 'UINT_MAX' is defined in header ''; did you forget to '#include '? + +Add the missing include, so that the build succeeds no matter if zlib +indirectly includes 'limit.h' or not. + +Similarly, also add it in output-ps.c where it's also missing. + +[1]: https://zlib.net/ +[2]: https://github.com/zlib-ng/zlib-ng + +Signed-off-by: Raphaël Mélotte +Upstream: https://bugs.ghostscript.com/show_bug.cgi?id=706667 +--- + source/fitz/encode-basic.c | 2 ++ + source/fitz/output-ps.c | 2 ++ + 2 files changed, 4 insertions(+) + +diff --git a/source/fitz/encode-basic.c b/source/fitz/encode-basic.c +index 03a4ff76b..84f0c35e6 100644 +--- a/source/fitz/encode-basic.c ++++ b/source/fitz/encode-basic.c +@@ -24,6 +24,8 @@ + + #include "z-imp.h" + ++#include ++ + struct ahx + { + fz_output *chain; +diff --git a/source/fitz/output-ps.c b/source/fitz/output-ps.c +index ef22c3cd6..3dc8ea17d 100644 +--- a/source/fitz/output-ps.c ++++ b/source/fitz/output-ps.c +@@ -24,6 +24,8 @@ + + #include "z-imp.h" + ++#include ++ + typedef struct ps_band_writer_s + { + fz_band_writer super; +-- +2.39.1 +