1 { darwin, fetchurl, lib, ocamlPackages, stdenv }:
8 url = "https://github.com/OCamlPro/alt-ergo/releases/download/v${version}/alt-ergo-${version}.tbz";
9 hash = "sha256-EmkxGvJSeKRmiSuoeMyIi6WfF39T3QPxKixiOwP8834=";
13 let alt-ergo-lib = ocamlPackages.buildDunePackage rec {
14 pname = "alt-ergo-lib";
16 buildInputs = with ocamlPackages; [ ppx_blob ];
17 propagatedBuildInputs = with ocamlPackages; [
30 let alt-ergo-parsers = ocamlPackages.buildDunePackage rec {
31 pname = "alt-ergo-parsers";
33 nativeBuildInputs = [ ocamlPackages.menhir ];
34 propagatedBuildInputs = [ alt-ergo-lib ] ++ (with ocamlPackages; [ psmt2-frontend ]);
37 ocamlPackages.buildDunePackage {
39 inherit pname version src;
41 nativeBuildInputs = [ ocamlPackages.menhir ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.sigtool ];
42 propagatedBuildInputs = [ alt-ergo-parsers ] ++ (with ocamlPackages; [ cmdliner dune-site ppxlib ]);
44 outputs = [ "bin" "out" ];
48 dune install --prefix $bin ${pname}
49 mkdir -p $out/lib/ocaml/${ocamlPackages.ocaml.version}/site-lib
50 mv $bin/lib/alt-ergo $out/lib/ocaml/${ocamlPackages.ocaml.version}/site-lib/
55 description = "High-performance theorem prover and SMT solver";
56 homepage = "https://alt-ergo.ocamlpro.com/";
57 license = lib.licenses.ocamlpro_nc;
58 maintainers = [ lib.maintainers.thoughtpolice ];