cdb97ba523
When we redid ounit and ounit2, the minimumOCamlVersion was also pushed to OCaml 4.04. ocamlmod builds on earlier versions as well, but doesn't evaluate if we pull in ounit. Therefore we conditionally disable tests for OCaml < 4.04 which means for example oasis is available for those versions again as well.
40 lines
1.0 KiB
Nix
40 lines
1.0 KiB
Nix
{ lib, stdenv, fetchurl, ocaml, findlib, ocamlbuild, ounit }:
|
|
|
|
let
|
|
# ounit is only available for OCaml >= 4.04
|
|
doCheck = lib.versionAtLeast ocaml.version "4.04";
|
|
in
|
|
|
|
stdenv.mkDerivation {
|
|
pname = "ocamlmod";
|
|
version = "0.0.9";
|
|
|
|
src = fetchurl {
|
|
url = "https://forge.ocamlcore.org/frs/download.php/1702/ocamlmod-0.0.9.tar.gz";
|
|
sha256 = "0cgp9qqrq7ayyhddrmqmq1affvfqcn722qiakjq4dkywvp67h4aa";
|
|
};
|
|
|
|
buildInputs = [ ocaml findlib ocamlbuild ];
|
|
|
|
configurePhase = "ocaml setup.ml -configure --prefix $out"
|
|
+ lib.optionalString doCheck " --enable-tests";
|
|
buildPhase = "ocaml setup.ml -build";
|
|
installPhase = "ocaml setup.ml -install";
|
|
|
|
inherit doCheck;
|
|
checkInputs = [ ounit ];
|
|
|
|
checkPhase = "ocaml setup.ml -test";
|
|
|
|
dontStrip = true;
|
|
|
|
meta = {
|
|
homepage = "https://forge.ocamlcore.org/projects/ocamlmod/ocamlmod";
|
|
description = "Generate OCaml modules from source files";
|
|
platforms = ocaml.meta.platforms or [];
|
|
maintainers = with lib.maintainers; [
|
|
maggesi
|
|
];
|
|
};
|
|
}
|