Files
alt-ergo/default.nix
Pierrot 72f4c27637 Get rid of stdcompat (#1191)
* Get rid of `stdcompat`

We do not need to use `stdcompat` because we only need to support few
new functions from `stdlib`. This PR removes the `stdcompat` dependency
and create a new module `compat` which contains all the functions we
need to compile on OCaml 4.08.

I also rename `Lists` to `my_list` and `myUnix` to `my_unix` and now
`my_list` only contains extra functions (which are not part of any
stdlib versions).
2024-07-31 17:14:59 +02:00

61 lines
1.2 KiB
Nix

{ sources ? import ./nix/sources.nix
, pkgs ? import ./nix { inherit sources; }
}:
let
inherit (pkgs) lib ocamlPackages;
version = "dev";
src = lib.cleanSource ./.;
alt-ergo-lib = ocamlPackages.buildDunePackage rec {
pname = "alt-ergo-lib";
inherit version src;
minimalOCamlVersion = "4.08";
duneVersion = "3";
propagatedBuildInputs = with ocamlPackages; [
dune-build-info
zarith
ocplib-simplex
seq
stdlib-shims
fmt
ppx_blob
dolmen_loop
camlzip
ppx_deriving
];
};
alt-ergo-parsers = ocamlPackages.buildDunePackage rec {
pname = "alt-ergo-parsers";
inherit version src;
minimalOCamlVersion = "4.08";
duneVersion = "3";
nativeBuildInputs = [ ocamlPackages.menhir ];
propagatedBuildInputs = [ alt-ergo-lib ] ++ (with ocamlPackages; [
psmt2-frontend
]);
};
alt-ergo = ocamlPackages.buildDunePackage {
pname = "alt-ergo";
inherit version src;
minimalOCamlVersion = "4.08";
duneVersion = "3";
buildInputs = [ alt-ergo-parsers ] ++ (with ocamlPackages; [
cmdliner
dune-site
]);
};
in
{
alt-ergo = alt-ergo;
}