app-text/mupdf: Add 1.9a-r99 with musl-libc support. - parlay - yet another gentoo overlay
HTML git clone https://git.parazyd.org/parlay
DIR Log
DIR Files
DIR Refs
DIR README
---
DIR commit aa041f31c9bda11a1adbacd6ea4d9eaf0baf4ceb
DIR parent 8bc5c1abd4b8848ef23aab40e03b7eb563cb2761
HTML Author: parazyd <parazyd@dyne.org>
Date: Mon, 10 Oct 2016 14:21:49 +0200
app-text/mupdf: Add 1.9a-r99 with musl-libc support.
Diffstat:
A app-text/mupdf/Manifest | 1 +
A app-text/mupdf/files/mupdf-1.3-CFL… | 11 +++++++++++
A app-text/mupdf/files/mupdf-1.3-pkg… | 20 ++++++++++++++++++++
A app-text/mupdf/files/mupdf-1.3-zoo… | 10 ++++++++++
A app-text/mupdf/files/mupdf-1.5-Mak… | 27 +++++++++++++++++++++++++++
A app-text/mupdf/files/mupdf-1.5-for… | 22 ++++++++++++++++++++++
A app-text/mupdf/files/mupdf-1.5-old… | 533 ++++++++++++++++++++++++++++++
A app-text/mupdf/files/mupdf-1.5-ope… | 28 ++++++++++++++++++++++++++++
A app-text/mupdf/files/mupdf-1.7a-sy… | 11 +++++++++++
A app-text/mupdf/files/mupdf-1.8-sys… | 11 +++++++++++
A app-text/mupdf/files/mupdf-1.9a-CF… | 11 +++++++++++
A app-text/mupdf/files/mupdf-1.9a-CV… | 34 +++++++++++++++++++++++++++++++
A app-text/mupdf/files/mupdf-1.9a-CV… | 24 ++++++++++++++++++++++++
A app-text/mupdf/files/mupdf-1.9a-de… | 10 ++++++++++
A app-text/mupdf/files/mupdf-1.9a-no… | 113 +++++++++++++++++++++++++++++++
A app-text/mupdf/mupdf-1.9a-r99.ebui… | 147 +++++++++++++++++++++++++++++++
16 files changed, 1013 insertions(+), 0 deletions(-)
---
DIR diff --git a/app-text/mupdf/Manifest b/app-text/mupdf/Manifest
@@ -0,0 +1 @@
+DIST mupdf-1.9a.tar.gz 13282205 SHA256 2a7d6d73cd1f6de8f70792dff9936b84c54c127feecd485675e0d0c17debc98d SHA512 aa268484371597f2082bff61052b3f80e30b8d41018bf0477b8975e4520849090b75e6c4be6be15d6af9cea6d9315deb28f82c6afc8b6f3c5bfc3498eca91140 WHIRLPOOL b552e68d0412e723e23c645516e87d695e00af0c88b14ab1ebc6b65e374f525fab6df2b5f81fe72fc8a61a8a9f616712ef0d215a07327745d33fb0238509eac9
DIR diff --git a/app-text/mupdf/files/mupdf-1.3-CFLAGS.patch b/app-text/mupdf/files/mupdf-1.3-CFLAGS.patch
@@ -0,0 +1,11 @@
+--- mupdf-1.3/Makerules
++++ mupdf-1.3/Makerules
+@@ -6,7 +6,7 @@
+ CFLAGS += -Wall
+
+ ifeq "$(build)" "debug"
+-CFLAGS += -pipe -g -DDEBUG
++CFLAGS += -DDEBUG
+ else ifeq "$(build)" "profile"
+ CFLAGS += -pipe -O2 -DNDEBUG -pg
+ LDFLAGS += -pg
DIR diff --git a/app-text/mupdf/files/mupdf-1.3-pkg-config.patch b/app-text/mupdf/files/mupdf-1.3-pkg-config.patch
@@ -0,0 +1,20 @@
+no pkgconfig data for jbig2dec and jpeg
+http://bugs.ghostscript.com/show_bug.cgi?id=694301
+
+openjpeg-2
+http://bugs.ghostscript.com/show_bug.cgi?id=693518
+
+--- mupdf-1.3/platform/debian/mupdf.pc
++++ mupdf-1.3/platform/debian/mupdf.pc
+@@ -4,9 +4,9 @@
+ includedir=${prefix}/include
+
+ Name: mupdf
+ Description: Library for rendering PDF documents
+-Requires.private: freetype2
++Requires: freetype2 libopenjp2 libcrypto
+ Version: 0.5.0
+ Libs: -L${libdir} -lmupdf
+-Libs.private: -lopenjpeg -ljbig2dec -ljpeg -lz -lm
++Libs.private: -lmupdf-js-none
+ Cflags: -I${includedir}
DIR diff --git a/app-text/mupdf/files/mupdf-1.3-zoom-2.patch b/app-text/mupdf/files/mupdf-1.3-zoom-2.patch
@@ -0,0 +1,10 @@
+--- mupdf-1.3/platform/x11/pdfapp.c
++++ mupdf-1.3/platform/x11/pdfapp.c
+@@ -866,6 +867,7 @@
+ break;
+
+ case ' ':
++ case 'F':
+ panto = DONT_PAN;
+ if (app->numberlen > 0)
+ app->pageno += atoi(app->number);
DIR diff --git a/app-text/mupdf/files/mupdf-1.5-Makerules-openssl-curl.patch b/app-text/mupdf/files/mupdf-1.5-Makerules-openssl-curl.patch
@@ -0,0 +1,27 @@
+--- mupdf-1.5/Makerules
++++ mupdf-1.5/Makerules
+@@ -58,17 +58,23 @@
+
+ HAVE_X11 ?= yes
+
++WANT_OPENSSL ?= yes
++ifeq "$(WANT_OPENSSL)" "yes"
+ ifeq "$(shell pkg-config --exists libcrypto && echo yes)" "yes"
+ SYS_OPENSSL_CFLAGS = -DHAVE_OPENSSL $(shell pkg-config --cflags libcrypto)
+ SYS_OPENSSL_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)
+ SYS_CURL_LIBS = $(shell pkg-config --libs libcurl)
+-endif
+ SYS_CURL_DEPS = -lpthread -lrt
++endif
++endif
+
+ SYS_X11_CFLAGS = $(shell pkg-config --cflags x11 xext)
+ SYS_X11_LIBS = $(shell pkg-config --libs x11 xext)
DIR diff --git a/app-text/mupdf/files/mupdf-1.5-format-security-error.patch b/app-text/mupdf/files/mupdf-1.5-format-security-error.patch
@@ -0,0 +1,22 @@
+From: =?utf-8?q?=22Kan-Ru_Chen_=28=E9=99=B3=E4=BE=83=E5=A6=82=29=22?=
+ <koster@debian.org>
+Date: Sat, 20 Sep 2014 13:12:16 +0800
+Subject: Fix -Werror=format-security error
+
+---
+ source/pdf/pdf-op-run.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/source/pdf/pdf-op-run.c b/source/pdf/pdf-op-run.c
+index 2bea94b..da881b2 100644
+--- a/source/pdf/pdf-op-run.c
++++ b/source/pdf/pdf-op-run.c
+@@ -1729,7 +1729,7 @@ run_xobject(pdf_csi *csi, void *state, pdf_obj *resources, pdf_xobject *xobj, co
+
+ /* Rethrow postponed errors */
+ if (errmess[0])
+- fz_throw(ctx, FZ_ERROR_GENERIC, errmess);
++ fz_throw(ctx, FZ_ERROR_GENERIC, "%s", errmess);
+ }
+
+ static void pdf_run_BDC(pdf_csi *csi, void *state)
DIR diff --git a/app-text/mupdf/files/mupdf-1.5-old-debian-files.patch b/app-text/mupdf/files/mupdf-1.5-old-debian-files.patch
@@ -0,0 +1,533 @@
+--- /dev/null
++++ platform/debian/mupdf.desktop
+@@ -0,0 +1,15 @@
++[Desktop Entry]
++Name=MuPDF
++GenericName=PDF file viewer
++Exec=mupdf %f
++TryExec=mupdf
++Icon=mupdf
++Terminal=false
++Type=Application
++MimeType=application/pdf;application/x-pdf;application/x-cbz;application/oxps;application/vnd.ms-xpsdocument;image/jpeg;image/pjpeg;image/png;image/tiff;image/x-tiff
++Categories=Viewer;Graphics;
++Actions=View
++
++[Desktop Action View]
++Name=View with mupdf
++Exec=mupdf %f
+--- /dev/null
++++ platform/debian/mupdf.pc
+@@ -0,0 +1,12 @@
++prefix=/usr
++exec_prefix=${prefix}
++libdir=${exec_prefix}/lib
++includedir=${prefix}/include
++
++Name: mupdf
++Description: Library for rendering PDF documents
++Requires.private: freetype2
++Version: 0.5.0
++Libs: -L${libdir} -lmupdf
++Libs.private: -lopenjpeg -ljbig2dec -ljpeg -lz -lm
++Cflags: -I${includedir}
+--- /dev/null
++++ platform/debian/mupdf.xpm
+@@ -0,0 +1,497 @@
++/* XPM */
++static char *mupdf[] = {
++/* width height ncolors chars_per_pixel */
++"48 48 442 2",
++/* colors */
++" c #000000",
++" . c #2E4558",
++" X c #252121",
++" o c #AFAFAF",
++" O c #28313B",
++" + c #231F1F",
++" @ c #686666",
++" # c #98BDD7",
++" $ c #201B1C",
++" % c #7CABCC",
++" & c #4487B6",
++" * c #DFDEDE",
++" = c #4285B4",
++" - c #615E5F",
++" ; c #605E5E",
++" : c #23262C",
++" > c #D9D8D8",
++" , c #F7FAFC",
++" < c #D7D6D6",
++" 1 c #BFD6E6",
++" 2 c #6BA0C5",
++" 3 c #232122",
++" 4 c #555253",
++" 5 c #CDCCCC",
++" 6 c #E7EFF6",
++" 7 c #4786B2",
++" 8 c #CADDEA",
++" 9 c #4085B5",
++" 0 c #AECBDF",
++" q c #CBCACA",
++" w c #92B9D4",
++" e c #365F7D",
++" r c #5A95BE",
++" t c #3E83B3",
++" y c #304B60",
++" u c #C7C6C6",
++" i c #4D8EBB",
++" p c #F1F6F9",
++" a c #C1C0C0",
++" s c #454243",
++" d c #669CC3",
++" f c #81AECD",
++" g c #7A7777",
++" h c #434041",
++" j c #3E779F",
++" k c #272E36",
++" l c #413E3F",
++" z c #3F3C3D",
++" x c #5895BF",
++" c c #3D3A3B",
++" v c #C6DBE9",
++" b c #B8B6B7",
++" n c #4282B0",
++" m c #FDFDFE",
++" M c #B7B6B6",
++" N c #8DB5D2",
++" B c #242529",
++" V c #B3B2B2",
++" C c #222327",
++" Z c #B0AEAF",
++" A c #EDF4F8",
++" S c #686565",
++" D c #488AB9",
++" F c #9ABED8",
++" G c #7EACCD",
++" H c #ECF2F7",
++" J c #211C1C",
++" K c #666363",
++" L c #F1F1F2",
++" P c #ABAAAA",
++" I c #4588B6",
++" U c #A9A8A8",
++" Y c #2D2A2B",
++" T c #A7A6A6",
++" R c #615D5E",
++" E c #2B2829",
++" W c #8DB7D5",
++" Q c #F9FBFD",
++" ! c #DDE9F2",
++" ~ c #F8FBFC",
++" ^ c #DCE9F1",
++" / c #A5C5DC",
++" ( c #89B3D1",
++" ) c #5C5959",
++" _ c #A4C5DB",
++" ` c #335A76",
++" ' c #518FBB",
++" ] c #E6E7E7",
++" [ c #5A5757",
++" { c #232021",
++" } c #33536C",
++" | c #98BED9",
++". c #E0E1E1",
++".. c #7CACCE",
++".X c #4488B8",
++".o c #2D3F4F",
++".O c #999898",
++".+ c #4388B7",
++".@ c #5E98C1",
++".# c #CDCDCB",
++".$ c #524F4F",
++".% c #B0CCE0",
++".& c #979696",
++".* c #78A8CA",
++".= c #5C96BF",
++".- c #969495",
++".; c #4084B4",
++".: c #252930",
++".> c #949293",
++"., c #929091",
++".< c #417FAB",
++".1 c #4F8FBC",
++".2 c #F3F7FA",
++".3 c #D3D3D4",
++".4 c #D7E5EF",
++".5 c #222023",
++".6 c #9FC1D9",
++".7 c #679DC3",
++".8 c #37678A",
++".9 c #4B8BB8",
++".0 c #3E769E",
++".q c #3C749C",
++".w c #403D3D",
++".e c #92BAD6",
++".r c #C8DCEA",
++".t c #FEFEFE",
++".y c #3D393A",
++".u c #3B3738",
++".i c #355974",
++".p c #353132",
++".a c #7A7879",
++".s c #498BB9",
++".d c #9BBFD8",
++".f c #4E8AB4",
++".g c #787677",
++".h c #F2F2F2",
++".j c #F0F0F0",
++".k c #2F2B2C",
++".l c #EEEEEE",
++".z c #727071",
++".x c #26282D",
++".c c #ECECEC",
++".v c #2B2728",
++".b c #FAFCFD",
++".n c #EAEAEA",
++".m c #DEEAF2",
++".M c #E9EAE9",
++".N c #C2D8E7",
++".B c #6E6C6D",
++".V c #5390BC",
++".C c #E8E8E8",
++".Z c #6EA2C6",
++".A c #272324",
++".S c #E7E6E7",
++".D c #E6E6E6",
++".F c #252122",
++".G c #29333D",
++".H c #E4E4E4",
++".J c #3F7AA5",
++".K c #231F20",
++".L c #E2E2E2",
++".P c #211D1E",
++".I c #E0E0E0",
++".U c #EAF1F7",
++".Y c #6099C2",
++".T c #1F1B1C",
++".R c #E9F1F6",
++".E c #CDDFEB",
++".W c #4387B6",
++".Q c #96BBD6",
++".! c #B1CDE0",
++".~ c #DEDEDE",
++".^ c #79A9CA",
++"./ c #4285B5",
++".( c #272A31",
++".) c #5D97BF",
++"._ c #4185B4",
++".` c #DCDCDC",
++".' c #959393",
++".] c #DADADA",
++".[ c #314B5F",
++".{ c #D8D8D8",
++".} c #D7D8D7",
++".| c #D6D6D6",
++"X c #F5F8FB",
++"X. c #D4D4D4",
++"XX c #6AA0C5",
++"Xo c #BDD4E5",
++"XO c #3A6A8C",
++"X+ c #232123",
++"X@ c #D3D4D3",
++"X# c #D2D2D2",
++"X$ c #D0D0D0",
++"X% c #CECECE",
++"X& c #CCCCCC",
++"X* c #CADDEB",
++"X= c #37617F",
++"X- c #242A31",
++"X; c #CACACA",
++"X: c #C8DBE9",
++"X> c #90B7D3",
++"X, c #817F7F",
++"X< c #3F7EAB",
++"X1 c #548FB9",
++"X2 c #355873",
++"X3 c #7D7B7B",
++"X4 c #C2C2C2",
++"X5 c #4B8CBA",
++"X6 c #C0C0C0",
++"X7 c #D4E4EE",
++"X8 c #81AECE",
++"X9 c #659CC3",
++"X0 c #787576",
++"Xq c #4788B6",
++"Xw c #252C35",
++"Xe c #757373",
++"Xr c #BABABA",
++"Xt c #FCFDFE",
++"Xy c #B6B6B6",
++"Xu c #C4D9E8",
++"Xi c #706D6E",
++"Xp c #8CB5D2",
++"Xa c #70A3C7",
++"Xs c #8BB5D1",
++"Xd c #5491BC",
++"Xf c #5391BB",
++"Xg c #282424",
++"Xh c #272223",
++"Xj c #6C696A",
++"Xk c #2F4659",
++"Xl c #6B6969",
++"Xz c #407BA5",
++"Xx c #6A6768",
++"Xc c #E4E3E3",
++"Xv c #3E79A3",
++"Xb c #231E1F",
++"Xn c #221E1E",
++"Xm c #E2E1E1",
++"XM c #211C1D",
++"XN c #EBF2F7",
++"XB c #201C1C",
++"XV c #CFE0EC",
++"XC c #4588B7",
++"XZ c #B3CEE1",
++"XA c #366384",
++"XS c #5F98C0",
++"XD c #4386B5",
++"XF c #DEDDDD",
++"XG c #2B3D4B",
++"XH c #615F5F",
++"XJ c #5F5D5D",
++"XK c #5E5B5C",
++"XL c #DCE9F2",
++"XP c #407DA8",
++"XI c #86B1CF",
++"XU c #D4D3D3",
++"XY c #3A698B",
++"XT c #3E7BA6",
++"XR c #232022",
++"XE c #545152",
++"XW c #999899",
++"XQ c #79AACC",
++"X! c #524F50",
++"X~ c #CCCDCB",
++"X^ c #3D749B",
++"X/ c #93BAD5",
++"X( c #77A8CA",
++"X) c #37607E",
++"X_ c #5B96BF",
++"X` c #3F84B4",
++"X' c #CAC9C9",
++"X] c #C6C5C5",
++"X[ c #3F7DAA",
++"X{ c #F2F7FA",
++"X} c #C2C1C1",
++"X| c #212023",
++"o c #9EC1D9",
++"o. c #444142",
++"oX c #3F78A0",
++"oo c #90B8D5",
++"oO c #FEFEFF",
++"o+ c #E2ECF4",
++"o@ c #2B3A47",
++"o# c #25262A",
++"o$ c #B1AFB0",
++"o% c #28313A",
++"o& c #221D1D",
++"o* c #262F38",
++"o= c #629BC2",
++"o- c #302D2E",
++"o; c #6199C1",
++"o: c #201B1B",
++"o> c #4587B6",
++"o, c #F0F0F1",
++"o< c #2D3E4C",
++"o1 c #2E2B2C",
++"o2 c #4385B4",
++"o3 c #A8A7A7",
++"o4 c #A7A5A6",
++"o5 c #3D7197",
++"o6 c #4183B2",
++"o7 c #4083B1",
++"o8 c #A5A3A4",
++"o9 c #3B6F95",
++"o0 c #5290BC",
++"oq c #A4C4DB",
++"ow c #E9F1F7",
++"oe c #4387B7",
++"or c #E7EFF5",
++"ot c #CBDDEA",
++"oy c #4185B5",
++"ou c #5B95BE",
++"oi c #3F83B3",
++"op c #939192",
++"oa c #929191",
++"os c #2B3743",
++"od c #4C4849",
++"of c #2A3742",
++"og c #F4F8FB",
++"oh c #D8E6F0",
++"oj c #4C8CB9",
++"ok c #211F22",
++"ol c #CFD0D0",
++"oz c #444041",
++"ox c #262C34",
++"oc c #413E3E",
++"ov c #403C3D",
++"ob c #3B739B",
++"on c #858384",
++"om c #FFFFFF",
++"oM c #E3EDF4",
++"oN c #5995BF",
++"oB c #3E3A3B",
++"oV c #C7DBE9",
++"oC c #2F4B61",
++"oZ c #5793BD",
++"oA c #3C3839",
++"oS c #2A3945",
++"oD c #7E7D7D",
++"oF c #345873",
++"oG c #363233",
++"oH c #7B797A",
++"oJ c #EFF4F9",
++"oK c #EEF4F8",
++"oL c #F3F3F3",
++"oP c #9ABED7",
++"oI c #4788B7",
++"oU c #629AC1",
++"oY c #ACAAAA",
++"oT c #F1F1F1",
++"oR c #EFEFEF",
++"oE c #737172",
++"oW c #EDEDED",
++"oQ c #A9C9DF",
++"o! c #FBFDFE",
++"o~ c #EBEBEB",
++"o^ c #DFEBF3",
++"o/ c #4581AB",
++"o( c #6F6D6E",
++"o) c #EAE9EA",
++"o_ c #E9E9E9",
++"o` c #C1D7E6",
++"o' c #E7E7E7",
++"o] c #E6E7E6",
++"o[ c #E5E5E5",
++"o{ c #3F7BA5",
++"o} c #242021",
++"o| c #E3E3E3",
++"O c #3E79A4",
++"O. c #221E1F",
++"OX c #26303A",
++"Oo c #9C9A9A",
++"OO c #E1E1E1",
++"O+ c #201C1D",
++"O@ c #4488B7",
++"O# c #DFDFDF",
++"O$ c #7BAACC",
++"O% c #356384",
++"O& c #1E1A1B",
++"O* c #4386B6",
++"O= c #4286B5",
++"O- c #95BAD5",
++"O; c #DDDDDD",
++"O: c #1C1819",
++"O> c #DBDBDB",
++"O, c #D9D9D9",
++"O< c #D7D7D7",
++"O1 c #417FAA",
++"O2 c #DAE7F1",
++"O3 c #F5F9FB",
++"O4 c #D5D5D5",
++"O5 c #242224",
++"O6 c #D4D3D4",
++"O7 c #85B1CF",
++"O8 c #D3D3D3",
++"O9 c #699FC4",
++"O0 c #4D8DB9",
++"Oq c #222022",
++"Ow c #34556F",
++"Oe c #D1D1D1",
++"Or c #D0CFD0",
++"Ot c #8A8888",
++"Oy c #CFCFCF",
++"Ou c #CDCDCD",
++"Oi c #CCCDCC",
++"Op c #CADEEB",
++"Oa c #E5EEF5",
++"Os c #C9DCEA",
++"Od c #ADCADF",
++"Of c #C8DCE9",
++"Og c #91B8D4",
++"Oh c #5994BE",
++"Oj c #3D82B3",
++"Ok c #5894BD",
++"Ol c #3C82B2",
++"Oz c #4181AD",
++"Ox c #3B3737",
++"Oc c #C5C5C5",
++"Ov c #293643",
++"Ob c #3E7DAA",
++"On c #C1C1C1",
++"Om c #353131",
++"OM c #D4E3EE",
++"ON c #B8D1E3",
++"OB c #BFBFBF",
++"OV c #9CBFD8",
++"OC c #80ADCD",
++"OZ c #649BC2",
++"OA c #4889B7",
++"OS c #BDBDBD",
++"OD c #2E292A",
++"OF c #4283B1",
++"OG c #B7B7B7",
++"OH c #4183B0",
++"OJ c #5794BF",
++"OK c #A7C6DC",
++"OL c #365B77",
++"OP c #8BB4D1",
++"OI c #282324",
++"OU c #272323",
++"OY c #6C6A6A",
++"OT c None",
++/* pixels */
++" oToToToT L.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h LoToToToT ",
++"o,.joToToToToToToToToToToToToToToToToToToToT.h.h.h.hoToToToToToToToToToToToToToToToToToToToT.j.j",
++".j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.joToLoLoR.D.~ > >.~.DoRoLoLoT.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j",
++"oRoRoRoRoRoRoRoRoRoRoRoRoRoRoRoT.hXcOBoaXjX!oz c cozX!XjoaOBXc.hoToRoRoRoRoRoRoRoRoRoRoRoRoRoRoR",
++".l.l.l.l.l.l.l.l.l.l.l.l.loR.j <.'X! Y.P.To: $ J J $o:.T.P YX!.' <.joR.l.l.l.l.l.l.l.l.l.l.l.l.l",
++".l.l.l.l.l.l.l.l.l.l.l.l.jXm.&oz + $o& 3.x OoSXGXGoS O.x 3o& $ +oz.&Xm.j.l.l.l.l.l.l.l.l.l.l.l.l",
++"oWoWoWoWoWoWoWoWoWoWoWoR uXK X $XRo% yXA.qo/.fX1X1.fo/.qXA yo%XR $ XXK uoRoWoWoWoWoWoWoWoWoWoWoW",
++".c.c.c.c.c.c.c.c.c.coW Z z $ {os eXTo0..oQX*XLoMoMXLOpoQ..o0XT eos { $ z ZoW.c.c.c.c.c.c.c.c.c.c",
++"o~o~o~o~o~o~o~o~o~.co3.p $.(X2X[OJ FOM !Of 0.d wOg.d 0Os.mOM FOJObX2.( $.po3.co~o~o~o~o~o~o~o~o~",
++".n.n.n.n.n.n.n.noW VoGXMoso9XC G.N.!.^XfXD tOjOlOlOj tXDXd.^.% 1O$O@o9osXMoG VoW.n.n.n.n.n.n.n.n",
++".n.n.n.n.n.n.n.c qo.XBo<XvX5 No oUO0 fOPXpXpXpXpXpXpXpXpOP ( NOdo^OV.sXvo<XBo. q.c.n.n.n.n.n.n.n",
++"o_o_o_o_o_o_.M.L @ $o@o{.s.^.Z & t.* ~omomomomomomomomomomomom.toO.b _ D.Jo@ $ @.Lo)o_o_o_o_o_o_",
++".C.C.C.C.C.Co~o8Xg kX^oeoZXf._XDXD 0omomomomomomomomomomomomomomomom.b #XCX^ kXgo8o~.C.C.C.C.C.C",
++"o'o'o'o'o'.CO>.$okX=oeXDo>O=XD./Xd.momomomomomomomomomomomomomom pX7.NOK 'oeX=ok.$O>.Co'o'o'o'o'",
++" ]o'o'o'.So_ TXh.o nXDXDXDXDXD.; %.bomomomomomomomomomomomomoOo`O9ojo>XDXDXD n.oXh To_ ]o'o'o'.S",
++".D.D.D.D.Do| SX|XY.+XDXDXDXDXDXDXZomomomomomomomomomomomomom.4Xd.;O=XDXDXDXD.+XYX| So|.D.D.D.D.D",
++"o[o[o[o[.D 5OxOvOzO*XDXDXDXD =oZo+omomomomomomomomomomomomomoP.;XDXDXDXDXDXDO*OzOvOx 5o]o[o[o[o[",
++".H.H.H.Ho' POU }oeXDXDXDXDXD.;X8o!omomomomomomomomomomomom.bX(.;XDXDXDXDXDXDXDoe }OU Po'.H.H.H.H",
++"o|o|o|o|.DOt.5XO.+XDXDXDXDXD &ONomomomomomomomomomomomomom.2.7._XDXDXDXDXDXDXD.+XO.5Ot.Do|o|o|o|",
++"o|o|o|o|o|Xi : j.WXDXDXDXD = rOaomomomomomomomomomomomomom AXS._XDXDXDXDXDXDXD.W j :Xio|o|o|o|o|",
++".L.L.L.L.I RXwXP.WXDXDXDXD.;XI momomomomomomomomomomomomomXN.=._XDXDXDXDXDXDXD.WXPXw R.I.L.L.L.L",
++"OOOOOOOOO; [OX.<O*XDXDXDXD IXoomomomomomomomomomomomomomom.UX_._XDXDXDXDXDXDXDO*.<OX [O;OOOOOOOO",
++".I.I.I.IO; )o*O1O*XDXDXD._.).Romomomomomog ~omomomomomomom.UX_._XDXDXDXDXDXDXDO*O1o* )O;.I.I.I.I",
++"O#O#O#O#O# KX-Xz.WXDXDXD.;XsoOomomomomom vowomomomomomomom.UX_._XDXDXDXDXDXDXD.WXzX- KO#O#O#O#O#",
++"O#O#O#O#. g Co5oeXDXDXDXq.Nomomomomom ,X>oromomomomomomom.UX_._XDXDXDXDXDXDXDoeo5 C gOOO#O#O#O#",
++".~.~.~.~OO.- {X).XXDXD._o; HomomomomomohO9.Romomomomomomom.UX_._XDXDXDXDXDXDXD.XX) {.-OO.~.~.~.~",
++"O;O;O;O;O#XyOD .o2XDXD.;Ogomomomomomom / r.Uomomomomomomom.UX_._XDXDXDXDXDXDXDo2 .ODXyO#O;O;O;O;",
++".`.`.`.`O;Oeod.:oX.WXDOAoVomomomomomO3XaOk.Uomomomomomomom.UX_._XDXDXDXDXDXD.WoX.:odOeO;.`.`.`.`",
++"O>O>O>O>O>O;X,.POw.W._ doJomomomomomOMoj r.Uomomomomomomom.UX_._XDXDXDXDXDXD.WOw.PX,O;O>O>O>O>O>",
++"O>O>O>O>O>O;XrOmox.0 9X8Xtomomomomom.6X`ou.Uomomomomomomom.UX_._XDXDXDXDXDoe.0oxOmXrO;O>O>O>O>O>",
++".].].].].].]O,.z JXkOH.VotomomomomX{ 2oiou.Uomomomomomomom.UX_._XDO= &O0 &OFXk J.zO,.].].].].].]",
++"O,O,O,O,O,O,O>OS.yOq.i._OZ ^omomom.E.9._ou.Uomomomomomomom.UX_._._.9.ZXdO=.iOq.yOSO>O,O,O,O,O,O,",
++".{.{.{.{.{.{.{.].,.A BX)oyXXO2omom.Q.;._ou.Uomomomomomomom.UOh._ dO-X9O=X) BOI.,.].{.{.{.{.{.{.{",
++"O<O<O<O<O<O<O<.{O8o(Xno#OLo7.YXuX O7oIoiOk.Romomomomomomom HOCoqOdo=o6OLo#Xno(O8.{O<O<O<O<O<O<O<",
++"O<O<O<O<O<O<O<O<.{X'XJ.PO5.[O iOgXVX:OVXsoKomomomomomomom.bOMX/.1O .[O5.PXJX'.{O<O<O<O<O<O<O<O<",
++".|.|.|.|.|.|.|.|.|.}X]XH.KXn.G eX<oN.e 8 6 Qomomomom.bXN.roo xX< e.GXn.KXHX].}.|.|.|.|.|.|.|.|.|",
++"O4O4O4O4O4O4O4O4O4O4O<X;Xe.vXBX+ofoFob 7.@XQ W | | WXQ.@ 7oboFofX+XB.vXeX;O<O4O4O4O4O4O4O4O4O4O4",
++"X.X.X.X.X.X.X.X.X.X.X.O4X#XW sO. J.K.xo@oC `O%.8.8O% `oCo@.x.K JO. sXWX#O4X.X.X.X.X.X.X.X.X.X.X.",
++"O8O8O8O6O8XUXUO8O8XUXUO8X..|OnX,oc.F $ Jo&XbXRO5O5XRXbo& J $.FocX,On.|X.O8XUX@X@O8.3O8O8O8O8O8X@",
++"O8O8O8O8O8O8O8O8O8O8O8O8O8O8X.X. aop ; c Eo}.PXMXM.Po} E c ;op aX.X.O8O8O8O8O8O8O8O8O8O8O8O8O8O8",
++"X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#O8O4X$X6 P.-onX3X3on.- PX6X$O4O8X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#",
++"OeOeOeOeOeOeOeOeOeOeOeOeOeOeOeOeOeOeOeO8X4OGOnOcOcX} MOSX#OeOeOeOeOeOeOeOeOeOeOeOeOeOeOeOeOeOeOe",
++"X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$O8ono-oAov.w.u.koEX#X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$",
++"X$X$X$X$X$X$X$X$X$olX$X$X$X$X$X$X$X$X$X#oD l.>o1O+.P.T.BOeX$X$X$X$X$X$X$OrOrX$X$X$X$X$X$X$X$X$X$",
++"OyOyOyOyOyOyOyOyOyOyOyOyOyOyOyOyOyOyOyX#oHXEXFoBO&.TO:OYX$OyOyOyOyOyOyOyOyOyOyOyOyOyOyOyOyOyOyOy",
++"X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%Oy POo.CX0 -Xx.g TOyX%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%",
++"X%X%OuOuOuOuOuOuOuOuOuOuOuOuOuOuOuOuOuX% oo$.h boYo4.O UX%OuOuOuOuOuOuOuOuOuOuOuOuOuOuOuOuOuX%X%",
++" Ou.#OuOuOiX&X&X&X&X&X&X&X&X&X&X&X&X&Oy.a 4 * h.K.KO&XlX%X&X&X&X&X&X&X&X&X&X&X&X&X&X&OuOuX~Ou "
++};
DIR diff --git a/app-text/mupdf/files/mupdf-1.5-openjpeg-2.1.patch b/app-text/mupdf/files/mupdf-1.5-openjpeg-2.1.patch
@@ -0,0 +1,28 @@
+--- mupdf-1.9a-source/source/fitz/load-jpx.c.orig
++++ mupdf-1.9a-source/source/fitz/load-jpx.c
+@@ -1,15 +1,7 @@
+ #include "mupdf/fitz.h"
+
+-/* Without the definition of OPJ_STATIC, compilation fails on windows
+- * due to the use of __stdcall. We believe it is required on some
+- * linux toolchains too. */
+-#define OPJ_STATIC
+-#ifndef _MSC_VER
+-#define OPJ_HAVE_STDINT_H
+-#endif
++#include <openjpeg-2.1/openjpeg.h>
+
+-#include <openjpeg.h>
+-
+ static void fz_opj_error_callback(const char *msg, void *client_data)
+ {
+ fz_context *ctx = (fz_context *)client_data;
+@@ -117,7 +109,7 @@
+ opj_stream_set_read_function(stream, fz_opj_stream_read);
+ opj_stream_set_skip_function(stream, fz_opj_stream_skip);
+ opj_stream_set_seek_function(stream, fz_opj_stream_seek);
+- opj_stream_set_user_data(stream, &sb);
++ opj_stream_set_user_data(stream, &sb, NULL);
+ /* Set the length to avoid an assert */
+ opj_stream_set_user_data_length(stream, size);
+
DIR diff --git a/app-text/mupdf/files/mupdf-1.7a-system-mujs.patch b/app-text/mupdf/files/mupdf-1.7a-system-mujs.patch
@@ -0,0 +1,11 @@
+--- mupdf-1.7a/Makefile
++++ mupdf-1.7a/Makefile
+@@ -98,7 +98,7 @@
+ ifeq "$(HAVE_MUJS)" "yes"
+ PDF_OBJ += $(OUT)/pdf/js/pdf-js.o
+ PDF_OBJ += $(OUT)/pdf/js/pdf-jsimp-mu.o
+-THIRD_LIBS += $(MUJS_LIB)
++THIRD_LIBS +=
+ LIBS += $(MUJS_LIBS)
+ CFLAGS += $(MUJS_CFLAGS)
+ else ifeq "$(HAVE_JSCORE)" "yes"
DIR diff --git a/app-text/mupdf/files/mupdf-1.8-system-glfw.patch b/app-text/mupdf/files/mupdf-1.8-system-glfw.patch
@@ -0,0 +1,11 @@
+--- 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
+
DIR diff --git a/app-text/mupdf/files/mupdf-1.9a-CFLAGS.patch b/app-text/mupdf/files/mupdf-1.9a-CFLAGS.patch
@@ -0,0 +1,11 @@
+--- 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
DIR diff --git a/app-text/mupdf/files/mupdf-1.9a-CVE-2016-6265.patch b/app-text/mupdf/files/mupdf-1.9a-CVE-2016-6265.patch
@@ -0,0 +1,34 @@
+From: Robin Watts <robin.watts@artifex.com>
+Date: Thu, 21 Jul 2016 14:39:11 +0000 (+0100)
+Subject: Bug 696941: Fix use after free.
+X-Git-Url: http://git.ghostscript.com/?p=mupdf.git;a=commitdiff_plain;h=fa1936405b6a84e5c9bb440912c23d532772f958;hp=e98091d56afdf1cf6c9a017fa0bd35dd0b8968f0
+
+Bug 696941: Fix use after free.
+
+The file is HORRIBLY corrupt, and triggers Sophos to think it's
+PDF malware (which it isn't). It does however trigger a use
+after free, worked around here.
+---
+
+diff --git a/source/pdf/pdf-xref.c b/source/pdf/pdf-xref.c
+index 576c315..3222599 100644
+--- a/source/pdf/pdf-xref.c
++++ b/source/pdf/pdf-xref.c
+@@ -1184,8 +1184,14 @@ pdf_load_xref(fz_context *ctx, pdf_document *doc, pdf_lexbuf *buf)
+ fz_throw(ctx, FZ_ERROR_GENERIC, "object offset out of range: %d (%d 0 R)", (int)entry->ofs, i);
+ }
+ if (entry->type == 'o')
+- if (entry->ofs <= 0 || entry->ofs >= xref_len || pdf_get_xref_entry(ctx, doc, entry->ofs)->type != 'n')
+- fz_throw(ctx, FZ_ERROR_GENERIC, "invalid reference to an objstm that does not exist: %d (%d 0 R)", (int)entry->ofs, i);
++ {
++ /* Read this into a local variable here, because pdf_get_xref_entry
++ * may solidify the xref, hence invalidating "entry", meaning we
++ * need a stashed value for the throw. */
++ fz_off_t ofs = entry->ofs;
++ if (ofs <= 0 || ofs >= xref_len || pdf_get_xref_entry(ctx, doc, ofs)->type != 'n')
++ fz_throw(ctx, FZ_ERROR_GENERIC, "invalid reference to an objstm that does not exist: %d (%d 0 R)", (int)ofs, i);
++ }
+ }
+ }
+
+
DIR diff --git a/app-text/mupdf/files/mupdf-1.9a-CVE-2016-6525.patch b/app-text/mupdf/files/mupdf-1.9a-CVE-2016-6525.patch
@@ -0,0 +1,24 @@
+From: Sebastian Rasmussen <sebras@gmail.com>
+Date: Wed, 27 Jul 2016 14:19:39 +0000 (+0800)
+Subject: Make sure that number of colors in mesh params is valid.
+X-Git-Url: http://git.ghostscript.com/?p=mupdf.git;a=commitdiff_plain;h=39b0f07dd960f34e7e6bf230ffc3d87c41ef0f2e;hp=fa1936405b6a84e5c9bb440912c23d532772f958
+
+Make sure that number of colors in mesh params is valid.
+
+Fixes bug 696954.
+---
+
+diff --git a/source/pdf/pdf-shade.c b/source/pdf/pdf-shade.c
+index 7815b3c..6e25efa 100644
+--- a/source/pdf/pdf-shade.c
++++ b/source/pdf/pdf-shade.c
+@@ -206,7 +206,7 @@ pdf_load_mesh_params(fz_context *ctx, pdf_document *doc, fz_shade *shade, pdf_ob
+ obj = pdf_dict_get(ctx, dict, PDF_NAME_Decode);
+ if (pdf_array_len(ctx, obj) >= 6)
+ {
+- n = (pdf_array_len(ctx, obj) - 4) / 2;
++ n = fz_mini(FZ_MAX_COLORS, (pdf_array_len(ctx, obj) - 4) / 2);
+ shade->u.m.x0 = pdf_to_real(ctx, pdf_array_get(ctx, obj, 0));
+ shade->u.m.x1 = pdf_to_real(ctx, pdf_array_get(ctx, obj, 1));
+ shade->u.m.y0 = pdf_to_real(ctx, pdf_array_get(ctx, obj, 2));
+
DIR diff --git a/app-text/mupdf/files/mupdf-1.9a-debug-build.patch b/app-text/mupdf/files/mupdf-1.9a-debug-build.patch
@@ -0,0 +1,10 @@
+--- mupdf-1.9a/Makefile
++++ mupdf-1.9a/Makefile
+@@ -1,6 +1,6 @@
+ # GNU Makefile
+
+-build ?= release
++build ?= debug
+
+ OUT := build/$(build)
+ GEN := generated
DIR diff --git a/app-text/mupdf/files/mupdf-1.9a-no-thirdlibs.patch b/app-text/mupdf/files/mupdf-1.9a-no-thirdlibs.patch
@@ -0,0 +1,113 @@
+--- mupdf-1.9a/Makefile
++++ mupdf-1.9a/Makefile
+@@ -142,15 +141,12 @@
+ # --- Library ---
+
+ MUPDF_LIB = $(OUT)/libmupdf.a
+-THIRD_LIB = $(OUT)/libmupdfthird.a
+
+ MUPDF_OBJ := $(FITZ_OBJ) $(FONT_OBJ) $(PDF_OBJ) $(XPS_OBJ) $(CBZ_OBJ) $(HTML_OBJ) $(GPRF_OBJ)
+-THIRD_OBJ := $(FREETYPE_OBJ) $(HARFBUZZ_OBJ) $(JBIG2DEC_OBJ) $(JPEG_OBJ) $(MUJS_OBJ) $(OPENJPEG_OBJ) $(ZLIB_OBJ)
+
+ $(MUPDF_LIB) : $(MUPDF_OBJ)
+-$(THIRD_LIB) : $(THIRD_OBJ)
+
+-INSTALL_LIBS := $(MUPDF_LIB) $(THIRD_LIB)
++INSTALL_LIBS := $(MUPDF_LIB)
+
+ # --- Rules ---
+
+@@ -251,19 +247,19 @@
+ MUTOOL := $(addprefix $(OUT)/, mutool)
+ MUTOOL_OBJ := $(addprefix $(OUT)/tools/, mutool.o mudraw.o murun.o pdfclean.o pdfcreate.o pdfextract.o pdfinfo.o pdfposter.o pdfshow.o pdfpages.o pdfmerge.o)
+ $(MUTOOL_OBJ): $(FITZ_HDR) $(PDF_HDR)
+-$(MUTOOL) : $(MUPDF_LIB) $(THIRD_LIB)
++$(MUTOOL) : $(MUPDF_LIB)
+ $(MUTOOL) : $(MUTOOL_OBJ)
+ $(LINK_CMD)
+
+ MJSGEN := $(OUT)/mjsgen
+-$(MJSGEN) : $(MUPDF_LIB) $(THIRD_LIB)
++$(MJSGEN) : $(MUPDF_LIB)
+ $(MJSGEN) : $(addprefix $(OUT)/tools/, mjsgen.o)
+ $(LINK_CMD)
+
+ MUJSTEST := $(OUT)/mujstest
+ MUJSTEST_OBJ := $(addprefix $(OUT)/platform/x11/, jstest_main.o pdfapp.o)
+ $(MUJSTEST_OBJ) : $(FITZ_HDR) $(PDF_HDR)
+-$(MUJSTEST) : $(MUPDF_LIB) $(THIRD_LIB)
++$(MUJSTEST) : $(MUPDF_LIB)
+ $(MUJSTEST) : $(MUJSTEST_OBJ)
+ $(LINK_CMD)
+
+@@ -271,7 +267,7 @@
+ MUVIEW_X11 := $(OUT)/mupdf-x11
+ MUVIEW_X11_OBJ := $(addprefix $(OUT)/platform/x11/, x11_main.o x11_image.o pdfapp.o)
+ $(MUVIEW_X11_OBJ) : $(FITZ_HDR) $(PDF_HDR)
+-$(MUVIEW_X11) : $(MUPDF_LIB) $(THIRD_LIB)
++$(MUVIEW_X11) : $(MUPDF_LIB)
+ $(MUVIEW_X11) : $(MUVIEW_X11_OBJ)
+ $(LINK_CMD) $(X11_LIBS)
+
+@@ -279,7 +275,7 @@
+ MUVIEW_GLFW := $(OUT)/mupdf-gl
+ MUVIEW_GLFW_OBJ := $(addprefix $(OUT)/platform/gl/, gl-font.o gl-input.o gl-main.o)
+ $(MUVIEW_GLFW_OBJ) : $(FITZ_HDR) $(PDF_HDR) platform/gl/gl-app.h
+-$(MUVIEW_GLFW) : $(MUPDF_LIB) $(THIRD_LIB) $(GLFW_LIB)
++$(MUVIEW_GLFW) : $(MUPDF_LIB) $(GLFW_LIB)
+ $(MUVIEW_GLFW) : $(MUVIEW_GLFW_OBJ)
+ $(LINK_CMD) $(GLFW_LIBS)
+ endif
+@@ -288,7 +284,7 @@
+ MUVIEW_X11_CURL := $(OUT)/mupdf-x11-curl
+ MUVIEW_X11_CURL_OBJ := $(addprefix $(OUT)/platform/x11/curl/, x11_main.o x11_image.o pdfapp.o curl_stream.o)
+ $(MUVIEW_X11_CURL_OBJ) : $(FITZ_HDR) $(PDF_HDR)
+-$(MUVIEW_X11_CURL) : $(MUPDF_LIB) $(THIRD_LIB) $(CURL_LIB)
++$(MUVIEW_X11_CURL) : $(MUPDF_LIB) $(CURL_LIB)
+ $(MUVIEW_X11_CURL) : $(MUVIEW_X11_CURL_OBJ)
+ $(LINK_CMD) $(X11_LIBS) $(CURL_LIBS) $(SYS_CURL_DEPS)
+ endif
+@@ -298,7 +294,7 @@
+ MUVIEW_WIN32 := $(OUT)/mupdf
+ MUVIEW_WIN32_OBJ := $(addprefix $(OUT)/platform/x11/, win_main.o pdfapp.o win_res.o)
+ $(MUVIEW_WIN32_OBJ) : $(FITZ_HDR) $(PDF_HDR)
+-$(MUVIEW_WIN32) : $(MUPDF_LIB) $(THIRD_LIB)
++$(MUVIEW_WIN32) : $(MUPDF_LIB)
+ $(MUVIEW_WIN32) : $(MUVIEW_WIN32_OBJ)
+ $(LINK_CMD) $(WIN32_LIBS)
+ endif
+@@ -312,9 +308,9 @@
+
+ examples: $(OUT)/example $(OUT)/multi-threaded
+
+-$(OUT)/example: docs/example.c $(MUPDF_LIB) $(THIRD_LIB)
++$(OUT)/example: docs/example.c $(MUPDF_LIB)
+ $(LINK_CMD) $(CFLAGS)
+-$(OUT)/multi-threaded: docs/multi-threaded.c $(MUPDF_LIB) $(THIRD_LIB)
++$(OUT)/multi-threaded: docs/multi-threaded.c $(MUPDF_LIB)
+ $(LINK_CMD) $(CFLAGS) -lpthread
+
+ # --- Update version string header ---
+@@ -343,7 +339,6 @@
+ mandir ?= $(prefix)/share/man
+ docdir ?= $(prefix)/share/doc/mupdf
+
+-third: $(THIRD_LIB)
+ extra: $(CURL_LIB) $(GLFW_LIB)
+ libs: $(INSTALL_LIBS)
+ apps: $(INSTALL_APPS)
+@@ -376,7 +371,7 @@
+ java:
+ $(MAKE) -C platform/java
+
+-tags: $(shell find include source platform thirdparty -name '*.[ch]' -or -name '*.cc' -or -name '*.hh')
++tags: $(shell find include source platform -name '*.[ch]' -or -name '*.cc' -or -name '*.hh')
+ ctags $^
+
+ cscope.files: $(shell find include source platform -name '*.[ch]')
+@@ -397,4 +392,4 @@
+ debug:
+ $(MAKE) build=debug
+
+-.PHONY: all clean nuke install third libs apps generate
++.PHONY: all clean nuke install libs apps generate
DIR diff --git a/app-text/mupdf/mupdf-1.9a-r99.ebuild b/app-text/mupdf/mupdf-1.9a-r99.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib toolchain-funcs vcs-snapshot
+
+DESCRIPTION="a lightweight PDF viewer and toolkit written in portable C"
+HOMEPAGE="http://mupdf.com/"
+SRC_URI="http://git.ghostscript.com/?p=mupdf.git;a=snapshot;h=027860688eafc89ca3d57937a77a43a9bb96f590;sf=tgz -> ${P}.tar.gz"
+
+LICENSE="AGPL-3"
+MY_SOVER=1.9
+SLOT="0/${MY_SOVER}"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x86-macos"
+IUSE="X vanilla +curl libressl opengl +openssl static static-libs"
+
+LIB_DEPEND="
+ !libressl? ( dev-libs/openssl:0[static-libs?] )
+ libressl? ( dev-libs/libressl[static-libs?] )
+ >=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[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 )"
+
+src_prepare() {
+ use hppa && append-cflags -ffunction-sections
+
+ rm -rf thirdparty || die
+
+ epatch \
+ "${FILESDIR}"/${PN}-1.9a-CFLAGS.patch \
+ "${FILESDIR}"/${PN}-1.9a-debug-build.patch \
+ "${FILESDIR}"/${PN}-1.5-old-debian-files.patch \
+ "${FILESDIR}"/${PN}-1.3-pkg-config.patch \
+ "${FILESDIR}"/${PN}-1.5-Makerules-openssl-curl.patch \
+ "${FILESDIR}"/${PN}-1.9a-no-thirdlibs.patch \
+ "${FILESDIR}"/${PN}-1.8-system-glfw.patch \
+ "${FILESDIR}"/${PN}-1.9a-CVE-2016-6265.patch \
+ "${FILESDIR}"/${PN}-1.9a-CVE-2016-6525.patch
+
+
+ if has_version ">=media-libs/openjpeg-2.1:2" ; then
+ epatch \
+ "${FILESDIR}"/${PN}-1.5-openjpeg-2.1.patch
+ fi
+
+ sed -e "/^libdir=/s:/lib:/$(get_libdir):" \
+ -e "/^prefix=/s:=.*:=${EROOT}/usr:" \
+ -i platform/debian/${PN}.pc || die
+
+ use vanilla || epatch \
+ "${FILESDIR}"/${PN}-1.3-zoom-2.patch
+
+ #http://bugs.ghostscript.com/show_bug.cgi?id=693467
+ sed -e '/^\(Actions\|MimeType\)=/s:\(.*\):\1;:' \
+ -i platform/debian/${PN}.desktop || die
+
+ 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 = yes" \
+ -e "1iMUJS_LIBS = -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.${MY_SOVER}
+ my_soname_js_none=libmupdf-js-none.so.${MY_SOVER}
+ 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}
+}