summary refs log tree commit diff
path: root/gnu/packages/scheme.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/scheme.scm')
-rw-r--r--gnu/packages/scheme.scm151
1 files changed, 74 insertions, 77 deletions
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index 41a7bf5328..16b1b5586c 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -205,58 +205,57 @@ features an integrated Emacs-like editor and a large runtime library.")
     (build-system gnu-build-system)
     (arguments
      `(#:test-target "test"
-       #:phases (alist-replace
-                 'configure
-                 (lambda* (#:key outputs #:allow-other-keys)
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
 
-                   (substitute* "configure"
-                     (("^shell=.*$")
-                      (string-append "shell=" (which "bash") "\n")))
+             (substitute* "configure"
+               (("^shell=.*$")
+                (string-append "shell=" (which "bash") "\n")))
 
-                   ;; Since libgc's pthread redirects are used, we end up
-                   ;; using libgc symbols, so we must link against it.
-                   ;; Reported on 2013-06-25.
-                   (substitute* "api/pthread/src/Makefile"
-                     (("^EXTRALIBS[[:blank:]]*=(.*)$" _ value)
-                      (string-append "EXTRALIBS = "
-                                     (string-trim-right value)
-                                     " -l$(GCLIB)_fth-$(RELEASE)"
-                                     " -Wl,-rpath=" (assoc-ref outputs "out")
-                                     "/lib/bigloo/" ,version)))
+             ;; Since libgc's pthread redirects are used, we end up
+             ;; using libgc symbols, so we must link against it.
+             ;; Reported on 2013-06-25.
+             (substitute* "api/pthread/src/Makefile"
+               (("^EXTRALIBS[[:blank:]]*=(.*)$" _ value)
+                (string-append "EXTRALIBS = "
+                               (string-trim-right value)
+                               " -l$(GCLIB)_fth-$(RELEASE)"
+                               " -Wl,-rpath=" (assoc-ref outputs "out")
+                               "/lib/bigloo/" ,version)))
 
-                   ;; Those variables are used by libgc's `configure'.
-                   (setenv "SHELL" (which "sh"))
-                   (setenv "CONFIG_SHELL" (which "sh"))
+             ;; Those variables are used by libgc's `configure'.
+             (setenv "SHELL" (which "sh"))
+             (setenv "CONFIG_SHELL" (which "sh"))
 
-                   ;; ... but they turned out to be overridden later, so work
-                   ;; around that.
-                   (substitute* (find-files "gc" "^configure-gc")
-                     (("sh=/bin/sh")
-                      (string-append "sh=" (which "sh"))))
+             ;; ... but they turned out to be overridden later, so work
+             ;; around that.
+             (substitute* (find-files "gc" "^configure-gc")
+               (("sh=/bin/sh")
+                (string-append "sh=" (which "sh"))))
 
-                   ;; The `configure' script doesn't understand options
-                   ;; of those of Autoconf.
-                   (let ((out (assoc-ref outputs "out")))
-                     (zero?
-                      (system* "./configure"
-                               (string-append "--prefix=" out)
-                               ;; FIXME: Currently fails, see
-                               ;; <http://article.gmane.org/gmane.lisp.scheme.bigloo/6126>.
-                               ;; "--customgc=no" ; use our libgc
-                               (string-append"--mv=" (which "mv"))
-                               (string-append "--rm=" (which "rm"))
-                               (string-append "--ldflags=-Wl,-rpath="
-                                              (assoc-ref outputs "out")
-                                              "/lib/bigloo/" ,version)))))
-                 (alist-cons-after
-                  'install 'install-emacs-modes
-                  (lambda* (#:key outputs #:allow-other-keys)
-                    (let* ((out (assoc-ref outputs "out"))
-                           (dir (string-append out "/share/emacs/site-lisp")))
-                      (zero? (system* "make" "-C" "bmacs" "all" "install"
-                                      (string-append "EMACSBRAND=emacs24")
-                                      (string-append "EMACSDIR=" dir)))))
-                  %standard-phases))))
+             ;; The `configure' script doesn't understand options
+             ;; of those of Autoconf.
+             (let ((out (assoc-ref outputs "out")))
+               (zero?
+                (system* "./configure"
+                         (string-append "--prefix=" out)
+                         ;; FIXME: Currently fails, see
+                         ;; <http://article.gmane.org/gmane.lisp.scheme.bigloo/6126>.
+                         ;; "--customgc=no" ; use our libgc
+                         (string-append"--mv=" (which "mv"))
+                         (string-append "--rm=" (which "rm"))
+                         (string-append "--ldflags=-Wl,-rpath="
+                                        (assoc-ref outputs "out")
+                                        "/lib/bigloo/" ,version))))))
+         (add-after 'install 'install-emacs-modes
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (dir (string-append out "/share/emacs/site-lisp")))
+               (zero? (system* "make" "-C" "bmacs" "all" "install"
+                               (string-append "EMACSBRAND=emacs24")
+                               (string-append "EMACSDIR=" dir)))))))))
     (inputs
      `(("emacs" ,emacs)                      ;UDE needs the X version of Emacs
 
@@ -283,32 +282,30 @@ Scheme and C programs and between Scheme and Java programs.")
 (define-public hop
   (package
     (name "hop")
-    (version "2.4.0")
+    (version "2.5.1")
     (source (origin
              (method url-fetch)
              (uri (string-append "ftp://ftp-sop.inria.fr/indes/fp/Hop/hop-"
                                  version ".tar.gz"))
              (sha256
               (base32
-               "1v2r4ga58kk1sx0frn8qa8ccmjpic9csqzpk499wc95y9c4b1wy3"))
-             (patches (search-patches "hop-bigloo-4.0b.patch"
-                                      "hop-linker-flags.patch"))))
+               "1bvp7pc71bln5yvfj87s8750c6l53wjl6f8m12v62q9926adhwys"))
+             (patches (search-patches "hop-linker-flags.patch"))))
     (build-system gnu-build-system)
     (arguments
      `(#:phases
-       (alist-replace
-        'configure
-        (lambda* (#:key outputs #:allow-other-keys)
-          (let ((out (assoc-ref outputs "out")))
-            (zero?
-             (system* "./configure"
-                      (string-append "--prefix=" out)
-                      (string-append "--blflags="
-                                     ;; user flags completely override useful
-                                     ;; default flags, so repeat them here.
-                                     "-copt \\$(CPICFLAGS) -L\\$(BUILDLIBDIR) "
-                                     "-ldopt -Wl,-rpath," out "/lib")))))
-        %standard-phases)
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (zero?
+                (system* "./configure"
+                         (string-append "--prefix=" out)
+                         (string-append "--blflags="
+                                        ;; user flags completely override useful
+                                        ;; default flags, so repeat them here.
+                                        "-copt \\$(CPICFLAGS) -L\\$(BUILDLIBDIR) "
+                                        "-ldopt -Wl,-rpath," out "/lib")))))))
        #:tests? #f))                                ; no test suite
     (inputs `(("avahi" ,avahi)
               ("bigloo" ,bigloo)
@@ -517,17 +514,17 @@ of libraries.")
 (define-public gambit-c
   (package
     (name "gambit-c")
-    (version "4.7.4")
+    (version "4.8.5")
     (source
      (origin
        (method url-fetch)
        (uri (string-append
              "http://www.iro.umontreal.ca/~gambit/download/gambit/v"
-             (version-major+minor version) "/source/gambc-v"
+             (version-major+minor version) "/source/gambit-v"
              (string-map (lambda (c) (if (char=? c #\.) #\_ c)) version)
              ".tgz"))
        (sha256
-        (base32 "0y2pklh4k65yrmxv63ass76xckrk9wqimbdad2gha35v2mi7blhs"))))
+        (base32 "0xwmqzqvk83xyjz48vp36p5vj1415rl3pi3xq7y8i3p8s409a98b"))))
     (build-system gnu-build-system)
     (arguments
      '(#:configure-flags
@@ -535,16 +532,16 @@ of libraries.")
        ;; use >= 1 GB memory, but makes Gambit much faster.
        '("--enable-single-host")
        #:phases
-       (alist-cons-before
-        'check 'fix-tests
-        (lambda _
-          (substitute* '("tests/makefile")
-            ;; '-:' is how run-time options are set.  'tl' sets some terminal
-            ;; option, which makes it fail in our build environment.  It
-            ;; recommends using 'd-' as a solution, which sets the REPL
-            ;; interaction channel to stdin/stdout.
-            (("gsi -:tl") "gsi -:d-,tl")))
-        %standard-phases)))
+       (modify-phases %standard-phases
+         (add-before 'check 'fix-tests
+           (lambda _
+             (substitute* '("tests/makefile")
+               ;; '-:' is how run-time options are set.  'tl' sets some terminal
+               ;; option, which makes it fail in our build environment.  It
+               ;; recommends using 'd-' as a solution, which sets the REPL
+               ;; interaction channel to stdin/stdout.
+               (("gsi -:tl") "gsi -:d-,tl"))
+             #t)))))
     (home-page "http://www.iro.umontreal.ca/~gambit/")
     (synopsis "Efficient Scheme interpreter and compiler")
     (description