depot/third_party/nixpkgs/pkgs/development/ocaml-modules/b0/default.nix

65 lines
1.6 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
lib,
stdenv,
fetchurl,
ocaml,
findlib,
topkg,
ocamlbuild,
cmdliner,
}:
let
in
lib.throwIfNot (lib.versionAtLeast ocaml.version "4.08")
"b0 is not available for OCaml ${ocaml.version}"
stdenv.mkDerivation
rec {
pname = "ocaml${ocaml.version}-b0";
version = "0.0.5";
src = fetchurl {
url = "${meta.homepage}/releases/b0-${version}.tbz";
sha256 = "sha256-ty04JQcP4RCme/VQw0ko2IBebWWX5cBU6nRTTeV1I/I=";
};
strictDeps = true;
nativeBuildInputs = [
ocaml
findlib
ocamlbuild
topkg
];
buildInputs = [
topkg
cmdliner
];
inherit (topkg) buildPhase installPhase;
meta = with lib; {
description = "Software construction and deployment kit";
longDescription = ''
WARNING this package is unstable and work in progress, do not depend on
it.
B0 describes software construction and deployments using modular and
customizable definitions written in OCaml. B0 describes:
* Build environments.
* Software configuration, build and testing.
* Source and binary deployments.
* Software life-cycle procedures.
B0 also provides the B00 build library which provides abitrary build
abstraction with reliable and efficient incremental rebuilds. The B00
library can be and has been used on its own to devise domain specific
build systems.
'';
homepage = "https://erratique.ch/software/b0";
inherit (ocaml.meta) platforms;
license = licenses.isc;
maintainers = [ maintainers.Julow ];
};
}