summary refs log tree commit diff
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2018-06-18 03:58:32 +0200
committerTobias Geerinckx-Rice <me@tobias.gr>2018-06-18 04:04:41 +0200
commit69e0aac3a79d07ca21ccab304f786061c6ff000a (patch)
tree9482178109bded07554651e93bb7945d1bfa27b5
parent6321610d41e48cbce4d8737a16fb01747b3ba086 (diff)
downloadguix-69e0aac3a79d07ca21ccab304f786061c6ff000a.tar.gz
gnu: zathura-pdf-mupdf: Link to JPEG libraries.
* gnu/packages/pdf.scm (zathura-pdf-mupdf)[source]: Add patch.
* gnu/packages/patches/zathura-pdf-mupdf-link-to-jpeg-libraries.patch:
New file.
* gnu/local.mk (dist_patch_DATA): Add it.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/zathura-pdf-mupdf-link-to-jpeg-libraries.patch55
-rw-r--r--gnu/packages/pdf.scm2
3 files changed, 58 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 08bba803f4..e92b82b59d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1204,6 +1204,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/xinetd-CVE-2013-4342.patch		\
   %D%/packages/patches/xmodmap-asprintf.patch 			\
   %D%/packages/patches/libyaml-CVE-2014-9130.patch 		\
+  %D%/packages/patches/zathura-pdf-mupdf-link-to-jpeg-libraries.patch \
   %D%/packages/patches/zathura-plugindir-environment-variable.patch
 
 MISC_DISTRO_FILES =				\
diff --git a/gnu/packages/patches/zathura-pdf-mupdf-link-to-jpeg-libraries.patch b/gnu/packages/patches/zathura-pdf-mupdf-link-to-jpeg-libraries.patch
new file mode 100644
index 0000000000..63e058bbef
--- /dev/null
+++ b/gnu/packages/patches/zathura-pdf-mupdf-link-to-jpeg-libraries.patch
@@ -0,0 +1,55 @@
+From: Tobias Geerinckx-Rice <me@tobias.gr>
+Date: Mon, 18 Jun 2018 02:37:41 +0200
+Subject: zathura-pdf-mupdf: Link to JPEG libraries.
+
+As of version 0.3.3, zathura-pdf-mupdf no longer links to some required
+JPEG libraries, leading to such errors as:
+
+  $ zathura foo.pdf
+  error: Could not load plugin '/gnu/store/...-profile/lib/zathura/libpdf-mupdf.so' (/gnu/store/...-profile/lib/zathura/libpdf-mupdf.so: undefined symbol: jpeg_resync_to_restart).
+
+The patch below, copied verbatim from Arch[0], fixes that.
+Its description happens to match our reality, too.
+
+[0]: https://git.archlinux.org/svntogit/community.git/tree/trunk?h=packages/zathura-pdf-mupdf
+---
+From 3fb0ff750373d45d4f5172ce1d41b74183cd07e8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Johannes=20L=C3=B6thberg?= <johannes@kyriasis.com>
+Date: Sat, 24 Mar 2018 14:31:18 +0100
+Subject: [PATCH] Explicitly link against jbig2dec, openjp2, and jpeg
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Normally these are statically linked into libmupdfthird, but we delete
+those to make mupdf use the system libraries.  Previously
+zathura-pdf-mupdf explicitly linked against them, but this is
+technically incorrect since they are supposed to be in libmupdfthird so
+that was removed.  This commit essentially reverts that in the new build
+system.
+
+Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
+---
+ meson.build | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/meson.build b/meson.build
+index 3b0d7b7..ae2fc9c 100644
+--- a/meson.build
++++ b/meson.build
+@@ -22,7 +22,11 @@ cairo = dependency('cairo')
+ mupdf = cc.find_library('mupdf')
+ mupdfthird = cc.find_library('mupdfthird')
+ 
+-build_dependencies = [zathura, girara, glib, cairo, mupdf, mupdfthird]
++jbig2dec = cc.find_library('jbig2dec')
++openjp2 = cc.find_library('openjp2')
++jpeg = cc.find_library('jpeg')
++
++build_dependencies = [zathura, girara, glib, cairo, mupdf, mupdfthird, jbig2dec, openjp2, jpeg]
+ 
+ # defines
+ defines = [
+-- 
+2.16.3
+
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 1ae6b0de10..067b4061e8 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -456,6 +456,8 @@ using the DjVuLibre library.")
               (uri
                (string-append "https://pwmt.org/projects/zathura-pdf-mupdf"
                               "/download/zathura-pdf-mupdf-" version ".tar.xz"))
+              (patches
+               (search-patches "zathura-pdf-mupdf-link-to-jpeg-libraries.patch"))
               (sha256
                (base32
                 "1zbdqimav4wfgimpy3nfzl10qj7vyv23rdy2z5z7z93jwbp2rc2j"))))