(library
 (name ppx_deriving_api)
 (public_name ppx_deriving.api)
 (synopsis "Plugin API for ppx_deriving")
 (preprocess (action (run ppxfind -legacy ppx_tools.metaquot --as-pp %{input-file})))
 (wrapped false)
 (ppx_runtime_libraries ppx_deriving_runtime)
 (libraries
   compiler-libs.common
   ppx_tools
   result
   ppx_derivers
   ocaml-migrate-parsetree
   ppx_deriving.runtime))

(rule
 (deps ppx_deriving.cppo.ml)
 (targets ppx_deriving.ml)
 (action (run %{bin:cppo} -V OCAML:%{ocaml_version} %{deps} -o %{targets})))

(rule
 (deps ppx_deriving.cppo.mli)
 (targets ppx_deriving.mli)
 (action (run %{bin:cppo} -V OCAML:%{ocaml_version} %{deps} -o %{targets})))
