summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Weber <xmw@gentoo.org>2017-05-14 00:45:46 +0200
committerMichael Weber <xmw@gentoo.org>2017-05-14 00:46:11 +0200
commit8e97b8c1e02d7b8313779001d2dcd8b10f691f18 (patch)
tree05db70000224fbc9895396e6475222973057def3 /app-text/mupdf
parentapp-text/llpp: Remove old version (bug 614044). (diff)
downloadgentoo-8e97b8c1e02d7b8313779001d2dcd8b10f691f18.tar.gz
gentoo-8e97b8c1e02d7b8313779001d2dcd8b10f691f18.tar.bz2
gentoo-8e97b8c1e02d7b8313779001d2dcd8b10f691f18.zip
app-text/mupdf: Remove security affected versions (bug 614044).
Package-Manager: Portage-2.3.5, Repoman-2.3.2
Diffstat (limited to 'app-text/mupdf')
-rw-r--r--app-text/mupdf/Manifest1
-rw-r--r--app-text/mupdf/files/mupdf-1.10a-Makerules-openssl-curl.patch32
-rw-r--r--app-text/mupdf/files/mupdf-1.10a-heap-overflow.patch40
-rw-r--r--app-text/mupdf/files/mupdf-1.10a-null-pointer-2.patch88
-rw-r--r--app-text/mupdf/files/mupdf-1.10a-null-pointer.patch21
-rw-r--r--app-text/mupdf/files/mupdf-1.8-system-glfw.patch11
-rw-r--r--app-text/mupdf/files/mupdf-1.9a-CFLAGS.patch11
-rw-r--r--app-text/mupdf/mupdf-1.10a-r2.ebuild148
-rw-r--r--app-text/mupdf/mupdf-1.11.ebuild151
9 files changed, 0 insertions, 503 deletions
diff --git a/app-text/mupdf/Manifest b/app-text/mupdf/Manifest
index a18278adef12..9b45f8ce9853 100644
--- a/app-text/mupdf/Manifest
+++ b/app-text/mupdf/Manifest
@@ -1,2 +1 @@
-DIST mupdf-1.10a-source.tar.gz 42264707 SHA256 aacc1f36b9180f562022ef1ab3439b009369d944364f3cff8a2a898834e3a836 SHA512 8c735963364985e74ceb38242afae555a3d2ee7c69abe3fe5c485e8613a83d996a58f231cb689a156019d431fa67d565503247d010b0a404054850483aed9fec WHIRLPOOL f3dc7fbddd2ee140226f17b444f184138dbff5d626033a295a7b335119fae5eb49eae680fb392068935610cdbed21267016af8afaa080fffba4f320b82209fbb
DIST mupdf-1.11-source.tar.gz 40156070 SHA256 209474a80c56a035ce3f4958a63373a96fad75c927c7b1acdc553fc85855f00a SHA512 501670f540e298a8126806ebbd9db8b29866f663b7bbf26c9ade1933e42f0c00ad410b9d93f3ddbfb3e45c38722869095de28d832fe3fb3703c55cc9a01dbf63 WHIRLPOOL 91ee829b7b39b31c21cda324925e70a52139515c9cd2ef6fb3d903493c96af22d2c2bf19017dfc6d58842c8ebd7896faef34b73d94822977f10300c916fe1352
diff --git a/app-text/mupdf/files/mupdf-1.10a-Makerules-openssl-curl.patch b/app-text/mupdf/files/mupdf-1.10a-Makerules-openssl-curl.patch
deleted file mode 100644
index 3fdc20426c1a..000000000000
--- a/app-text/mupdf/files/mupdf-1.10a-Makerules-openssl-curl.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- mupdf-1.10a/Makerules
-+++ mupdf-1.10a/Makerules
-@@ -107,12 +107,17 @@
-
- HAVE_PTHREADS ?= yes
-
-+WANT_OPENSSL ?= yes
-+ifeq "$(WANT_OPENSSL)" "yes"
- ifeq "$(shell pkg-config --exists libcrypto && echo yes)" "yes"
- HAVE_LIBCRYPTO = yes
- SYS_LIBCRYPTO_CFLAGS = -DHAVE_LIBCRYPTO $(shell pkg-config --cflags libcrypto)
- SYS_LIBCRYPTO_LIBS = $(shell pkg-config --libs libcrypto)
- endif
-+endif
-
-+WANT_CURL ?= yes
-+ifeq "$(WANT_CURL)" "yes"
- ifeq "$(shell pkg-config --exists libcurl && echo yes)" "yes"
- HAVE_CURL = yes
- SYS_CURL_CFLAGS = $(shell pkg-config --cflags libcurl)
-@@ -122,8 +127,10 @@
- SYS_CURL_CFLAGS += $(shell pkg-config --cflags openssl)
- SYS_CURL_DEPS += $(shell pkg-config --libs openssl)
- endif
--endif
- SYS_CURL_DEPS += -lpthread -lrt
-+endif
-+endif
-+
-
- ifeq "$(shell pkg-config --exists x11 xext && echo yes)" "yes"
- HAVE_X11 = yes
diff --git a/app-text/mupdf/files/mupdf-1.10a-heap-overflow.patch b/app-text/mupdf/files/mupdf-1.10a-heap-overflow.patch
deleted file mode 100644
index 8b350ea8590e..000000000000
--- a/app-text/mupdf/files/mupdf-1.10a-heap-overflow.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-X-Git-Url: http://git.ghostscript.com/?p=mupdf.git;a=blobdiff_plain;f=source%2Ffitz%2Fpixmap.c;h=f1291dc29d49ead44c10785fd014a0d995e45a91;hp=a8317127da7af6d39eb86fe3ca02cb4106a9b262;hb=2c4e5867ee699b1081527bc6c6ea0e99a35a5c27;hpb=90fa6203ad032fe161d85a3e580941ce3d1216f0
-
-diff --git a/source/fitz/pixmap.c b/source/fitz/pixmap.c
-index a831712..f1291dc 100644
---- a/source/fitz/pixmap.c
-+++ b/source/fitz/pixmap.c
-@@ -1104,6 +1104,7 @@ fz_subsample_pixmap_ARM(unsigned char *ptr, int w, int h, int f, int factor,
- "@STACK:r1,<9>,factor,n,fwd,back,back2,fwd2,divX,back4,fwd4,fwd3,divY,back5,divXY\n"
- "ldr r4, [r13,#4*22] @ r4 = divXY \n"
- "ldr r5, [r13,#4*11] @ for (nn = n; nn > 0; n--) { \n"
-+ "ldr r8, [r13,#4*17] @ r8 = back4 \n"
- "18: @ \n"
- "mov r14,#0 @ r14= v = 0 \n"
- "sub r5, r5, r1, LSL #8 @ for (xx = x; xx > 0; x--) { \n"
-@@ -1120,7 +1121,7 @@ fz_subsample_pixmap_ARM(unsigned char *ptr, int w, int h, int f, int factor,
- "mul r14,r4, r14 @ r14= v *= divX \n"
- "mov r14,r14,LSR #16 @ r14= v >>= 16 \n"
- "strb r14,[r9], #1 @ *d++ = r14 \n"
-- "sub r0, r0, r8 @ s -= back2 \n"
-+ "sub r0, r0, r8 @ s -= back4 \n"
- "subs r5, r5, #1 @ n-- \n"
- "bgt 18b @ } \n"
- "21: @ \n"
-@@ -1249,6 +1250,7 @@ fz_subsample_pixmap(fz_context *ctx, fz_pixmap *tile, int factor)
- x += f;
- if (x > 0)
- {
-+ int back4 = x * n - 1;
- div = x * y;
- for (nn = n; nn > 0; nn--)
- {
-@@ -1263,7 +1265,7 @@ fz_subsample_pixmap(fz_context *ctx, fz_pixmap *tile, int factor)
- s -= back5;
- }
- *d++ = v / div;
-- s -= back2;
-+ s -= back4;
- }
- }
- }
diff --git a/app-text/mupdf/files/mupdf-1.10a-null-pointer-2.patch b/app-text/mupdf/files/mupdf-1.10a-null-pointer-2.patch
deleted file mode 100644
index a4fefb79ca66..000000000000
--- a/app-text/mupdf/files/mupdf-1.10a-null-pointer-2.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From: Robin Watts <robin.watts@artifex.com>
-Date: Thu, 9 Feb 2017 15:49:15 +0000 (+0000)
-Subject: Bug 697500: Fix NULL ptr access.
-X-Git-Url: http://git.ghostscript.com/?p=mupdf.git;a=commitdiff_plain;h=1912de5f08e90af1d9d0a9791f58ba3afdb9d465;hp=2c4e5867ee699b1081527bc6c6ea0e99a35a5c27
-
-Bug 697500: Fix NULL ptr access.
-
-Cope better with errors during rendering - avoid letting the
-gstate stack get out of sync.
-
-This avoids us ever getting into the situation of popping
-a clip when we should be popping a mask or a group. This was
-causing an unexpected case in the painting.
----
-
-diff --git a/source/pdf/pdf-op-run.c b/source/pdf/pdf-op-run.c
-index a3ea895..f1eac8d 100644
---- a/source/pdf/pdf-op-run.c
-+++ b/source/pdf/pdf-op-run.c
-@@ -1213,6 +1213,7 @@ pdf_run_xobject(fz_context *ctx, pdf_run_processor *proc, pdf_xobject *xobj, pdf
- pdf_run_processor *pr = (pdf_run_processor *)proc;
- pdf_gstate *gstate = NULL;
- int oldtop = 0;
-+ int oldbot = -1;
- fz_matrix local_transform = *transform;
- softmask_save softmask = { NULL };
- int gparent_save;
-@@ -1232,16 +1233,17 @@ pdf_run_xobject(fz_context *ctx, pdf_run_processor *proc, pdf_xobject *xobj, pdf
- fz_var(cleanup_state);
- fz_var(gstate);
- fz_var(oldtop);
-+ fz_var(oldbot);
-
- gparent_save = pr->gparent;
- pr->gparent = pr->gtop;
-+ oldtop = pr->gtop;
-
- fz_try(ctx)
- {
- pdf_gsave(ctx, pr);
-
- gstate = pr->gstate + pr->gtop;
-- oldtop = pr->gtop;
-
- pdf_xobject_bbox(ctx, xobj, &xobj_bbox);
- pdf_xobject_matrix(ctx, xobj, &xobj_matrix);
-@@ -1302,12 +1304,25 @@ pdf_run_xobject(fz_context *ctx, pdf_run_processor *proc, pdf_xobject *xobj, pdf
-
- doc = pdf_get_bound_document(ctx, xobj->obj);
-
-+ oldbot = pr->gbot;
-+ pr->gbot = pr->gtop;
-+
- pdf_process_contents(ctx, (pdf_processor*)pr, doc, resources, xobj->obj, NULL);
- }
- fz_always(ctx)
- {
-+ /* Undo any gstate mismatches due to the pdf_process_contents call */
-+ if (oldbot != -1)
-+ {
-+ while (pr->gtop > pr->gbot)
-+ {
-+ pdf_grestore(ctx, pr);
-+ }
-+ pr->gbot = oldbot;
-+ }
-+
- if (cleanup_state >= 3)
-- pdf_grestore(ctx, pr); /* Remove the clippath */
-+ pdf_grestore(ctx, pr); /* Remove the state we pushed for the clippath */
-
- /* wrap up transparency stacks */
- if (transparency)
-@@ -1341,13 +1356,8 @@ pdf_run_xobject(fz_context *ctx, pdf_run_processor *proc, pdf_xobject *xobj, pdf
- pr->gstate[pr->gparent].ctm = gparent_save_ctm;
- pr->gparent = gparent_save;
-
-- if (gstate)
-- {
-- while (oldtop < pr->gtop)
-- pdf_grestore(ctx, pr);
--
-+ while (oldtop < pr->gtop)
- pdf_grestore(ctx, pr);
-- }
-
- pdf_unmark_obj(ctx, xobj->obj);
- }
diff --git a/app-text/mupdf/files/mupdf-1.10a-null-pointer.patch b/app-text/mupdf/files/mupdf-1.10a-null-pointer.patch
deleted file mode 100644
index 9a459b28011e..000000000000
--- a/app-text/mupdf/files/mupdf-1.10a-null-pointer.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From: Sebastian Rasmussen <sebras@gmail.com>
-Date: Sat, 4 Feb 2017 05:21:20 +0000 (+0100)
-Subject: Bug 697514: Write SVG output to stdout if no output specified.
-X-Git-Url: http://git.ghostscript.com/?p=mupdf.git;a=commitdiff_plain;h=40ac85bfb676bb4373bda4b18f9fd90268c9f1e9
-
-Bug 697514: Write SVG output to stdout if no output specified.
----
-
-diff --git a/source/tools/mudraw.c b/source/tools/mudraw.c
-index 95b3440..720e7ff 100644
---- a/source/tools/mudraw.c
-+++ b/source/tools/mudraw.c
-@@ -578,7 +578,7 @@ static void dodrawpage(fz_context *ctx, fz_page *page, fz_display_list *list, in
- char buf[512];
- fz_output *out;
-
-- if (!strcmp(output, "-"))
-+ if (!output || !strcmp(output, "-"))
- out = fz_stdout(ctx);
- else
- {
diff --git a/app-text/mupdf/files/mupdf-1.8-system-glfw.patch b/app-text/mupdf/files/mupdf-1.8-system-glfw.patch
deleted file mode 100644
index bda8bd87e571..000000000000
--- a/app-text/mupdf/files/mupdf-1.8-system-glfw.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- mupdf-1.8/Makerules
-+++ mupdf-1.8/Makerules
-@@ -119,6 +119,8 @@
- SYS_JBIG2DEC_LIBS = -ljbig2dec
- SYS_JPEG_LIBS = -ljpeg
- SYS_ZLIB_LIBS = -lz
-+SYS_GLFW_CFLAGS = $(shell pkg-config --cflags glfw3 gl)
-+SYS_GLFW_LIBS = $(shell pkg-config --libs glfw3 gl)
-
- endif
-
diff --git a/app-text/mupdf/files/mupdf-1.9a-CFLAGS.patch b/app-text/mupdf/files/mupdf-1.9a-CFLAGS.patch
deleted file mode 100644
index a6caa30c95ce..000000000000
--- a/app-text/mupdf/files/mupdf-1.9a-CFLAGS.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- mupdf-1.9a/Makerules
-+++ mupdf-1.9a/Makerules
-@@ -10,7 +10,7 @@
- CFLAGS += -Wall
-
- ifeq "$(build)" "debug"
--CFLAGS += -pipe -g -DDEBUG
-+CFLAGS += -DDEBUG
- LDFLAGS += -g
- else ifeq "$(build)" "release"
- CFLAGS += -pipe -O2 -DNDEBUG -fomit-frame-pointer
diff --git a/app-text/mupdf/mupdf-1.10a-r2.ebuild b/app-text/mupdf/mupdf-1.10a-r2.ebuild
deleted file mode 100644
index 099dfb0605b4..000000000000
--- a/app-text/mupdf/mupdf-1.10a-r2.ebuild
+++ /dev/null
@@ -1,148 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="a lightweight PDF viewer and toolkit written in portable C"
-HOMEPAGE="http://mupdf.com/"
-SRC_URI="http://mupdf.com/downloads/${P}-source.tar.gz"
-
-LICENSE="AGPL-3"
-SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ppc ppc64 ~sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
-IUSE="X +curl javascript libressl opengl +openssl static static-libs vanilla"
-
-LIB_DEPEND="
- !libressl? ( dev-libs/openssl:0[static-libs?] )
- libressl? ( dev-libs/libressl[static-libs?] )
- javascript? ( >=dev-lang/mujs-0_p20160504 )
- media-libs/freetype:2[static-libs?]
- media-libs/harfbuzz[static-libs?]
- media-libs/jbig2dec[static-libs?]
- media-libs/libpng:0[static-libs?]
- >=media-libs/openjpeg-2.1:2[static-libs?]
- net-misc/curl[static-libs?]
- virtual/jpeg[static-libs?]
- X? ( x11-libs/libX11[static-libs?]
- x11-libs/libXext[static-libs?] )
- opengl? ( >=media-libs/glfw-3 )"
-RDEPEND="${LIB_DEPEND}"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- static-libs? ( ${LIB_DEPEND} )
- static? ( ${LIB_DEPEND//?}
- app-arch/bzip2[static-libs]
- x11-libs/libXau[static-libs]
- x11-libs/libXdmcp[static-libs]
- x11-libs/libxcb[static-libs] )"
-
-REQUIRED_USE="opengl? ( X !static !static-libs )"
-
-S=${WORKDIR}/${P}-source
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.9a-CFLAGS.patch
- "${FILESDIR}"/${PN}-1.9a-debug-build.patch
- "${FILESDIR}"/${PN}-1.10a-add-desktop-pc-xpm-files.patch
- "${FILESDIR}"/${PN}-1.10a-Makerules-openssl-curl.patch
- "${FILESDIR}"/${PN}-1.8-system-glfw.patch
- "${FILESDIR}"/${PN}-1.10a-heap-overflow.patch
- "${FILESDIR}"/${PN}-1.10a-null-pointer.patch
- "${FILESDIR}"/${PN}-1.10a-null-pointer-2.patch
-)
-
-src_prepare() {
- default
- use hppa && append-cflags -ffunction-sections
-
- rm -rf thirdparty || die
-
- if has_version ">=media-libs/openjpeg-2.1:2" ; then
- # Remove a switch, which prevents using shared libraries for openjpeg2.
- # See http://www.linuxfromscratch.org/blfs/view/cvs/pst/mupdf.html
- sed '/OPJ_STATIC$/d' -i source/fitz/load-jpx.c
- fi
-
- use javascript || \
- sed -e '/* #define FZ_ENABLE_JS/ a\#define FZ_ENABLE_JS 0' \
- -i include/mupdf/fitz/config.h
-
- sed -e "/^libdir=/s:/lib:/$(get_libdir):" \
- -e "/^prefix=/s:=.*:=${EROOT}/usr:" \
- -i platform/debian/${PN}.pc || die
-
- use vanilla || eapply \
- "${FILESDIR}"/${PN}-1.3-zoom-2.patch
-
- sed -e "1iOS = Linux" \
- -e "1iCC = $(tc-getCC)" \
- -e "1iLD = $(tc-getCC)" \
- -e "1iAR = $(tc-getAR)" \
- -e "1iverbose = yes" \
- -e "1ibuild = debug" \
- -e "1iprefix = ${ED}usr" \
- -e "1ilibdir = ${ED}usr/$(get_libdir)" \
- -e "1idocdir = ${ED}usr/share/doc/${PF}" \
- -e "1iHAVE_X11 = $(usex X)" \
- -e "1iWANT_OPENSSL = $(usex openssl)" \
- -e "1iWANT_CURL = $(usex curl)" \
- -e "1iHAVE_MUJS = $(usex javascript)" \
- -e "1iMUJS_LIBS = $(usex javascript -lmujs '')" \
- -e "1iMUJS_CFLAGS =" \
- -e "1iHAVE_GLFW = $(usex opengl yes no)" \
- -i Makerules || die
-
- if use static-libs || use static ; then
- cp -a "${S}" "${S}"-static || die
- #add missing Libs.private for xcb and freetype
- sed -e 's:\(pkg-config --libs\):\1 --static:' \
- -e '/^SYS_X11_LIBS = /s:\(.*\):\1 -lpthread:' \
- -e '/^SYS_FREETYPE_LIBS = /s:\(.*\):\1 -lbz2:' \
- -i "${S}"-static/Makerules || die
- fi
-
- my_soname=libmupdf.so.${PV}
- my_soname_js_none=libmupdf-js-none.so.${PV}
- sed -e "\$a\$(MUPDF_LIB): \$(MUPDF_JS_NONE_LIB)" \
- -e "\$a\\\t\$(QUIET_LINK) \$(CC) \$(LDFLAGS) --shared -Wl,-soname -Wl,${my_soname} -Wl,--no-undefined -o \$@ \$^ \$(MUPDF_JS_NONE_LIB) \$(LIBS)" \
- -e "/^MUPDF_LIB =/s:=.*:= \$(OUT)/${my_soname}:" \
- -e "\$a\$(MUPDF_JS_NONE_LIB):" \
- -e "\$a\\\t\$(QUIET_LINK) \$(CC) \$(LDFLAGS) --shared -Wl,-soname -Wl,${my_soname_js_none} -Wl,--no-undefined -o \$@ \$^ \$(LIBS)" \
- -e "/install/s: COPYING : :" \
- -i Makefile || die
-}
-
-src_compile() {
- emake XCFLAGS="-fpic"
- use static-libs && \
- emake -C "${S}"-static build/debug/lib${PN}{,-js-none}.a
- use static && \
- emake -C "${S}"-static XLIBS="-static"
-}
-
-src_install() {
- if use X ; then
- domenu platform/debian/${PN}.desktop
- doicon platform/debian/${PN}.xpm
- else
- rm docs/man/${PN}.1
- fi
-
- emake install
- dosym ${my_soname} /usr/$(get_libdir)/lib${PN}.so
-
- use static-libs && \
- dolib.a "${S}"-static/build/debug/lib${PN}{,-js-none}.a
- if use static ; then
- dobin "${S}"-static/build/debug/mu{tool,draw}
- use X && dobin "${S}"-static/build/debug/${PN}-x11
- fi
- use X && dosym ${PN}-x11 /usr/bin/${PN}
-
- insinto /usr/$(get_libdir)/pkgconfig
- doins platform/debian/${PN}.pc
-
- dodoc README docs/*.{txt,c}
-}
diff --git a/app-text/mupdf/mupdf-1.11.ebuild b/app-text/mupdf/mupdf-1.11.ebuild
deleted file mode 100644
index dd6471176700..000000000000
--- a/app-text/mupdf/mupdf-1.11.ebuild
+++ /dev/null
@@ -1,151 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit flag-o-matic toolchain-funcs
-
-DESCRIPTION="a lightweight PDF viewer and toolkit written in portable C"
-HOMEPAGE="http://mupdf.com/"
-SRC_URI="http://mupdf.com/downloads/${P}-source.tar.gz"
-
-LICENSE="AGPL-3"
-SLOT="0/${PV}"
-KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
-IUSE="X +curl javascript libressl opengl +openssl static static-libs vanilla"
-
-LIB_DEPEND="
- !libressl? ( dev-libs/openssl:0[static-libs?] )
- libressl? ( dev-libs/libressl[static-libs?] )
- javascript? ( >=dev-lang/mujs-0_p20160504 )
- media-libs/freetype:2[static-libs?]
- media-libs/harfbuzz[static-libs?]
- media-libs/jbig2dec[static-libs?]
- media-libs/libpng:0[static-libs?]
- >=media-libs/openjpeg-2.1:2[static-libs?]
- net-misc/curl[static-libs?]
- virtual/jpeg[static-libs?]
- X? ( x11-libs/libX11[static-libs?]
- x11-libs/libXext[static-libs?] )
- opengl? ( >=media-libs/glfw-3.2 )"
-RDEPEND="${LIB_DEPEND}"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- static-libs? ( ${LIB_DEPEND} )
- static? ( ${LIB_DEPEND//?}
- app-arch/bzip2[static-libs]
- x11-libs/libXau[static-libs]
- x11-libs/libXdmcp[static-libs]
- x11-libs/libxcb[static-libs] )"
-
-REQUIRED_USE="opengl? ( X !static !static-libs )"
-
-S=${WORKDIR}/${P}-source
-
-PATCHES=(
- "${FILESDIR}"/${PN}-1.11-CFLAGS.patch
- "${FILESDIR}"/${PN}-1.9a-debug-build.patch
- "${FILESDIR}"/${PN}-1.10a-add-desktop-pc-xpm-files.patch
- "${FILESDIR}"/${PN}-1.11-openssl-curl-x11.patch
- "${FILESDIR}"/${PN}-1.11-system-glfw.patch
-)
-
-src_prepare() {
- default
- use hppa && append-cflags -ffunction-sections
-
- rm -rf thirdparty || die
-
- if has_version ">=media-libs/openjpeg-2.1:2" ; then
- # Remove a switch, which prevents using shared libraries for openjpeg2.
- # See http://www.linuxfromscratch.org/blfs/view/cvs/pst/mupdf.html
- sed '/OPJ_STATIC$/d' -i source/fitz/load-jpx.c
- fi
-
- use javascript || \
- sed -e '/* #define FZ_ENABLE_JS/ a\#define FZ_ENABLE_JS 0' \
- -i include/mupdf/fitz/config.h
-
- sed -e "/^libdir=/s:/lib:/$(get_libdir):" \
- -e "/^prefix=/s:=.*:=${EROOT}/usr:" \
- -i platform/debian/${PN}.pc || die
-
- use vanilla || eapply \
- "${FILESDIR}"/${PN}-1.3-zoom-2.patch
-
- sed -e "1iOS = Linux" \
- -e "1iCC = $(tc-getCC)" \
- -e "1iLD = $(tc-getCC)" \
- -e "1iAR = $(tc-getAR)" \
- -e "1iverbose = yes" \
- -e "1ibuild = debug" \
- -e "1iprefix = ${ED}usr" \
- -e "1ilibdir = ${ED}usr/$(get_libdir)" \
- -e "1idocdir = ${ED}usr/share/doc/${PF}" \
- -e "1iWANT_X11 = $(usex X)" \
- -e "1iWANT_OPENSSL = $(usex openssl)" \
- -e "1iWANT_CURL = $(usex curl)" \
- -e "1iHAVE_MUJS = $(usex javascript)" \
- -e "1iMUJS_LIBS = $(usex javascript -lmujs '')" \
- -e "1iMUJS_CFLAGS =" \
- -e "1iHAVE_GLFW = $(usex opengl yes no)" \
- -i Makerules || die
-
- if use static-libs || use static ; then
- cp -a "${S}" "${S}"-static || die
- #add missing Libs.private for xcb and freetype
- sed -e 's:\(pkg-config --libs\):\1 --static:' \
- -e '/^SYS_X11_LIBS = /s:\(.*\):\1 -lpthread:' \
- -e '/^SYS_FREETYPE_LIBS = /s:\(.*\):\1 -lbz2:' \
- -i "${S}"-static/Makerules || die
- fi
-
- my_soname=libmupdf.so.${PV}
- my_soname_js_none=libmupdf-js-none.so.${PV}
- sed -e "\$a\$(MUPDF_LIB): \$(MUPDF_JS_NONE_LIB)" \
- -e "\$a\\\t\$(QUIET_LINK) \$(CC) \$(LDFLAGS) --shared -Wl,-soname -Wl,${my_soname} -Wl,--no-undefined -o \$@ \$^ \$(MUPDF_JS_NONE_LIB) \$(LIBS)" \
- -e "/^MUPDF_LIB =/s:=.*:= \$(OUT)/${my_soname}:" \
- -e "\$a\$(MUPDF_JS_NONE_LIB):" \
- -e "\$a\\\t\$(QUIET_LINK) \$(CC) \$(LDFLAGS) --shared -Wl,-soname -Wl,${my_soname_js_none} -Wl,--no-undefined -o \$@ \$^ \$(LIBS)" \
- -e "/install/s: COPYING : :" \
- -i Makefile || die
-}
-
-src_compile() {
- emake XCFLAGS="-fpic"
- use static-libs && \
- emake -C "${S}"-static build/debug/lib${PN}{,-js-none}.a
- use static && \
- emake -C "${S}"-static XLIBS="-static"
-}
-
-src_install() {
- if use X ; then
- domenu platform/debian/${PN}.desktop
- doicon platform/debian/${PN}.xpm
- else
- rm docs/man/${PN}.1
- fi
-
- emake install
- dosym ${my_soname} /usr/$(get_libdir)/lib${PN}.so
-
- use static-libs && \
- dolib.a "${S}"-static/build/debug/lib${PN}{,-js-none}.a
- if use static ; then
- dobin "${S}"-static/build/debug/mu{tool,draw}
- use X && dobin "${S}"-static/build/debug/${PN}-x11
- fi
- if use X ; then
- if use opengl ; then
- dosym ${PN}-gl /usr/bin/${PN}
- einfo "mupdf symlink points to mupdf-gl (bug 616654)"
- else
- dosym ${PN}-x11 /usr/bin/${PN}
- fi
- fi
- insinto /usr/$(get_libdir)/pkgconfig
- doins platform/debian/${PN}.pc
-
- dodoc README docs/*.{txt,c}
-}