35 lines
983 B
Nix
35 lines
983 B
Nix
{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild, cmdliner , topkg, uchar }:
|
|
let
|
|
pname = "uutf";
|
|
in
|
|
|
|
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.03")
|
|
"${pname} is not available with OCaml ${ocaml.version}"
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "ocaml${ocaml.version}-${pname}-${version}";
|
|
version = "1.0.3";
|
|
|
|
src = fetchurl {
|
|
url = "https://erratique.ch/software/${pname}/releases/${pname}-${version}.tbz";
|
|
sha256 = "sha256-h3KlYT0ecCmM4U3zMkGjaF8h5O9r20zwP+mF+x7KBWg=";
|
|
};
|
|
|
|
nativeBuildInputs = [ ocaml ocamlbuild findlib topkg ];
|
|
buildInputs = [ topkg cmdliner ];
|
|
propagatedBuildInputs = [ uchar ];
|
|
|
|
strictDeps = true;
|
|
|
|
inherit (topkg) buildPhase installPhase;
|
|
|
|
meta = with lib; {
|
|
description = "Non-blocking streaming Unicode codec for OCaml";
|
|
homepage = "https://erratique.ch/software/uutf";
|
|
license = licenses.bsd3;
|
|
maintainers = [ maintainers.vbgl ];
|
|
mainProgram = "utftrip";
|
|
inherit (ocaml.meta) platforms;
|
|
};
|
|
}
|