gnu: libreoffice: Update to 6.4.6.2.

* gnu/packages/libreoffice.scm (libreoffice): Update to 6.4.6.2. Fix
indentation.
This commit is contained in:
Nicolas Goaziou 2020-08-30 20:40:23 +02:00
parent b39541859d
commit f8a369c36f
No known key found for this signature in database
GPG Key ID: DA00B4F048E92F2D

View File

@ -1049,7 +1049,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
(define-public libreoffice
(package
(name "libreoffice")
(version "6.4.5.2")
(version "6.4.6.2")
(source
(origin
(method url-fetch)
@ -1058,8 +1058,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
"https://download.documentfoundation.org/libreoffice/src/"
(version-prefix version 3) "/libreoffice-" version ".tar.xz"))
(sha256
(base32
"1v4ili9j8d0xfj3q69niski1v65icg8xi09ip2bsk343rawwck3a"))))
(base32 "0k5aq1pfw2rpq28nkx6syrgwqbbdn6my9bnlqi3fn8qf572q30mb"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("bison" ,bison)
@ -1142,121 +1141,121 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
("xmlsec" ,xmlsec-nss)
("zip" ,zip)))
(arguments
`(#:tests? #f ; Building the tests already fails.
`(#:tests? #f ; Building the tests already fails.
#:make-flags '("build-nocheck") ; Do not build unit tests, which fails.
#:phases
(modify-phases %standard-phases
(add-before 'configure 'prepare-src
(lambda* (#:key inputs #:allow-other-keys)
(substitute*
(list "sysui/CustomTarget_share.mk"
"solenv/gbuild/gbuild.mk"
"solenv/gbuild/platform/unxgcc.mk")
(("/bin/sh") (which "sh")))
(modify-phases %standard-phases
(add-before 'configure 'prepare-src
(lambda* (#:key inputs #:allow-other-keys)
(substitute*
(list "sysui/CustomTarget_share.mk"
"solenv/gbuild/gbuild.mk"
"solenv/gbuild/platform/unxgcc.mk")
(("/bin/sh") (which "sh")))
;; Use store references for strictly necessary commands,
;; but not for optional tools like gdb and valgrind.
(for-each (lambda (command)
(substitute* "desktop/scripts/soffice.sh"
(((format #f"~a " command))
(format #f "~a " (which command)))))
(list "dirname" "grep" "uname"))
;; Use store references for strictly necessary commands,
;; but not for optional tools like gdb and valgrind.
(for-each (lambda (command)
(substitute* "desktop/scripts/soffice.sh"
(((format #f"~a " command))
(format #f "~a " (which command)))))
(list "dirname" "grep" "uname"))
;; GPGME++ headers are installed in a gpgme++ subdirectory, but
;; files in "xmlsecurity/source/gpg/" and elsewhere expect to
;; find them on the include path without a prefix.
(substitute* '("xmlsecurity/Library_xsec_xmlsec.mk"
"comphelper/Library_comphelper.mk")
(("\\$\\$\\(INCLUDE\\)")
(string-append "$$(INCLUDE) -I"
(assoc-ref inputs "gpgme")
"/include/gpgme++")))
;; GPGME++ headers are installed in a gpgme++ subdirectory, but
;; files in "xmlsecurity/source/gpg/" and elsewhere expect to
;; find them on the include path without a prefix.
(substitute* '("xmlsecurity/Library_xsec_xmlsec.mk"
"comphelper/Library_comphelper.mk")
(("\\$\\$\\(INCLUDE\\)")
(string-append "$$(INCLUDE) -I"
(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")))
;; /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
;; script.
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(define (symlink-output src dst)
(mkdir-p (dirname (string-append out dst)))
(symlink (string-append out src) (string-append out dst)))
(define (install src dst)
(let ((dst (string-append out dst)))
(mkdir-p (dirname dst))
(copy-file src dst)))
(define (install-desktop-file app)
(let ((src (string-append "/lib/libreoffice/share/xdg/"
app ".desktop"))
(dst (string-append "/share/applications/libreoffice-"
app ".desktop")))
(substitute* (string-append out src)
(("Exec=libreoffice[0-9]+\\.[0-9]+ ")
(string-append "Exec=" out "/bin/libreoffice "))
(("Icon=libreoffice.*")
(string-append "Icon=" app "\n"))
(("LibreOffice [0-9]+\\.[0-9]+")
"LibreOffice"))
(symlink-output src dst)))
(define (install-appdata app)
(install-file (string-append
"sysui/desktop/appstream-appdata/"
"libreoffice-" app ".appdata.xml")
(string-append out "/share/appdata")))
(symlink-output "/lib/libreoffice/program/soffice"
"/bin/soffice")
(symlink-output "/lib/libreoffice/program/soffice"
"/bin/libreoffice")
(install "workdir/CustomTarget/sysui/share/libreoffice/openoffice.keys"
"/share/mime-info/libreoffice.keys")
(install "workdir/CustomTarget/sysui/share/libreoffice/openoffice.mime"
"/share/mime-info/libreoffice.mime")
(install
"workdir/CustomTarget/sysui/share/libreoffice/openoffice.org.xml"
"/share/mime/packages/libreoffice.xml")
(for-each install-desktop-file
'("base" "calc" "draw" "impress" "writer"
"math" "startcenter"))
(for-each install-appdata
'("base" "calc" "draw" "impress" "writer"))
(mkdir-p (string-append out "/share/icons/hicolor"))
(copy-recursively "sysui/desktop/icons/hicolor"
(string-append out "/share/icons/hicolor")))
#t)))
#t))
(add-after 'install 'bin-and-desktop-install
;; Create 'soffice' and 'libreoffice' symlinks to the executable
;; script.
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(define (symlink-output src dst)
(mkdir-p (dirname (string-append out dst)))
(symlink (string-append out src) (string-append out dst)))
(define (install src dst)
(let ((dst (string-append out dst)))
(mkdir-p (dirname dst))
(copy-file src dst)))
(define (install-desktop-file app)
(let ((src (string-append "/lib/libreoffice/share/xdg/"
app ".desktop"))
(dst (string-append "/share/applications/libreoffice-"
app ".desktop")))
(substitute* (string-append out src)
(("Exec=libreoffice[0-9]+\\.[0-9]+ ")
(string-append "Exec=" out "/bin/libreoffice "))
(("Icon=libreoffice.*")
(string-append "Icon=" app "\n"))
(("LibreOffice [0-9]+\\.[0-9]+")
"LibreOffice"))
(symlink-output src dst)))
(define (install-appdata app)
(install-file (string-append
"sysui/desktop/appstream-appdata/"
"libreoffice-" app ".appdata.xml")
(string-append out "/share/appdata")))
(symlink-output "/lib/libreoffice/program/soffice"
"/bin/soffice")
(symlink-output "/lib/libreoffice/program/soffice"
"/bin/libreoffice")
(install "workdir/CustomTarget/sysui/share/libreoffice/openoffice.keys"
"/share/mime-info/libreoffice.keys")
(install "workdir/CustomTarget/sysui/share/libreoffice/openoffice.mime"
"/share/mime-info/libreoffice.mime")
(install
"workdir/CustomTarget/sysui/share/libreoffice/openoffice.org.xml"
"/share/mime/packages/libreoffice.xml")
(for-each install-desktop-file
'("base" "calc" "draw" "impress" "writer"
"math" "startcenter"))
(for-each install-appdata
'("base" "calc" "draw" "impress" "writer"))
(mkdir-p (string-append out "/share/icons/hicolor"))
(copy-recursively "sysui/desktop/icons/hicolor"
(string-append out "/share/icons/hicolor")))
#t)))
#:configure-flags
(list
"--enable-release-build"
;; Avoid using all cpu cores by default
(format #f "--with-parallelism=~d" (parallel-job-count))
"--disable-fetch-external" ; disable downloads
"--with-system-libs" ; enable all --with-system-* flags
(string-append "--with-boost-libdir="
(assoc-ref %build-inputs "boost") "/lib")
;; Avoid undefined symbols required by boost::spirit
"LDFLAGS=-lboost_system"
;; Avoid a dependency on ucpp.
"--with-idlc-cpp=cpp"
;; The fonts require an external tarball (crosextrafonts).
;; They should not be needed when system fonts are available.
"--without-fonts"
;; With java, the build fails since sac.jar is missing.
"--without-java"
;; FIXME: Enable once the corresponding inputs are packaged.
"--disable-coinmp"
"--disable-firebird-sdbc" ; embedded firebird
;; XXX: PDFium support requires fetching an external tarball and
;; patching the build scripts to work with GCC5. Try enabling this
;; when our default compiler is >=GCC 6.
"--disable-pdfium"
"--without-doxygen"
"--enable-build-opensymbol")))
(list
"--enable-release-build"
;; Avoid using all cpu cores by default
(format #f "--with-parallelism=~d" (parallel-job-count))
"--disable-fetch-external" ; disable downloads
"--with-system-libs" ; enable all --with-system-* flags
(string-append "--with-boost-libdir="
(assoc-ref %build-inputs "boost") "/lib")
;; Avoid undefined symbols required by boost::spirit
"LDFLAGS=-lboost_system"
;; Avoid a dependency on ucpp.
"--with-idlc-cpp=cpp"
;; The fonts require an external tarball (crosextrafonts).
;; They should not be needed when system fonts are available.
"--without-fonts"
;; With java, the build fails since sac.jar is missing.
"--without-java"
;; FIXME: Enable once the corresponding inputs are packaged.
"--disable-coinmp"
"--disable-firebird-sdbc" ; embedded firebird
;; XXX: PDFium support requires fetching an external tarball and
;; patching the build scripts to work with GCC5. Try enabling this
;; when our default compiler is >=GCC 6.
"--disable-pdfium"
"--without-doxygen"
"--enable-build-opensymbol")))
(home-page "https://www.libreoffice.org/")
(synopsis "Office suite")
(description "LibreOffice is a comprehensive office suite. It contains