Adds ocaml-uuseg

Uuseg is an OCaml library for segmenting Unicode text. It implements the
locale independent Unicode text segmentation algorithms to detect
grapheme cluster, word and sentence boundaries and the Unicode line
breaking algorithm to detect line break opportunities.

Homepage: http://erratique.ch/software/uuseg
This commit is contained in:
Vincent Laporte 2014-12-28 14:27:27 +01:00
parent da1f8578b0
commit 2335ec0b40
2 changed files with 48 additions and 0 deletions

View File

@ -0,0 +1,47 @@
{ stdenv, fetchurl, ocaml, findlib, opam, uucp, uutf, cmdliner }:
let
inherit (stdenv.lib) getVersion versionAtLeast;
pname = "uuseg";
version = "0.8.0";
webpage = "http://erratique.ch/software/${pname}";
in
assert versionAtLeast (getVersion ocaml) "4.01";
stdenv.mkDerivation {
name = "ocaml-${pname}-${version}";
src = fetchurl {
url = "${webpage}/releases/${pname}-${version}.tbz";
sha256 = "00n4zi8dyw2yzi4nr2agcrr33b0q4dr9mgnkczipf4c0gm5cm50h";
};
buildInputs = [ ocaml findlib opam cmdliner ];
propagatedBuildInputs = [ uucp uutf ];
createFindlibDestdir = true;
unpackCmd = "tar xjf $src";
buildPhase = ''
ocaml pkg/build.ml \
native=true native-dynlink=true \
uutf=true cmdliner=true
'';
installPhase = ''
opam-installer --script --prefix=$out ${pname}.install | sh
ln -s $out/lib/${pname} $out/lib/ocaml/${getVersion ocaml}/site-lib/${pname}
'';
meta = with stdenv.lib; {
description = "An OCaml library for segmenting Unicode text";
homepage = "${webpage}";
platforms = ocaml.meta.platforms;
license = licenses.bsd3;
maintainers = [ maintainers.vbgl ];
};
}

View File

@ -3819,6 +3819,7 @@ let
uucd = callPackage ../development/ocaml-modules/uucd { };
uucp = callPackage ../development/ocaml-modules/uucp { };
uunf = callPackage ../development/ocaml-modules/uunf { };
uuseg = callPackage ../development/ocaml-modules/uuseg { };
uutf = callPackage ../development/ocaml-modules/uutf { };
vg = callPackage ../development/ocaml-modules/vg { };