package "common" (
  requires = "rocq-runtime.plugins.ltac"
  description = "shared utilities for relation algebra plugins"
  archive(byte) = "plugins.cma"
  archive(native) = "plugins.cmxa"
  plugin(byte) = "plugins.cma"
  plugin(native) = "plugins.cmxs"
  directory = "."
)

package "reification" (
  requires = "rocq-runtime.plugins.ltac rocq-relation-algebra.common"
  description = "reification plugin for relation algebra tactics"
  archive(byte) = "packed_reification.cma"
  archive(native) = "packed_reification.cmxa"
  plugin(byte) = "packed_reification.cma"
  plugin(native) = "packed_reification.cmxs"
  directory = "."
)

package "fold" (
  requires = "rocq-runtime.plugins.ltac rocq-relation-algebra.common"
  description = "folding plugin for relation algebra"
  archive(byte) = "packed_fold.cma"
  archive(native) = "packed_fold.cmxa"
  plugin(byte) = "packed_fold.cma"
  plugin(native) = "packed_fold.cmxs"
  directory = "."
)

package "mrewrite" (
  requires = "rocq-runtime.plugins.ltac rocq-relation-algebra.common"
  description = "rewriting modulo A plugin for relation algebra"
  archive(byte) = "packed_mrewrite.cma"
  archive(native) = "packed_mrewrite.cmxa"
  plugin(byte) = "packed_mrewrite.cma"
  plugin(native) = "packed_mrewrite.cmxs"
  directory = "."
)

package "kat" (
  requires = "rocq-runtime.plugins.ltac rocq-relation-algebra.common"
  description = "KAT reification plugin for relation algebra"
  archive(byte) = "packed_kat.cma"
  archive(native) = "packed_kat.cmxa"
  plugin(byte) = "packed_kat.cma"
  plugin(native) = "packed_kat.cmxs"
  directory = "."
)

directory = "."
