gnu: asymptote: Update to 2.78.

* gnu/packages/plotutils.scm (asymptote): Update to 2.78.
[source]<snippet>: Delete bundled RapidJSON.
[arguments]<#:phases>: Add a phase to use system RapidJSON.
Update location for modified ".cpp" file.
[native-inputs]: Add CMAKE.
This commit is contained in:
Nicolas Goaziou 2022-02-15 13:26:57 +01:00
parent 04ac1a248c
commit d1cc373033
No known key found for this signature in database
GPG key ID: DA00B4F048E92F2D

View file

@ -32,6 +32,7 @@ (define-module (gnu packages plotutils)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages bdw-gc) #:use-module (gnu packages bdw-gc)
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages cmake)
#:use-module (gnu packages emacs) #:use-module (gnu packages emacs)
#:use-module (gnu packages xorg) #:use-module (gnu packages xorg)
#:use-module (gnu packages image) #:use-module (gnu packages image)
@ -268,14 +269,19 @@ (define-public ploticus
(define-public asymptote (define-public asymptote
(package (package
(name "asymptote") (name "asymptote")
(version "2.77") (version "2.78")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/asymptote/" (uri (string-append "mirror://sourceforge/asymptote/"
version "/asymptote-" version ".src.tgz")) version "/asymptote-" version ".src.tgz"))
(sha256 (sha256
(base32 "0v5r8g3b7f2dxsiba4f3yrgfkigr5nsdhg6jrdsnqrmf6y7dqgdf")))) (base32 "1kmx21nb7pn7z9prb684wrig5pn46w82hd31dj74nz4amqwz60mg"))
(modules '((guix build utils)))
(snippet
;; Remove bundled RapidJSON.
#~(begin
(delete-file-recursively "LspCpp/third_party/rapidjson")))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; Note: The 'asy' binary retains a reference to docdir for use with its ;; Note: The 'asy' binary retains a reference to docdir for use with its
;; "help" command in interactive mode, so adding a "doc" output is not ;; "help" command in interactive mode, so adding a "doc" output is not
@ -284,6 +290,7 @@ (define-public asymptote
(list autoconf (list autoconf
automake automake
boost boost
cmake
emacs-minimal emacs-minimal
ghostscript ;for tests ghostscript ;for tests
perl perl
@ -344,6 +351,11 @@ (define-public asymptote
(substitute* (list "configure.ac") (substitute* (list "configure.ac")
(("/usr/include/tirpc") (("/usr/include/tirpc")
(search-input-directory inputs "include/tirpc"))))) (search-input-directory inputs "include/tirpc")))))
(add-after 'unpack 'unbundle-rapidjson
(lambda* (#:key inputs #:allow-other-keys)
(substitute* (list "Makefile.in")
(("\\$\\(CMAKE\\)" all)
(string-append all " -DUSE_SYSTEM_RAPIDJSON=ON")))))
(add-after 'unpack 'fix-includes (add-after 'unpack 'fix-includes
(lambda _ (lambda _
(substitute* (find-files "." "\\.in$") (substitute* (find-files "." "\\.in$")
@ -354,7 +366,7 @@ (define-public asymptote
(("#include \"xstream.h\"") "#include \"../xstream.h\"")) (("#include \"xstream.h\"") "#include \"../xstream.h\""))
(substitute* "v3dfile.h" (substitute* "v3dfile.h"
(("#include <prc/oPRCFile.h>") "#include \"prc/oPRCFile.h\"")) (("#include <prc/oPRCFile.h>") "#include \"prc/oPRCFile.h\""))
(substitute* "LspCpp/LibLsp/lsp/ParentProcessWatcher.cpp" (substitute* "LspCpp/src/lsp/ParentProcessWatcher.cpp"
(("#include <boost/process.hpp>" all) (("#include <boost/process.hpp>" all)
(string-append "#include <algorithm>\n" all))))) (string-append "#include <algorithm>\n" all)))))
(replace 'bootstrap (replace 'bootstrap