diff mbox series

[bug#57251] gnu: mupdf: Update to 1.20.3.

Message ID 20220816223119.3026859-1-contact@phfrohring.com
State Accepted
Headers show
Series [bug#57251] gnu: mupdf: Update to 1.20.3. | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Pierre-Henry Fröhring Aug. 16, 2022, 10:31 p.m. UTC
* Copy/paste is fixed.

The build now uses the patched version of freeglut that is included in the
thirdparty directory so that copy/paste works.
---
 gnu/packages/pdf.scm | 127 +++++++++++++++++++++++--------------------
 1 file changed, 69 insertions(+), 58 deletions(-)

Comments

Marius Bakke Aug. 29, 2022, 3:53 p.m. UTC | #1
Pierre-Henry Fröhring <contact@phfrohring.com> skriver:

> * Copy/paste is fixed.
>
> The build now uses the patched version of freeglut that is included in the
> thirdparty directory so that copy/paste works.

Pushed as f26b9d5ced516343d0c6bb8534d2043f34b7ddd7!

I filled in the commit message for you.  In future patches, please list
what changes are done in the various fields (snippet, arguments) etc.
See the commit log for inspiration.

I also (mostly) reverted the indentation changes to make it easier to
see what went on in the patch.  Feel free to submit it separately.

Thanks!
Pierre-Henry Fröhring Aug. 29, 2022, 8:51 p.m. UTC | #2
Hello Marius,

> I filled in the commit message for you.  In future patches, please
> list what changes are done in the various fields (snippet, arguments)
> etc.  See the commit log for inspiration.  I also (mostly) reverted
> the indentation changes to make it easier to see what went on in the
> patch.  Feel free to submit it separately.

Great. I included these remarks into our little guide about building
packages.

Thanks!

— Pierre-Henry Fröhring
— GPG signing key: 4E452C9CA3456D9BF5CD2DA09856B12E14312667
diff mbox series

Patch

diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 39266a2822..f21a30e805 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -731,66 +731,77 @@  (define-public python-pydyf
 (define-public mupdf
   (package
     (name "mupdf")
-    (version "1.19.1")
-    (source
-     (origin
-       (method url-fetch)
-       (uri (string-append "https://mupdf.com/downloads/archive/"
-                           "mupdf-" version "-source.tar.xz"))
-       (sha256
-        (base32 "0gl0wf16m1cafs20h3v1f4ysf7zlbijjyd6s1r1krwvlzriwdsmm"))
-       (modules '((guix build utils)))
-       (snippet
-        #~(begin
-            ;; Remove bundled software.
-            (let* ((keep (list "extract"
-                               "lcms2")) ; different from our lcms2 package
-                   (from "thirdparty")
-                   (kept (string-append from "~temp")))
-              (mkdir-p kept)
-              (for-each (lambda (file)
-                          (rename-file (string-append from "/" file)
-                                       (string-append kept "/" file)))
-                        keep)
-              (delete-file-recursively from)
-              (rename-file kept from))))))
+    (version "1.20.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://mupdf.com/downloads/archive/"
+                                  "mupdf-" version "-source.tar.lz"))
+              (sha256
+               (base32
+                "0s0qclxxdjis04mczgz0fhfpv0j8llk48g82zlfrk0daz0zgcwvg"))
+              (modules '((guix build utils)))
+              (snippet #~(begin
+                           (let* ((keep (list "extract" "freeglut" "lcms2"))
+                                  (from "thirdparty")
+                                  (kept (string-append from "~temp")))
+                             (mkdir-p kept)
+                             (for-each (lambda (file)
+                                         (rename-file (string-append from "/"
+                                                                     file)
+                                                      (string-append kept "/"
+                                                                     file)))
+                                       keep)
+                             (delete-file-recursively from)
+                             (rename-file kept from))))))
     (build-system gnu-build-system)
-    (inputs
-     (list curl
-           freeglut
-           freetype
-           gumbo-parser
-           harfbuzz
-           jbig2dec
-           libjpeg-turbo
-           libx11
-           libxext
-           mujs
-           openjpeg
-           openssl
-           zlib))
-    (native-inputs
-     (list pkg-config))
+    (inputs (list curl
+                  libxrandr
+                  libxi
+                  freeglut ;for GL/gl.h
+                  freetype
+                  gumbo-parser
+                  harfbuzz
+                  jbig2dec
+                  libjpeg-turbo
+                  libx11
+                  libxext
+                  mujs
+                  openjpeg
+                  openssl
+                  zlib))
+    (native-inputs (list pkg-config))
     (arguments
-     (list
-       #:tests? #f                      ; no check target
-       #:make-flags
-       #~(list "verbose=yes"
-               (string-append "CC=" #$(cc-for-target))
-               "XCFLAGS=-fpic"
-               "USE_SYSTEM_LIBS=yes"
-               "USE_SYSTEM_MUJS=yes"
-               "shared=yes"
-               ;; Even with the linkage patch we must fix RUNPATH.
-               (string-append "LDFLAGS=-Wl,-rpath=" #$output "/lib")
-               (string-append "prefix=" #$output))
-        #:phases
-        #~(modify-phases %standard-phases
-            (delete 'configure))))      ; no configure script
+     (list #:tests? #f ;no check target
+           #:make-flags #~(list "verbose=yes"
+                           (string-append "CC="
+                                          #$(cc-for-target))
+                           "XCFLAGS=-fpic"
+                           "USE_SYSTEM_FREETYPE=yes"
+                           "USE_SYSTEM_GUMBO=yes"
+                           "USE_SYSTEM_HARFBUZZ=yes"
+                           "USE_SYSTEM_JBIG2DEC=yes"
+                           "USE_SYSTEM_JPEGXR=no # not available"
+                           "USE_SYSTEM_LCMS2=no # lcms2mt is strongly preferred"
+                           "USE_SYSTEM_LIBJPEG=yes"
+                           "USE_SYSTEM_MUJS=no # not available"
+                           "USE_SYSTEM_OPENJPEG=yes"
+                           "USE_SYSTEM_ZLIB=yes"
+                           "USE_SYSTEM_GLUT=no"
+                           "USE_SYSTEM_CURL=yes"
+                           "USE_SYSTEM_LEPTONICA=yes"
+                           "USE_SYSTEM_TESSERACT=yes"
+                           "USE_SYSTEM_MUJS=yes"
+                           "shared=yes"
+                           (string-append "LDFLAGS=-Wl,-rpath="
+                                          #$output "/lib")
+                           (string-append "prefix="
+                                          #$output))
+           #:phases #~(modify-phases %standard-phases
+                        (delete 'configure)))) ;no configure script
     (home-page "https://mupdf.com")
     (synopsis "Lightweight PDF viewer and toolkit")
     (description
-      "MuPDF is a C library that implements a PDF and XPS parsing and
+     "MuPDF is a C library that implements a PDF and XPS parsing and
 rendering engine.  It is used primarily to render pages into bitmaps,
 but also provides support for other operations such as searching and
 listing the table of contents and hyperlinks.
@@ -799,9 +810,9 @@  (define-public mupdf
 line tools for batch rendering @command{pdfdraw}, rewriting files
 @command{pdfclean}, and examining the file structure @command{pdfshow}.")
     (license (list license:agpl3+
-                   license:bsd-3 ; resources/cmaps
-                   license:x11 ; thirdparty/lcms2
-                   license:silofl1.1 ; resources/fonts/{han,noto,sil,urw}
+                   license:bsd-3 ;resources/cmaps
+                   license:x11 ;thirdparty/lcms2
+                   license:silofl1.1 ;resources/fonts/{han,noto,sil,urw}
                    license:asl2.0)))) ; resources/fonts/droid
 
 (define-public qpdf