guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#43208] [PATCH v3] gnu: emacs-ess: Update to 18.10.2-0.24da603.


From: Tim Howes
Subject: [bug#43208] [PATCH v3] gnu: emacs-ess: Update to 18.10.2-0.24da603.
Date: Sat, 26 Sep 2020 02:40:38 -0700

* 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+.
---

I corrected part of the Makefile that was causing ess-autoloads.el to be
built twice, which I think was causing the file locking issue. This
should now build reliably. I also selected a slightly older commit of
ESS to avoid this bug:
https://github.com/emacs-ess/ESS/issues/987#issuecomment-590822386

 gnu/packages/statistics.scm | 51 +++++++++++++++++++------------------
 1 file changed, 26 insertions(+), 25 deletions(-)

diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index 03a63e6ba1..b78ed4e6f5 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -5784,31 +5784,28 @@ Java package that provides routines for various 
statistical distributions.")
     (license license:gpl2+)))
 
 (define-public emacs-ess
+  (let ((commit "24da603184ce39246611dd5b8602e769d7ebd5bf")
+        (version "18.10.2")
+        (revision "0"))
   (package
     (name "emacs-ess")
-    (version "18.10.2")
+    (version (git-version version revision commit))
     (source (origin
               (method git-fetch)
               (uri (git-reference
                     (url "https://github.com/emacs-ess/ESS";)
-                    (commit (string-append "v" version))))
+                    (commit commit)))
               (sha256
                (base32
-                "1yq41l2bicwjrc0b731iic20cpcnz6ppigri1jn621qv2qv22vy3"))
+                "0j98lv07nzwzd54d4dgcfz01wy5gj48m0mnirxzh5r45ik2myh1r"))
               (file-name (git-file-name name version))
               (modules '((guix build utils)))
               (snippet
                '(begin
                   ;; Stop ESS from trying to bundle an external julia-mode.el.
                   (substitute* "lisp/Makefile"
-                    (("^ess-julia.elc: julia-mode.elc") "")
-                    (("^all: 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)))
+                    ((" \\$\\(JULIAS)") "")
+                    (("\ttest.*julia-mode.*\\.el") ""))
                   ;; Only build docs in info format.
                   (substitute* "doc/Makefile"
                     (("all  : info text")
@@ -5817,12 +5814,20 @@ Java package that provides routines for various 
statistical distributions.")
                      "install: install-info"))
                   ;; Stop install-info from trying to update the info 
directory.
                   (substitute* "doc/Makefile"
-                    ((".*\\$\\(INFODIR\\)/dir.*") ""))
-                  ;; Fix roxygen preview test.
-                  (substitute* "test/ess-r-tests.el"
-                               (("Add together two numbers.\n")
-                                "Add together two numbers. ")
-                               (("##' add\\(10, 1\\)") "add(10, 1)"))
+                    ((".*/dir.*") ""))
+                  ;; Fix r-help-mode test.
+                  (substitute* "test/ess-test-r.el"
+                    (("\\(equal ess-help-object \"plot.default\")") "t"))
+                  ;; Avoid generating ess-autoloads.el twice.
+                  (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))))
     (build-system gnu-build-system)
     (arguments
@@ -5831,16 +5836,12 @@ Java package that provides routines for various 
statistical distributions.")
                             (string-append "ETCDIR=" %output
                                            ,base-directory "/etc")
                             (string-append "LISPDIR=" %output
-                                           ,base-directory))
+                                           ,base-directory)
+                            (string-append "INFODIR=" %output
+                                           "/share/info"))
          #:phases
          (modify-phases %standard-phases
            (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
              (lambda _
                (invoke "make" "test")))))))
@@ -5858,4 +5859,4 @@ Java package that provides routines for various 
statistical distributions.")
     (description "Emacs Speaks Statistics (ESS) is an add-on package for GNU
 Emacs.  It is designed to support editing of scripts and interaction with
 various statistical analysis programs such as R, Julia, and JAGS.")
-    (license license:gpl2+)))
+    (license license:gpl3+))))
-- 
2.28.0







reply via email to

[Prev in Thread] Current Thread [Next in Thread]