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:
parent
b39541859d
commit
f8a369c36f
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user