depot/third_party/nixpkgs/pkgs/development/ocaml-modules/ocaml-protoc-plugin/default.nix
Default email bcb2f287e1 Project import generated by Copybara.
GitOrigin-RevId: d603719ec6e294f034936c0d0dc06f689d91b6c3
2024-06-20 20:27:18 +05:30

53 lines
1.1 KiB
Nix

{ lib
, fetchFromGitHub
, buildDunePackage
, pkg-config
, protobuf
, zarith
, ppx_deriving
, ppx_deriving_yojson
, re
, dune-site
, ppx_expect
}:
buildDunePackage rec {
pname = "ocaml-protoc-plugin";
version = "4.5.0";
src = fetchFromGitHub {
owner = "issuu";
repo = "ocaml-protoc-plugin";
rev = version;
hash = "sha256-ZHeOi3y2X11MmkRuthmYFSjPLoGlGTO1pnRfk/XmgPU=";
};
nativeBuildInputs = [
pkg-config
protobuf
];
buildInputs = [
zarith
ppx_deriving
ppx_deriving_yojson
re
dune-site
ppx_expect
protobuf
];
doCheck = true;
nativeCheckInputs = [ protobuf ];
meta = {
description = "Maps google protobuf compiler to Ocaml types";
homepage = "https://github.com/issuu/ocaml-protoc-plugin";
license = lib.licenses.asl20;
longDescription = ''
The goal of Ocaml protoc plugin is to create an
up to date plugin for the google protobuf compiler
(protoc) to generate Ocaml types and serialization
and de-serialization function from a .proto file.
'';
maintainers = [ lib.maintainers.GirardR1006 ];
};
}