From ec31363e22c1b04528c17cd8210f469a732da3f2 Mon Sep 17 00:00:00 2001 From: pukkamustard Date: Tue, 1 Jun 2021 20:22:56 +0000 Subject: gnu: Add ocaml-uunf. * gnu/packages/ocaml.scm (ocaml-uunf): New variable. Signed-off-by: Julien Lepiller --- gnu/packages/ocaml.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 9e9f1b6f21..a7558d7367 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -2707,6 +2707,51 @@ Functions are also provided to fold over the characters of UTF encoded OCaml string values and to directly encode characters in OCaml Buffer.t values.") (license license:isc))) +(define-public ocaml-uunf + (package + (name "ocaml-uunf") + (version "13.0.0") + (source + (origin + (method url-fetch) + (uri "https://erratique.ch/software/uunf/releases/uunf-13.0.0.tbz") + (sha256 + (base32 + "1qci04nkp24kdls1z4s8kz5dzgky4nwd5r8345nwdrgwmxhw7ksm")))) + (build-system ocaml-build-system) + (arguments + `(#:build-flags (list "build" "--tests" "true") + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'check 'check-data + (lambda* (#:key inputs #:allow-other-keys) + (copy-file (assoc-ref inputs "NormalizationTest.txt") + "test/NormalizationTest.txt") + #t))))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam) + ("topkg" ,ocaml-topkg) + ;; Test data is otherwise downloaded wit curl + ("NormalizationTest.txt" + ,(origin + (method url-fetch) + (uri (string-append "https://www.unicode.org/Public/" + version + "/ucd/NormalizationTest.txt")) + (sha256 + (base32 "07g0ya4f6zfzvpp24ccxkb2yq568kh83gls85rjl950nv5fya3nn")))))) + (propagated-inputs `(("ocaml-uutf" ,ocaml-uutf))) + (home-page "https://erratique.ch/software/uunf") + (synopsis "Unicode text normalization for OCaml") + (description + "Uunf is an OCaml library for normalizing Unicode text. It supports all +Unicode normalization forms. The library is independent from any +IO mechanism or Unicode text data structure and it can process text +without a complete in-memory representation.") + (license license:isc))) + (define-public ocaml-jsonm (package (name "ocaml-jsonm") -- cgit 1.4.1