|
| 1 | +opam-version: "2.0" |
| 2 | +maintainer: "Issuu" |
| 3 | +authors: "Anders Fugmann < [email protected]>" |
| 4 | +license: "APACHE-2.0" |
| 5 | +homepage: "https://github.com/issuu/ocaml-protoc-plugin" |
| 6 | +dev-repo: "git+https://github.com/issuu/ocaml-protoc-plugin" |
| 7 | +bug-reports: "https://github.com/issuu/ocaml-protoc-plugin/issues" |
| 8 | +doc: "https://issuu.github.io/ocaml-protoc-plugin/" |
| 9 | +build: [ |
| 10 | + ["dune" "subst"] {dev} |
| 11 | + ["dune" "build" "-p" name "-j" jobs] |
| 12 | + ["dune" "runtest" "-p" name "-j" jobs] {with-test & arch != "arm32" & arch != "x86_32"} |
| 13 | +] |
| 14 | + |
| 15 | +depends: [ |
| 16 | + "conf-protoc" {>= "1.0.0"} |
| 17 | + "dune" {>= "3.2"} |
| 18 | + "ocaml" {>= "4.08.0"} |
| 19 | + "ppx_expect" {with-test} |
| 20 | + "ppx_inline_test" {with-test} |
| 21 | + "ppx_deriving" {with-test} |
| 22 | + "conf-pkg-config" {build} |
| 23 | +] |
| 24 | + |
| 25 | + |
| 26 | +synopsis: "Plugin for protoc protobuf compiler to generate ocaml definitions from a .proto file" |
| 27 | + |
| 28 | +description: """ The plugin generates ocaml type definitions, |
| 29 | +serialization and deserialization functions from a protobuf file. |
| 30 | +The types generated aims to create ocaml idiomatic types; |
| 31 | +- messages are mapped into modules |
| 32 | +- oneof constructs are mapped to polymorphic variants |
| 33 | +- enums are mapped to adt's |
| 34 | +- map types are mapped to assoc lists |
| 35 | +- all integer types are mapped to int by default (exact mapping is also possible) |
| 36 | +- all floating point types are mapped to float. |
| 37 | +- packages are mapped to nested modules |
| 38 | +""" |
| 39 | +url { |
| 40 | + src: |
| 41 | + "https://github.com/issuu/ocaml-protoc-plugin/archive/refs/tags/4.4.0.tar.gz" |
| 42 | + checksum: [ |
| 43 | + "md5=33eec898e6b8b31ec1f8aed351a32b5d" |
| 44 | + "sha512=3f7515c430bad3706dbe2fcfdbe0d5b33984dd6300adfc3cbbe912f033c3868eaa65d916eabac91195506f02f151cabb4f8173b732b020673ac7df04f9e48172" |
| 45 | + ] |
| 46 | +} |
0 commit comments