~ruther/guix-local

3b9e1cdc709155da7ac5dc5a13e60ea77fa5ef68 — Jean-Pierre De Jesus DIAZ 1 year, 11 months ago 2ce6773
gnu: Add ocaml-unionfind.

* gnu/packages/ocaml.scm (ocaml-unionfind): New variable.

Change-Id: Ib101e67576c000dad1d4a73d008ca0376e7da95a
Signed-off-by: Andreas Enge <andreas@enge.fr>
1 files changed, 28 insertions(+), 0 deletions(-)

M gnu/packages/ocaml.scm
M gnu/packages/ocaml.scm => gnu/packages/ocaml.scm +28 -0
@@ 3186,6 3186,34 @@ OCaml with fibers.")
(define-public ocaml5.0-eio-luv
  (package-with-ocaml5.0 ocaml-eio-luv))

(define-public ocaml-unionfind
  (package
    (name "ocaml-unionfind")
    (version "20220122")
    (source
     (origin
       (method git-fetch)
       (uri (git-reference
              (url "https://gitlab.inria.fr/fpottier/unionfind")
              (commit version)))
       (file-name (git-file-name name version))
       (sha256
        (base32 "0hdh56rbg8vfjd61q09cbmh8l5wmry5ykivg7gsm0v5ckkb3531r"))))
    (build-system dune-build-system)
    (arguments
     (list ;; The test allocates an Array that is too large for OCaml when on a
           ;; 32-bit architecture.
           #:tests? (target-64bit?)))
    (home-page "https://gitlab.inria.fr/fpottier/unionFind")
    (synopsis "Union-find data structure")
    (description "This package provides two union-find data structure
implementations for OCaml.  Both implementations are based on disjoint sets
forests, with path compression and linking-by-rank, so as to guarantee good
asymptotic complexity: every operation requires a quasi-constant number of
accesses to the store.")
    ;; Version 2 only, with linking exception.
    (license license:lgpl2.0)))

(define-public ocaml-uring
  (package
    (name "ocaml-uring")