summary refs log tree commit diff
path: root/gnu/packages/ocaml.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/ocaml.scm')
-rw-r--r--gnu/packages/ocaml.scm40
1 files changed, 22 insertions, 18 deletions
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index c14d83c016..1f4c3e471a 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -149,7 +149,7 @@ functional, imperative and object-oriented styles of programming.")
 (define-public opam
   (package
     (name "opam")
-    (version "1.1.1")
+    (version "1.2.2")
     (source (origin
               (method url-fetch)
               ;; Use the '-full' version, which includes all the dependencies.
@@ -161,7 +161,7 @@ functional, imperative and object-oriented styles of programming.")
                )
               (sha256
                (base32
-                "1frzqkx6yn1pnyd9qz3bv3rbwv74bmc1xji8kl41r1dkqzfl3xqv"))))
+                "004gwn6rbpcb53y3rpb3v23vk39rp2xmf0liyd5iy12ij8bigrhm"))))
     (build-system gnu-build-system)
     (arguments
      '(;; Sometimes, 'make -jX' would fail right after ./configure with
@@ -169,30 +169,34 @@ functional, imperative and object-oriented styles of programming.")
        #:parallel-build? #f
 
        ;; For some reason, 'ocp-build' needs $TERM to be set.
-       #:make-flags '("TERM=screen")
+       #:make-flags `("TERM=screen"
+                      ,(string-append "SHELL="
+                                      (assoc-ref %build-inputs "bash")
+                                      "/bin/sh"))
        #:test-target "tests"
 
        ;; FIXME: There's an obscure test failure:
        ;;   …/_obuild/opam/opam.asm install P1' failed.
        #:tests? #f
 
-       #:phases (alist-cons-before
-                 'build 'pre-build
-                 (lambda* (#:key inputs #:allow-other-keys)
-                   (let ((bash (assoc-ref inputs "bash")))
-                     (substitute* "src/core/opamSystem.ml"
-                       (("\"/bin/sh\"")
-                        (string-append "\"" bash "/bin/sh\"")))))
-                 (alist-cons-before
-                  'check 'pre-check
-                  (lambda _
-                    (setenv "HOME" (getcwd))
-                    (and (system "git config --global user.email guix@gnu.org")
-                         (system "git config --global user.name Guix")))
-                  %standard-phases))))
+       #:phases (modify-phases %standard-phases
+                 (add-before 'build 'pre-build
+                   (lambda* (#:key inputs make-flags #:allow-other-keys)
+                     (let ((bash (assoc-ref inputs "bash")))
+                       (substitute* "src/core/opamSystem.ml"
+                         (("\"/bin/sh\"")
+                          (string-append "\"" bash "/bin/sh\"")))
+                       ;; Build dependencies
+                       (zero? (apply system* "make" "lib-ext" make-flags)))))
+                 (add-before 'check 'pre-check
+                   (lambda _
+                     (setenv "HOME" (getcwd))
+                     (and (system "git config --global user.email guix@gnu.org")
+                          (system "git config --global user.name Guix")))))))
     (native-inputs
      `(("git" ,git)                               ;for the tests
-       ("python" ,python)))                       ;for the tests
+       ("python" ,python)                         ;for the tests
+       ("camlp4" ,camlp4)))
     (inputs
      `(("ocaml" ,ocaml)
        ("ncurses" ,ncurses)