diff --git a/pkgs/development/ocaml-modules/goblint-cil/default.nix b/pkgs/development/ocaml-modules/goblint-cil/default.nix new file mode 100644 index 000000000000..552585e1d0d2 --- /dev/null +++ b/pkgs/development/ocaml-modules/goblint-cil/default.nix @@ -0,0 +1,56 @@ +{ + lib, + buildDunePackage, + fetchFromGitHub, + hevea, + zarith, + dune-configurator, + stdlib-shims, + ppx_deriving_yojson, + yojson, + findlib, + cppo, + gcc, + perl, +}: + +buildDunePackage (finalAttrs: { + pname = "goblint-cil"; + version = "2.1.1"; + + minimalOCamlVersion = "4.12"; + __structuredAttrs = true; + + src = fetchFromGitHub { + owner = "goblint"; + repo = "cil"; + tag = finalAttrs.version; + hash = "sha256-nfu8LqTNyx/pkTlAHSay8q3KSYQ+asNAnnZjPUhkNwg="; + }; + + nativeBuildInputs = [ + hevea + cppo + gcc + ]; + + propagatedBuildInputs = [ + zarith + dune-configurator + stdlib-shims + ppx_deriving_yojson + yojson + findlib + perl + ]; + + # Currently broken, doesn't properly pass all tests, fails with many compile errors + doCheck = false; + + meta = { + description = "Front-end for the C programming language that facilitates program analysis and transformation"; + homepage = "https://goblint.github.io/cil/"; + license = lib.licenses.bsd3; + maintainers = [ lib.maintainers.sempiternal-aurora ]; + }; +}) diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 04ade6b44b98..c5e6b6ccefa2 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -788,6 +788,8 @@ let inherit (pkgs) gnuplot; }; + goblint-cil = callPackage ../development/ocaml-modules/goblint-cil { }; + grace = callPackage ../development/ocaml-modules/grace { }; graphics = callPackage ../development/ocaml-modules/graphics { };