gnu: gfortran: Add version 9.x.
[jackhill/guix/guix.git] / gnu / packages / libreoffice.scm
index 451adb0..f8b1433 100644 (file)
@@ -1,16 +1,17 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 John Darrington <jmd@gnu.org>
 ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2017 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
-;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
-;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
-;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2018 Jonathan Brielmaier <jonathan.brielmaier@web.de>
+;;; Copyright © 2019 Chris Marusich <cmmarusich@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -32,6 +33,7 @@
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system trivial)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module ((guix licenses)
                 #:select (gpl2+ lgpl2.1+ lgpl3+ mpl1.1 mpl2.0
                           non-copyleft x11-style bsd-3))
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gperf)
   #:use-module (gnu packages gnupg)
-  #:use-module (gnu packages gnuzilla)
   #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages java)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages maths)
+  #:use-module (gnu packages nss)
   #:use-module (gnu packages openldap)
   #:use-module (gnu packages pdf)
   #:use-module (gnu packages perl)
+  #:use-module (gnu packages perl-compression)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
+  #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages rdf)
   #:use-module (gnu packages scanner)
   #:use-module (gnu packages tls)
@@ -173,11 +178,13 @@ spreadsheets and presentations.")
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "mirror://sourceforge/" name "/" name "/"
-                          name "-" version "/" name "-" version ".tar.xz"))
+      (uri (string-append "mirror://sourceforge/libwpd/libwpd/"
+                          "libwpd-" version "/libwpd-" version ".tar.xz"))
       (sha256 (base32
                "0436gnidx45a9vx114hhh216jrh57mqb9zyssyjfadagmyz6hgrj"))))
     (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags '("--disable-werror")))
     (native-inputs
      `(("doxygen" ,doxygen)
        ("pkg-config" ,pkg-config)))
@@ -260,14 +267,14 @@ way--presentation and vector drawing interfaces.")
 (define-public libwpg
   (package
     (name "libwpg")
-    (version "0.3.2")
+    (version "0.3.3")
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "mirror://sourceforge/" name "/" name "/"
-                          name "-" version "/" name "-" version ".tar.xz"))
+      (uri (string-append "mirror://sourceforge/libwpg/libwpg/"
+                          "libwpg-" version "/libwpg-" version ".tar.xz"))
       (sha256 (base32
-               "0cwc5zkp210c661l0bvk6q21jg9ak5g8gmy578w5fgfnjymz3yjp"))))
+               "074x159immf139szkswv2zapnq75p7xk10dbha2p9193hgwggcwr"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("doxygen" ,doxygen)
@@ -286,15 +293,15 @@ working with graphics in the WPG (WordPerfect Graphics) format.")
 (define-public libcmis
   (package
     (name "libcmis")
-    (version "0.5.1")
+    (version "0.5.2")
     (source
      (origin
       (method url-fetch)
       (uri (string-append "https://github.com/tdf/libcmis/releases/download/v"
-                          version "/libcmis-" version ".tar.gz"))
+                          version "/libcmis-" version ".tar.xz"))
       (sha256
        (base32
-        "03kvl8ywsv5qrxblf0m6955mmvl5q2zpb6vj51vs7ayvxhidzjva"))))
+        "18h0a2gsfxvlv03nlcfvw9bzsflq5sin9agq6za103hr0ab8vcfp"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("cppunit" ,cppunit)
@@ -312,22 +319,12 @@ working with graphics in the WPG (WordPerfect Graphics) format.")
           ;; FIXME: Man pages generation requires docbook-to-man; reenable
           ;; it once this is available.
           "--without-man"
-          ;; avoid triggering configure errors by simple inclusion of
-          ;; boost headers
+          ;; XXX: A configure test fails with GCC7 when including Boost headers.
           "--disable-werror"
           ;; During configure, the boost headers are found, but linking
           ;; fails without the following flag.
           (string-append "--with-boost="
-                         (assoc-ref %build-inputs "boost")))
-        #:phases (modify-phases %standard-phases
-                   (add-before 'build 'fix-boost-include
-                     (lambda _
-                       ;; This library moved in Boost and the compatibility
-                       ;; redirect is no longer available since version 1.68.0.
-                       (substitute* "src/libcmis/xml-utils.cxx"
-                         (("boost/uuid/sha1.hpp")
-                          "boost/uuid/detail/sha1.hpp"))
-                       #t)))))
+                         (assoc-ref %build-inputs "boost")))))
     (home-page "https://github.com/tdf/libcmis")
     (synopsis "CMIS client library")
     (description "LibCMIS is a C++ client library for the CMIS interface.  It
@@ -338,14 +335,14 @@ as Alfresco or Nuxeo.")
 (define-public libabw
   (package
     (name "libabw")
-    (version "0.1.2")
+    (version "0.1.3")
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "https://dev-www.libreoffice.org/src/" name "/"
-                          name "-" version ".tar.xz"))
+      (uri (string-append "https://dev-www.libreoffice.org/src/libabw/"
+                          "libabw-" version ".tar.xz"))
       (sha256 (base32
-               "11949iscdb99f2jplxjd39282jxcrf2fw0sqbh5dl7gqb96r8whb"))))
+               "1vbfrmnvib3cym0yyyabnd8xpx4f7wp20vnn09s6dln347fajqz7"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("doxygen" ,doxygen)
@@ -357,9 +354,6 @@ as Alfresco or Nuxeo.")
        ("libxml2" ,libxml2)))
     (inputs
      `(("boost" ,boost)))
-    (arguments
-     ;; avoid triggering configure errors by simple inclusion of boost headers
-     `(#:configure-flags '("--disable-werror")))
     (home-page "https://wiki.documentfoundation.org/DLP/Libraries/libabw")
     (synopsis "Library for parsing the AbiWord format")
     (description "Libabw is a library that parses the file format of
@@ -369,14 +363,14 @@ AbiWord documents.")
 (define-public libcdr
   (package
     (name "libcdr")
-    (version "0.1.4")
+    (version "0.1.5")
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "http://dev-www.libreoffice.org/src/" name "/"
+      (uri (string-append "https://dev-www.libreoffice.org/src/" name "/"
                           name "-" version ".tar.xz"))
       (sha256 (base32
-               "0vd6likgk51j46llybkx4wq3674xzrhp0k82220pkx9x1aqfi9z7"))))
+               "0j1skr11jwvafn0l6p37v3i4lqc8wcn489g8f7c4mqwbk94mrkka"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("cppunit" ,cppunit)
@@ -389,9 +383,6 @@ AbiWord documents.")
        ("zlib" ,zlib)))
     (inputs
      `(("boost" ,boost)))
-    (arguments
-     ;; avoid triggering a build failure due to warnings
-     `(#:configure-flags '("--disable-werror")))
     (home-page "https://wiki.documentfoundation.org/DLP/Libraries/libcdr")
     (synopsis "Library for parsing the CorelDRAW format")
     (description "Libcdr is a library that parses the file format of
@@ -401,39 +392,31 @@ CorelDRAW documents of all versions.")
 (define-public libetonyek
   (package
     (name "libetonyek")
-    (version "0.1.8")
+    (version "0.1.9")
     (source
      (origin
       (method url-fetch)
       (uri (string-append "http://dev-www.libreoffice.org/src/" name "/"
                           name "-" version ".tar.xz"))
       (sha256 (base32
-               "0bfq9rwm040xhh7b3v0gsdavwvnrz4hkwnhpggarxk70mr3j7jcx"))))
+               "0jhsbdimiyijdqriy0zzkjjgc4wi6fjimhdg4mdybrlwg7l7f5p6"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:configure-flags '("--with-mdds=1.4")
-       #:phases (modify-phases %standard-phases
-                  (add-before 'configure 'support-mdds-1.4
-                    (lambda _
-                      ;; This package already works fine with mdds 1.4, but the
-                      ;; configure check is too strict.  Taken from upstream.
-                      (substitute* "configure"
-                        (("mdds=1\\.2") "mdds=1.4")
-                        (("mdds=\"1\\.2\"") "mdds=\"1.4\""))
-                      #t)))))
+     `(#:configure-flags '("--with-mdds=1.4")))
     (native-inputs
      `(("cppunit" ,cppunit)
        ("doxygen" ,doxygen)
-       ("glm" ,glm)
        ("gperf" ,gperf)
-       ("liblangtag" ,liblangtag)
-       ("mdds" ,mdds)
        ("pkg-config" ,pkg-config)))
     (propagated-inputs ; in Requires or Requires.private field of .pkg
-     `(("librevenge" ,librevenge)
-       ("libxml2" ,libxml2)))
+     `(("liblangtag" ,liblangtag)
+       ("librevenge" ,librevenge)
+       ("libxml2" ,libxml2)
+       ("zlib" ,zlib)))
     (inputs
-     `(("boost" ,boost)))
+     `(("boost" ,boost)
+       ("glm" ,glm)
+       ("mdds" ,mdds)))
     (home-page "https://wiki.documentfoundation.org/DLP/Libraries/libetonyek")
     (synopsis "Library for parsing the Apple Keynote format")
     (description "Libetonyek is a library that parses the file format of
@@ -547,24 +530,18 @@ Microsoft Publisher documents of all versions.")
 (define-public libnumbertext
   (package
     (name "libnumbertext")
-    (version "1.0")
+    (version "1.0.5")
     (source
      (origin
        (method url-fetch)
-       (uri (string-append "https://github.com/numbertext/" name
-                           "/archive/" version ".tar.gz"))
+       (uri (string-append "https://github.com/Numbertext/libnumbertext/"
+                           "releases/download/" version
+                           "/libnumbertext-" version ".tar.xz"))
        (sha256
-        (base32
-         "0wnsn4911fdd2na8jxkcvmk04a6xw6qlviic9w4qwg9fcym6866v"))
-       (file-name (string-append name "-" version ".tar.gz"))))
+        (base32 "1xzlwhwwhvr76kfdsw5gvfjfdayz803z65h331gv5dpc9imhijg1"))))
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags '("--disable-static")))
-    (native-inputs
-     `(("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("libtool" ,libtool)
-       ("pkg-config" ,pkg-config)))
     (home-page "https://github.com/Numbertext/libnumbertext")
     (synopsis "Language-neutral @code{NUMBERTEXT} and @code{MONEYTEXT} functions")
     (description
@@ -580,11 +557,13 @@ Java.")
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "https://dev-www.libreoffice.org/src/" name "/"
-                          name "-" version ".tar.xz"))
+      (uri (string-append "https://dev-www.libreoffice.org/src/libpagemaker/"
+                          "libpagemaker-" version ".tar.xz"))
       (sha256 (base32
                "17ai8ajffr0ixxmmcv3k5vgjlcsix38ldb4fw2arild70pbsrbb6"))))
     (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags '("--disable-werror")))
     (native-inputs
      `(("doxygen" ,doxygen)
        ("pkg-config" ,pkg-config)))
@@ -603,14 +582,14 @@ created by PageMaker version 6.x and 7.")
 (define-public libvisio
   (package
     (name "libvisio")
-    (version "0.1.6")
+    (version "0.1.7")
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "http://dev-www.libreoffice.org/src/" name "/"
-                          name "-" version ".tar.xz"))
+      (uri (string-append "http://dev-www.libreoffice.org/src/libvisio/"
+                          "libvisio-" version ".tar.xz"))
       (sha256 (base32
-               "1yahpfl13qk6178irv8jn5ppxdn7isafqisyqsdw0lqxcz9h447y"))))
+               "0k7adcbbf27l7n453cca1m6s9yj6qvb5j6bsg2db09ybf3w8vbwg"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("cppunit" ,cppunit)
@@ -637,8 +616,8 @@ Microsoft Visio documents of all versions.")
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "mirror://sourceforge/libwpd/" name "/"
-                          name "-" version "/" name "-" version ".tar.xz"))
+      (uri (string-append "mirror://sourceforge/libwpd/libodfgen/"
+                          "libodfgen-" version "/libodfgen-" version ".tar.xz"))
       (sha256 (base32
                "0cdq48wlpp8m0qmndybv64r0m4vh0qsqx69cn6ms533cjlgljgij"))))
     (build-system gnu-build-system)
@@ -664,14 +643,14 @@ text documents, vector drawings, presentations and spreadsheets.")
 (define-public libmwaw
   (package
     (name "libmwaw")
-    (version "0.3.14")
+    (version "0.3.15")
     (source
      (origin
       (method url-fetch)
-      (uri (string-append "mirror://sourceforge/" name "/" name "/" name "-"
-                          version "/" name "-" version ".tar.xz"))
+      (uri (string-append "mirror://sourceforge/libmwaw/libmwaw/libmwaw-"
+                          version "/libmwaw-" version ".tar.xz"))
       (sha256 (base32
-               "1s9wyf8pyh3fbazq2d2b6fgi7s7bid60viw2xbdkmn2ywlfbza5c"))))
+               "1cdhm9yhanyv3w4vr73zhgyynmkhhkp3dyld7m11jd2yy04vnh04"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("doxygen" ,doxygen)
@@ -772,15 +751,17 @@ Zoner Draw version 4 and 5.")
 (define-public hunspell
   (package
     (name "hunspell")
-    (version "1.6.2")
+    (version "1.7.0")
     (source
-     (origin
-      (method url-fetch)
-      (uri (string-append "https://github.com/hunspell/hunspell/archive/v"
-                          version ".tar.gz"))
-      (sha256 (base32
-               "1i7lsv2cm0713ia3j5wjkcrhpfp3lqpjpwp4d3v18n7ycaqcxn9w"))
-      (file-name (string-append name "-" version ".tar.gz"))))
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/hunspell/hunspell")
+               (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+         (base32
+          "0qxlkd012r45ppd21kldbq9k5ac5nmxz290z6m2kch9l56v768k1"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("autoconf" ,autoconf)
@@ -921,14 +902,14 @@ and to return information on pronunciations, meanings and synonyms.")
 (define-public libqxp
   (package
     (name "libqxp")
-    (version "0.0.1")
+    (version "0.0.2")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://dev-www.libreoffice.org/src/libqxp/"
                                   "libqxp-" version ".tar.xz"))
               (sha256
                (base32
-                "0wswz49y0lqwqw2nj9j7jaj5ag88hapcz8czgkxax57zhihpy9cc"))))
+                "0p4lb84m05wqd8qr8ni9sp80ivlm83ffn0nxiv4m42hj22qvcdz1"))))
     (build-system gnu-build-system)
     (inputs
      `(("boost" ,boost)
@@ -948,7 +929,7 @@ converting QuarkXPress file format.  It supports versions 3.1 to 4.1.")
 (define-public libreoffice
   (package
     (name "libreoffice")
-    (version "6.1.3.2")
+    (version "6.1.5.2")
     (source
      (origin
        (method url-fetch)
@@ -958,7 +939,7 @@ converting QuarkXPress file format.  It supports versions 3.1 to 4.1.")
          (version-prefix version 3) "/libreoffice-" version ".tar.xz"))
        (sha256
         (base32
-         "0i4gf3qi16fg7dxq2l4vhkwh4f5lx7xd1ilpzcw26vccqkv3hvyl"))
+         "1wh8qhqkmb89nmfcb0w6iwpdzxwqr7c5kzxgpk4gy60xin6gwjgb"))
        (patches
         (append (list (origin
                         ;; Support newer versions of Orcus and MDDS.  These patches
@@ -984,38 +965,9 @@ converting QuarkXPress file format.  It supports versions 3.1 to 4.1.")
                         (file-name "libreoffice-mdds.patch")
                         (sha256
                          (base32
-                          "0apbmammmp4pk473xiv5vk50r4c5gjvqzf9jkficksvz58q6114f")))
-                      ;; The Poppler API changed rapidly in the versions leading 0.72.
-                      ;; Thus, we need several patches from upstream, each adapting to
-                      ;; different Poppler changes since version 0.68.
-                      (origin
-                        (method url-fetch)
-                        (uri (string-append "https://github.com/LibreOffice/core/commit/"
-                                            "1688a395d05125b83eac6cd5c43f0e3f2f66c491"
-                                            ".patch"))
-                        (file-name "libreoffice-poppler-compat.patch")
-                        (sha256
-                         (base32
-                          "0ia5avmj772mrgs6m4qqf01hs8hzpy3nafidj7w7gqx2zz2s5ih9")))
-                      (origin
-                        (method url-fetch)
-                        (uri (string-append "https://github.com/LibreOffice/core/commit/"
-                                            "5e8bdd9203dd642111c62a6668ee665a20d4ba19"
-                                            ".patch"))
-                        (file-name "libreoffice-poppler-gbool.patch")
-                        (sha256
-                         (base32
-                          "19kc74h5vnk48l2vny8zmm2lkxpwc7g8n9d3wwpg99748dvbmikd")))
-                      (origin
-                        (method url-fetch)
-                        (uri (string-append "https://github.com/LibreOffice/core/commit/"
-                                            "8ff41a26caf51544699863c89598d37d93dc1b21"
-                                            ".patch"))
-                        (file-name "libreoffice-poppler-0.71.patch")
-                        (sha256
-                         (base32
-                          "1dsd0gynjf7d6412dd2sx70xa2s8kld7ibyjdkwg5w9hhi2zxw2f"))))
-                (search-patches "libreoffice-icu.patch"
+                          "0apbmammmp4pk473xiv5vk50r4c5gjvqzf9jkficksvz58q6114f"))))
+                (search-patches "libreoffice-boost.patch"
+                                "libreoffice-icu.patch"
                                 "libreoffice-glm.patch")))
        (modules '((guix build utils)))
        (snippet
@@ -1028,7 +980,7 @@ converting QuarkXPress file format.  It supports versions 3.1 to 4.1.")
     (build-system glib-or-gtk-build-system)
     (native-inputs
      `(("bison" ,bison)
-       ("cppunit" ,cppunit-1.14)
+       ("cppunit" ,cppunit)
        ("flex" ,flex)
        ("pkg-config" ,pkg-config)
        ("python" ,python-wrapper)
@@ -1098,6 +1050,7 @@ converting QuarkXPress file format.  It supports versions 3.1 to 4.1.")
        ("unixodbc" ,unixodbc)
        ("unzip" ,unzip)
        ("vigra" ,vigra)
+       ("xdg-utils" ,xdg-utils)
        ("xmlsec" ,xmlsec-nss)
        ("zip" ,zip)))
     (arguments
@@ -1130,6 +1083,13 @@ converting QuarkXPress file format.  It supports versions 3.1 to 4.1.")
                                  (assoc-ref inputs "gpgme")
                                  "/include/gpgme++")))
 
+               ;; /usr/bin/xdg-open doesn't exist on Guix System.
+               (substitute* '("shell/source/unix/exec/shellexec.cxx"
+                              "shell/source/unix/misc/senddoc.sh")
+                 (("/usr/bin/xdg-open")
+                  (string-append (assoc-ref inputs "xdg-utils")
+                                 "/bin/xdg-open")))
+
                #t))
            (add-after 'install 'bin-and-desktop-install
              ;; Create 'soffice' and 'libreoffice' symlinks to the executable