opam-version: "2.0"
maintainer:   "Gabriel Radanne <drupyog@zoho.com>"
authors:      [ "Thomas Gazagnaire"
                "Anil Madhavapeddy"
                "Dave Scott"
                "Thomas Leonard"
                "Gabriel Radanne" ]
homepage:     "https://github.com/mirage/functoria"
bug-reports:  "https://github.com/mirage/functoria/issues"
dev-repo:     "git+https://github.com/mirage/functoria.git"
doc:          "https://mirage.github.io/functoria/"
license:      "ISC"
tags:         ["org:mirage"]

build: [
  ["dune" "subst"] {pinned}
  ["dune" "build" "-p" name "-j" jobs]
  ["dune" "runtest" "-p" name "-j" jobs] {with-test}
]

depends: [
  "ocaml" {>= "4.04.0"}
  "dune" {>= "1.1.0"}
  "base-unix"
  "cmdliner" {>= "0.9.8"}
  "rresult"
  "astring"
  "fmt"
  "ocamlgraph"
  "logs"
  "bos"
  "fpath"
  "alcotest" {with-test}
  "ptime"
]
synopsis: "A DSL to organize functor applications"
description: """
Functoria is a DSL to describe a set of modules and functors, their types and
how to apply them in order to produce a complete application.

The main use case is mirage. See the [mirage](https://github.com/mirage/mirage)
repository for details.
"""
url {
  src:
    "https://github.com/mirage/functoria/releases/download/v3.0.2/functoria-v3.0.2.tbz"
  checksum: [
    "sha256=e8c5462ff91b7acebeb57a7cad3de0d3ecb0374b3c6eb3b380b0048c5e142a6f"
    "sha512=2284fdf6259e48e3e3b73440a39f59bbd2968bee59af87ded5a6e9dbb32dde0998eac72a5cf56fe0978191bbb2ebc675fc50337a4820b6a13d71f28c6108dde9"
  ]
}
