summary refs log tree commit diff
path: root/gnu/packages/ocaml.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2019-06-09 00:57:36 +0200
committerMarius Bakke <mbakke@fastmail.com>2019-06-09 00:57:36 +0200
commit69ecd666d73ebc5ee7a0be54f4e24f000d1d7e31 (patch)
tree80fc467b3129cd302aed02622dd497247a8c5bb0 /gnu/packages/ocaml.scm
parent4bed3b101253e5f82c6423f0eb55b307ec839f53 (diff)
parentc6de5afe5c5da34513ea43b041fead30f28f57d4 (diff)
downloadguix-69ecd666d73ebc5ee7a0be54f4e24f000d1d7e31.tar.gz
Merge branch 'master' into staging
Diffstat (limited to 'gnu/packages/ocaml.scm')
-rw-r--r--gnu/packages/ocaml.scm17
1 files changed, 15 insertions, 2 deletions
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 338f98030a..bd66ab04aa 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -697,7 +697,8 @@ written in Objective Caml.")
            (lambda* (#:key outputs #:allow-other-keys)
              (format #t "~a~%" (find-files "." ".*.so"))
              (let ((stubdir (string-append (assoc-ref outputs "out")
-                                           "/lib/ocaml/site-lib")))
+                                           "/lib/ocaml/site-lib/stublibs")))
+               (delete-file stubdir)
                (mkdir-p stubdir)
                (install-file "src/dllnums.so" stubdir))
              #t)))))
@@ -1626,7 +1627,13 @@ spans without being subject to operating system calendar time adjustments.")
                                          "/lib/ocaml/site-lib/cmdliner"))
        #:phases
        (modify-phases %standard-phases
-         (delete 'configure))))
+         (delete 'configure)
+         (add-before 'build 'fix-source-file-order
+           (lambda _
+             (substitute* "build.ml"
+               (("Sys.readdir dir")
+                "let a = Sys.readdir dir in Array.sort String.compare a; a"))
+             #t)))))
     (home-page "http://erratique.ch/software/cmdliner")
     (synopsis "Declarative definition of command line interfaces for OCaml")
     (description "Cmdliner is a module for the declarative definition of command
@@ -2290,6 +2297,12 @@ many additional enhancements, including:
      `(#:phases
        (modify-phases %standard-phases
          (delete 'check) ; tests are run by the build phase
+         (add-before 'build 'fix-nondeterminism
+           (lambda _
+             (substitute* "setup.ml"
+               (("Sys.readdir dirname")
+                "let a = Sys.readdir dirname in Array.sort String.compare a; a"))
+             #t))
          (replace 'build
            (lambda* (#:key inputs outputs #:allow-other-keys)
              (let ((files