diff mbox series

[bug#70567,v2,6/7] gnu: Add ocaml-unionfind.

Message ID 4715ea80d95284555c5240e2834598ce7abbe609.1714058471.git.jean@foundation.xyz
State New
Headers show
Series [bug#70567,v2,1/7] gnu: ocaml-lablgtk3-sourceview3: Fix inputs. | expand

Commit Message

Jean-Pierre De Jesus Diaz April 25, 2024, 3:21 p.m. UTC
* gnu/packages/ocaml.scm (ocaml-unionfind): New variable.

Change-Id: Ib101e67576c000dad1d4a73d008ca0376e7da95a
---
 gnu/packages/ocaml.scm | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

Comments

Ludovic Courtès May 1, 2024, 4:13 p.m. UTC | #1
Hi Jean-Pierre,

Jean-Pierre De Jesus DIAZ <jean@foundation.xyz> skribis:

> * gnu/packages/ocaml.scm (ocaml-unionfind): New variable.
>
> Change-Id: Ib101e67576c000dad1d4a73d008ca0376e7da95a

<https://qa.guix.gnu.org/issue/70567> reports a build failure of this
package on 32-bit platforms (armhf and i686):

--8<---------------cut here---------------start------------->8---
starting phase `check'
File "test/dune", line 2, characters 8-21:
2 |   (name TestUnionFind)
            ^^^^^^^^^^^^^
(cd _build/default/test && ./TestUnionFind.exe)
Fatal error: exception Invalid_argument("Array.make")
error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "dune" arguments: ("runtest" "--release") exit-status: 1 term-signal: #f stop-signal: #f> 
phase `check' failed after 0.6 seconds
--8<---------------cut here---------------end--------------->8---

Could you take a look?

It seems qa.guix is reporting on v1 of the patch set though because the
build logs suggest ‘ocaml-unionfind’ was lacking the (file-name
(git-file-name …)) stanza.

Apart from that the series LGTM.

Thanks,
Ludo’.
diff mbox series

Patch

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 920ccdcf36..26f5e4a9a9 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -3186,6 +3186,30 @@  (define ocaml-eio-luv
 (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)
+    (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")