73 lines
2.3 KiB
Text
73 lines
2.3 KiB
Text
(lang dune 3.8)
|
|
(name ppxlib)
|
|
(using cinaps 1.0)
|
|
(implicit_transitive_deps false)
|
|
(cram enable)
|
|
(generate_opam_files true)
|
|
|
|
(version 0.37.0)
|
|
|
|
(source (github ocaml-ppx/ppxlib))
|
|
(license MIT)
|
|
(authors "Jane Street Group, LLC <opensource@janestreet.com>")
|
|
(maintainers "opensource@janestreet.com")
|
|
(documentation "https://ocaml-ppx.github.io/ppxlib/")
|
|
|
|
(package
|
|
(name ppxlib)
|
|
(depends
|
|
;; 5.3 support is still experimental, remember to set the upper bound
|
|
;; to 5.3.0 when cutting a release and then back to 5.4.0 afterwards.
|
|
(ocaml (and (and (>= 4.08.0) (< 5.5.0))))
|
|
(ocaml-compiler-libs (>= v0.11.0))
|
|
(ppx_derivers (>= 1.0))
|
|
(sexplib0 (>= v0.12))
|
|
(sexplib0 (and :with-test (>= "v0.15"))) ; Printexc.register_printer in sexplib0 changed
|
|
stdlib-shims
|
|
(ocamlfind :with-test)
|
|
(re (and :with-test (>= 1.9.0)))
|
|
(cinaps (and :with-test (>= v0.12.1)))
|
|
(ocamlformat (and :with-dev-setup (= 0.26.2))))
|
|
(conflicts
|
|
(ocaml-migrate-parsetree (< 2.0.0))
|
|
(ocaml-base-compiler (= 5.1.0~alpha1))
|
|
(ocaml-variants (= 5.1.0~alpha1+options)))
|
|
(synopsis "Standard infrastructure for ppx rewriters")
|
|
(description "Ppxlib is the standard infrastructure for ppx rewriters
|
|
and other programs that manipulate the in-memory representation of
|
|
OCaml programs, a.k.a the \"Parsetree\".
|
|
|
|
It also comes bundled with two ppx rewriters that are commonly used to
|
|
write tools that manipulate and/or generate Parsetree values;
|
|
`ppxlib.metaquot` which allows to construct Parsetree values using the
|
|
OCaml syntax directly and `ppxlib.traverse` which provides various
|
|
ways of automatically traversing values of a given type, in particular
|
|
allowing to inject a complex structured value into generated code.
|
|
"))
|
|
|
|
(package
|
|
(name ppxlib-tools)
|
|
(synopsis "Tools for PPX users and authors")
|
|
(description "Set of helper tools for PPX users and authors.
|
|
|
|
ppxlib-pp-ast: Command line tool to pretty print OCaml ASTs in a human readable
|
|
format.")
|
|
(depends
|
|
(ocaml (>= 4.08.0))
|
|
(ppxlib (= :version))
|
|
(cmdliner (>= 1.3.0))
|
|
(yojson (>= 2.2.2))
|
|
(cinaps (and :with-test (>= v0.12.1)))))
|
|
|
|
(package
|
|
(name ppxlib-bench)
|
|
(allow_empty)
|
|
(synopsis "Run ppxlib benchmarks")
|
|
(description "Third-party code in benchmarks depends on later versions of the ocaml
|
|
than ppxlib itself. Also the benchmark runner has dependencies that ppxlib doesn't
|
|
have.")
|
|
(depends
|
|
(ocaml (>= 4.10.0))
|
|
(ppxlib (= :version))
|
|
base
|
|
yojson))
|