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/mirage"
bug-reports:  "https://github.com/mirage/mirage/issues"
dev-repo:     "git+https://github.com/mirage/mirage.git"
doc:          "https://mirage.github.io/mirage/"
license:      "ISC"
tags:         ["org:mirage"]
available: opam-version >= "2.1.0"

build: [
  ["dune" "subst"] {dev}
  ["dune" "build" "-p" name "-j" jobs]
  ["dune" "runtest" "-p" name "-j" jobs] {with-test}
  ["env" "INSIDE_FUNCTORIA_TESTS=1" "dune" "exec" "-p" name "-j" jobs "--"
     "test/functoria/e2e/test.exe"] {with-test}
]

depends: [
  "ocaml" {>= "4.08.0"}
  "dune" {>= "2.9.0"}
  "dune" {with-test & >= "3.0.0"}
  "base-unix"
  "cmdliner" {>= "1.1.1"}
  "cmdliner" {with-test & >= "1.2.0"}
  "rresult" {>= "0.7.0"}
  "result" {>= "1.5"}
  "astring"
  "fmt" {>= "0.8.7"}
  "logs"
  "bos"
  "fpath"
  "emile" {>= "1.1"}
  "uri" {>= "4.2.0"}
  "alcotest" {with-test}
  "functoria-runtime" {= version & with-test}
  "bigstringaf" {with-test & >= "0.5.0"}
]
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.
"""
