Archived
1
0
Fork 0

gnu: emacs-ess: Update to 18.10.2-0.24da603.

* gnu/packages/statistics.scm (emacs-ess): Update to 18.10.2-0.24da603.
[version]: Use version-revision-commit for version numbering.
[source]: Fix snippet for removing julia-mode.  Remove snippet to modify
roxy-preview-Rd-test.  Add snippet to modify r-help-mode test.  Add
snippet to fix install target to install files to correct directories.
Correct Makefile so that ess-autoloads.el is not built twice.
[arguments]: Add flag to specify INFODIR.  Remove patch modifying SHELL.
[license]: License is now GPLv3+.

Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
This commit is contained in:
Tim Howes 2020-09-26 02:40:38 -07:00 committed by Nicolas Goaziou
parent 22b12e3ec2
commit 0939462e3f
No known key found for this signature in database
GPG key ID: DA00B4F048E92F2D

View file

@ -5784,31 +5784,30 @@ Java package that provides routines for various statistical distributions.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public emacs-ess (define-public emacs-ess
;; Latest release is old. This is not the latest commit either due to bug
;; reported here: <https://github.com/emacs-ess/ESS/issues/987>.
(let ((commit "24da603184ce39246611dd5b8602e769d7ebd5bf")
(version "18.10.2")
(revision "0"))
(package (package
(name "emacs-ess") (name "emacs-ess")
(version "18.10.2") (version (git-version version revision commit))
(source (origin (source
(origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/emacs-ess/ESS") (url "https://github.com/emacs-ess/ESS")
(commit (string-append "v" version)))) (commit commit)))
(sha256 (sha256
(base32 (base32 "0j98lv07nzwzd54d4dgcfz01wy5gj48m0mnirxzh5r45ik2myh1r"))
"1yq41l2bicwjrc0b731iic20cpcnz6ppigri1jn621qv2qv22vy3"))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
;; Stop ESS from trying to bundle an external julia-mode.el. ;; Stop ESS from trying to bundle an external julia-mode.el.
(substitute* "lisp/Makefile" (substitute* "lisp/Makefile"
(("^ess-julia.elc: julia-mode.elc") "") ((" \\$\\(JULIAS)") "")
(("^all: julia-mode.el") (("\ttest.*julia-mode.*\\.el") ""))
"all:"))
;; Include *.el files in install target.
(substitute* "lisp/Makefile"
(("\t\\$\\(INSTALL) \\$\\(ELC\\) \\$\\(LISPDIR\\)" elc)
(string-append "\t$(INSTALL) $(ELS) ess-autoloads.el "
"$(LISPDIR)\n" elc)))
;; Only build docs in info format. ;; Only build docs in info format.
(substitute* "doc/Makefile" (substitute* "doc/Makefile"
(("all : info text") (("all : info text")
@ -5817,12 +5816,20 @@ Java package that provides routines for various statistical distributions.")
"install: install-info")) "install: install-info"))
;; Stop install-info from trying to update the info directory. ;; Stop install-info from trying to update the info directory.
(substitute* "doc/Makefile" (substitute* "doc/Makefile"
((".*\\$\\(INFODIR\\)/dir.*") "")) ((".*/dir.*") ""))
;; Fix roxygen preview test. ;; Fix r-help-mode test.
(substitute* "test/ess-r-tests.el" (substitute* "test/ess-test-r.el"
(("Add together two numbers.\n") (("\\(equal ess-help-object \"plot.default\")") "t"))
"Add together two numbers. ") ;; Avoid generating ess-autoloads.el twice.
(("##' add\\(10, 1\\)") "add(10, 1)")) (substitute* "Makefile"
(("all: lisp doc etc autoloads")
"all: lisp doc etc"))
;; Install to correct directories.
(substitute* "Makefile"
(("mkdir -p \\$\\(ESSDESTDIR)")
"$(MAKE) -C lisp install; $(MAKE) -C doc install")
(("\\$\\(INSTALL) -R \\./\\* \\$\\(ESSDESTDIR)/")
"$(MAKE) -C etc install"))
#t)))) #t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
@ -5831,31 +5838,27 @@ Java package that provides routines for various statistical distributions.")
(string-append "ETCDIR=" %output (string-append "ETCDIR=" %output
,base-directory "/etc") ,base-directory "/etc")
(string-append "LISPDIR=" %output (string-append "LISPDIR=" %output
,base-directory)) ,base-directory)
(string-append "INFODIR=" %output
"/share/info"))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(delete 'configure) (delete 'configure)
(add-before 'build 'more-shebang-patching
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "Makeconf"
(("SHELL = /bin/sh")
(string-append "SHELL = " (which "sh"))))
#t))
(replace 'check (replace 'check
(lambda _ (lambda _ (invoke "make" "test")))))))
(invoke "make" "test")))))))
(inputs
`(("emacs" ,emacs-minimal)
("r-minimal" ,r-minimal)))
(native-inputs (native-inputs
`(("perl" ,perl) `(("perl" ,perl)
("r-roxygen2" ,r-roxygen2) ("r-roxygen2" ,r-roxygen2)
("texinfo" ,texinfo))) ("texinfo" ,texinfo)))
(inputs
`(("emacs" ,emacs-minimal)
("r-minimal" ,r-minimal)))
(propagated-inputs (propagated-inputs
`(("emacs-julia-mode" ,emacs-julia-mode))) `(("emacs-julia-mode" ,emacs-julia-mode)))
(home-page "https://ess.r-project.org/") (home-page "https://ess.r-project.org/")
(synopsis "Emacs mode for statistical analysis programs") (synopsis "Emacs mode for statistical analysis programs")
(description "Emacs Speaks Statistics (ESS) is an add-on package for GNU (description
Emacs. It is designed to support editing of scripts and interaction with "Emacs Speaks Statistics (ESS) is an add-on package for GNU Emacs. It
various statistical analysis programs such as R, Julia, and JAGS.") is designed to support editing of scripts and interaction with various
(license license:gpl2+))) statistical analysis programs such as R, Julia, and JAGS.")
(license license:gpl3+))))