commit 3a3ca53
hovercats
·
2024-04-13 06:34:03 +0000 UTC
parent c2ef43d
mupdf: import
10 files changed,
+267,
-0
+36,
-0
1@@ -0,0 +1,36 @@
2+#!/bin/sh -e
3+
4+export DESTDIR="$1"
5+export CFLAGS="$CFLAGS \
6+ -fPIC \
7+ -DNDEBUG \
8+ -DFZ_ENABLE_JS=0 \
9+ -DFZ_ENABLE_JPX=0 \
10+ -DFZ_ENABLE_HTML=0 \
11+ -DFZ_ENABLE_EPUB=0 \
12+ -DNO_CJK \
13+ -DFZ_ENABLE_ICC=0 \
14+ -DNO_ICC \
15+ -DNOTO_SMALL \
16+ -DSHARE_JPEG"
17+
18+for p in *.patch; do
19+ patch -p1 < "$p"
20+done
21+
22+make \
23+ prefix="/usr" \
24+ build=release \
25+ HAVE_X11=yes \
26+ HAVE_CURL=no \
27+ HAVE_WAYLAND=no \
28+ HAVE_GLUT=no \
29+ USE_SYSTEM_OPENJPEG=no \
30+ USE_SYSTEM_LIBS=yes \
31+ shared=no \
32+ install-apps install-docs
33+
34+mv -f "$1/usr/bin/mupdf-x11" "$1/usr/bin/mupdf"
35+
36+# remove docs, but keep manpages
37+rm -rf "$1/usr/share/doc"
+5,
-0
1@@ -0,0 +1,5 @@
2+6f7ba80dc9452c9749fdbaec59a77311ce50efcd91723520fdbbb0932b54d65c53
3+3e7d1f9c1dceeb756324aa97b30d95093e559baefbd983a9e30bbe0d98e1be80ed
4+e4bfb981cc739669a53877449abdf6fa7fa2ae6769b0f1588f46ae3882edd4e067
5+43826dec496c9e32a50a9fab32c3be127317196517c0b489805e4d3f458f87c843
6+ef5d7912fc071b26aadbfb32c65ab08e7e2f2083c0fd2ab376a98761d12d0f3f86
+11,
-0
1@@ -0,0 +1,11 @@
2+freetype-harfbuzz
3+jbig2dec make
4+libX11
5+libXau
6+libXext
7+libjpeg-turbo
8+libpng
9+libressl
10+libxcb
11+pkgconf make
12+zlib
+26,
-0
1@@ -0,0 +1,26 @@
2+/var/db/kiss/installed/mupdf/version
3+/var/db/kiss/installed/mupdf/sources
4+/var/db/kiss/installed/mupdf/patches/pkcs7-fix.patch
5+/var/db/kiss/installed/mupdf/patches/objcopy.patch
6+/var/db/kiss/installed/mupdf/patches/no-openjpeg.patch
7+/var/db/kiss/installed/mupdf/patches/no-gumbo.patch
8+/var/db/kiss/installed/mupdf/patches/
9+/var/db/kiss/installed/mupdf/manifest
10+/var/db/kiss/installed/mupdf/depends
11+/var/db/kiss/installed/mupdf/checksums
12+/var/db/kiss/installed/mupdf/build
13+/var/db/kiss/installed/mupdf/
14+/var/db/kiss/installed/
15+/var/db/kiss/
16+/var/db/
17+/var/
18+/usr/share/man/man1/mutool.1
19+/usr/share/man/man1/mupdf.1
20+/usr/share/man/man1/
21+/usr/share/man/
22+/usr/share/
23+/usr/bin/mutool
24+/usr/bin/muraster
25+/usr/bin/mupdf
26+/usr/bin/
27+/usr/
+71,
-0
1@@ -0,0 +1,71 @@
2+diff --git a/Makefile b/Makefile
3+index 0f28384..11c3e04 100644
4+--- a/Makefile
5++++ b/Makefile
6+@@ -155,7 +155,6 @@ MUPDF_SRC += $(sort $(wildcard source/fitz/*.cpp))
7+ MUPDF_SRC += $(sort $(wildcard source/pdf/*.c))
8+ MUPDF_SRC += $(sort $(wildcard source/xps/*.c))
9+ MUPDF_SRC += $(sort $(wildcard source/svg/*.c))
10+-MUPDF_SRC += $(sort $(wildcard source/html/*.c))
11+ MUPDF_SRC += $(sort $(wildcard source/reflow/*.c))
12+ MUPDF_SRC += $(sort $(wildcard source/cbz/*.c))
13+
14+diff --git a/Makelists b/Makelists
15+index e37b3ed..dbcf577 100644
16+--- a/Makelists
17++++ b/Makelists
18+@@ -31,24 +31,6 @@ FREETYPE_SRC += thirdparty/freetype/src/smooth/smooth.c
19+ FREETYPE_SRC += thirdparty/freetype/src/truetype/truetype.c
20+ FREETYPE_SRC += thirdparty/freetype/src/type1/type1.c
21+
22+-# --- GUMBO ---
23+-
24+-GUMBO_CFLAGS += -Ithirdparty/gumbo-parser/src
25+-
26+-GUMBO_BUILD_CFLAGS += -std=c99
27+-
28+-GUMBO_SRC += thirdparty/gumbo-parser/src/attribute.c
29+-GUMBO_SRC += thirdparty/gumbo-parser/src/char_ref.c
30+-GUMBO_SRC += thirdparty/gumbo-parser/src/error.c
31+-GUMBO_SRC += thirdparty/gumbo-parser/src/parser.c
32+-GUMBO_SRC += thirdparty/gumbo-parser/src/string_buffer.c
33+-GUMBO_SRC += thirdparty/gumbo-parser/src/string_piece.c
34+-GUMBO_SRC += thirdparty/gumbo-parser/src/tag.c
35+-GUMBO_SRC += thirdparty/gumbo-parser/src/tokenizer.c
36+-GUMBO_SRC += thirdparty/gumbo-parser/src/utf8.c
37+-GUMBO_SRC += thirdparty/gumbo-parser/src/util.c
38+-GUMBO_SRC += thirdparty/gumbo-parser/src/vector.c
39+-
40+ # --- HARFBUZZ ---
41+
42+ HARFBUZZ_CFLAGS += -Ithirdparty/harfbuzz/src
43+diff --git a/source/fitz/xml.c b/source/fitz/xml.c
44+index ef9a233..0278228 100644
45+--- a/source/fitz/xml.c
46++++ b/source/fitz/xml.c
47+@@ -26,7 +26,9 @@
48+ #include <stdlib.h>
49+ #include <stdio.h>
50+
51++#if FZ_ENABLE_HTML
52+ #include <gumbo.h>
53++#endif
54+
55+ #define FZ_XML_MAX_DEPTH 4096
56+
57+@@ -1127,6 +1129,7 @@ fz_parse_xml(fz_context *ctx, fz_buffer *buf, int preserve_white)
58+ return xml;
59+ }
60+
61++#if FZ_ENABLE_HTML
62+ /*
63+ Parse the contents of buffer into a tree of XML nodes, using the HTML5 syntax.
64+
65+@@ -1293,6 +1296,7 @@ fz_parse_xml_from_html5(fz_context *ctx, fz_buffer *buf)
66+
67+ return xml;
68+ }
69++#endif
70+
71+ fz_xml *fz_xml_find_dfs(fz_xml *item, const char *tag, const char *att, const char *match)
72+ {
+59,
-0
1@@ -0,0 +1,59 @@
2+diff --git a/Makelists b/Makelists
3+index ac54f6f..af430d6 100644
4+--- a/Makelists
5++++ b/Makelists
6+@@ -272,37 +272,6 @@ JBIG2DEC_SRC += thirdparty/jbig2dec/jbig2_segment.c
7+ JBIG2DEC_SRC += thirdparty/jbig2dec/jbig2_symbol_dict.c
8+ JBIG2DEC_SRC += thirdparty/jbig2dec/jbig2_text.c
9+
10+-# --- OPENJPEG ---
11+-
12+-OPENJPEG_CFLAGS += -Ithirdparty/openjpeg/src/lib/openjp2
13+-OPENJPEG_CFLAGS += -DOPJ_STATIC
14+-OPENJPEG_CFLAGS += -DOPJ_HAVE_INTTYPES_H
15+-OPENJPEG_CFLAGS += -DOPJ_HAVE_STDINT_H
16+-
17+-OPENJPEG_BUILD_CFLAGS += -Ithirdparty/openjpeg/src/lib/openjp2
18+-OPENJPEG_BUILD_CFLAGS += -DMUTEX_pthread=0
19+-
20+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/bio.c
21+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/cio.c
22+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/dwt.c
23+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/event.c
24+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/function_list.c
25+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/ht_dec.c
26+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/image.c
27+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/invert.c
28+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/j2k.c
29+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/jp2.c
30+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/mct.c
31+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/mqc.c
32+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/openjpeg.c
33+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/pi.c
34+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/sparse_array.c
35+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/t1.c
36+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/t2.c
37+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/tcd.c
38+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/tgt.c
39+-OPENJPEG_SRC += thirdparty/openjpeg/src/lib/openjp2/thread.c
40+-
41+ # --- FREEGLUT ---
42+
43+ GLUT_CFLAGS += -Ithirdparty/freeglut/include
44+diff --git a/source/fitz/encode-jpx.c b/source/fitz/encode-jpx.c
45+index 40cca5a..e38604f 100644
46+--- a/source/fitz/encode-jpx.c
47++++ b/source/fitz/encode-jpx.c
48+@@ -22,10 +22,10 @@
49+
50+ #include "mupdf/fitz.h"
51+
52+-#include <openjpeg.h>
53+-
54+ #if FZ_ENABLE_JPX
55+
56++#include <openjpeg.h>
57++
58+ static opj_image_t *
59+ image_from_pixmap(fz_context *ctx, fz_pixmap *pix)
60+ {
+13,
-0
1@@ -0,0 +1,13 @@
2+diff --git a/Makefile b/Makefile
3+index 53cf06f..948a0be 100644
4+--- a/Makefile
5++++ b/Makefile
6+@@ -76,7 +76,7 @@ endif
7+ LINK_CMD = $(QUIET_LINK) $(MKTGTDIR) ; $(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
8+ TAGS_CMD = $(QUIET_TAGS) ctags
9+ WINDRES_CMD = $(QUIET_WINDRES) $(MKTGTDIR) ; $(WINDRES) $< $@
10+-OBJCOPY_CMD = $(QUIET_OBJCOPY) $(MKTGTDIR) ; $(LD) -r -b binary -z noexecstack -o $@ $<
11++OBJCOPY_CMD = $(QUIET_OBJCOPY) $(MKTGTDIR) ; objcopy -I binary -O default $< $@
12+ GENDEF_CMD = $(QUIET_GENDEF) gendef - $< > $@
13+ DLLTOOL_CMD = $(QUIET_DLLTOOL) dlltool -d $< -D $(notdir $(^:%.def=%.dll)) -l $@
14+
+40,
-0
1@@ -0,0 +1,40 @@
2+Upstream: https://github.com/ArtifexSoftware/mupdf/pull/6
3+From 6f05eb97ffda80d43c3f2776cfc5a4348ddb7012 Mon Sep 17 00:00:00 2001
4+From: Pavel Vinogradov <public@sourcemage.org>
5+Date: Sun, 7 Oct 2018 14:52:56 -0400
6+Subject: [PATCH] Fixed handling of safebags in pkcs7-helper library
7+
8+---
9+ source/helpers/pkcs7/pkcs7-openssl.c | 8 ++++++--
10+ 1 file changed, 6 insertions(+), 2 deletions(-)
11+
12+diff --git a/source/helpers/pkcs7/pkcs7-openssl.c b/source/helpers/pkcs7/pkcs7-openssl.c
13+index 58dbf65f1..7683b9796 100644
14+--- a/source/helpers/pkcs7/pkcs7-openssl.c
15++++ b/source/helpers/pkcs7/pkcs7-openssl.c
16+@@ -517,11 +517,12 @@ static void add_from_bag(X509 **pX509, EVP_PKEY **pPkey, PKCS12_SAFEBAG *bag, co
17+ {
18+ EVP_PKEY *pkey = NULL;
19+ X509 *x509 = NULL;
20++ STACK_OF(PKCS12_SAFEBAG) *bags;
21+ switch (M_PKCS12_bag_type(bag))
22+ {
23+ case NID_keyBag:
24+ {
25+- const PKCS8_PRIV_KEY_INFO *p8 = PKCS12_SAFEBAG_get0_p8inf(bag);
26++ const PKCS8_PRIV_KEY_INFO *p8 = PKCS12_decrypt_skey(bag, pw, (int)strlen(pw));
27+ pkey = EVP_PKCS82PKEY(p8);
28+ }
29+ break;
30+@@ -543,7 +544,10 @@ static void add_from_bag(X509 **pX509, EVP_PKEY **pPkey, PKCS12_SAFEBAG *bag, co
31+ break;
32+
33+ case NID_safeContentsBag:
34+- add_from_bags(pX509, pPkey, PKCS12_SAFEBAG_get0_safes(bag), pw);
35++ bags = sk_PKCS12_SAFEBAG_new_null();
36++ sk_PKCS12_SAFEBAG_push(bags, bag);
37++ add_from_bags(pX509, pPkey, bags, pw);
38++ sk_PKCS12_SAFEBAG_free(bags);
39+ break;
40+ }
41+
+5,
-0
1@@ -0,0 +1,5 @@
2+https://mupdf.com/downloads/archive/mupdf-1.24.0-source.tar.gz
3+patches/no-gumbo.patch
4+patches/no-openjpeg.patch
5+patches/objcopy.patch
6+patches/pkcs7-fix.patch
+1,
-0
1@@ -0,0 +1 @@
2+1.24.0 1