opam-version: "2.0"
maintainer:   ["anil@recoil.org" "thomas@gazagnaire.org"]
authors:      "The MirageOS team"
homepage:     "https://github.com/mirage/mirage"
bug-reports:  "https://github.com/mirage/mirage/issues/"
dev-repo:     "git+https://github.com/mirage/mirage.git"
license:      "ISC"
tags:         ["org:mirage" "org:xapi-project"]


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

depends: [
  "ocaml" {>= "4.04.2"}
  "dune" {>= "1.1.0"}
  "lwt"
  "cstruct" {>= "3.2.1"}
  "ipaddr" {>= "3.0.0"}
  "mirage-types" {>= "3.5.0" & < "3.7.0"}
  "mirage-clock-lwt" {>= "2.0.0"}
  "mirage-time-lwt" {>= "1.1.0"}
  "mirage-random" {>= "1.2.0" & < "2.0.0"}
  "mirage-flow-lwt" {>= "1.5.0"}
  "mirage-protocols-lwt" {>= "2.0.0"}
  "mirage-stack-lwt" {>= "1.3.0"}
  "mirage-console-lwt" {>= "2.3.5"}
  "mirage-block-lwt" {>= "1.1.0"}
  "mirage-net-lwt" {>= "2.0.0"}
  "mirage-fs-lwt" {>= "2.0.0"}
  "mirage-kv-lwt" {>= "2.0.0"}
  "mirage-channel-lwt" {>= "3.1.0"}
]
synopsis: "Lwt module type definitions for MirageOS applications"
description: """
The purpose of this library is to provide concrete types
for several that are left abstract in `mirage-types`:

- `type 'a io = 'a Lwt.t`
- `type page_aligned_buffer = Io_page.t`
- `type buffer = Cstruct.t`
- `type macaddr = Macaddr.t`
- `type ipv4addr = Ipaddr.V4.t`
"""
url {
  src:
    "https://github.com/mirage/mirage/releases/download/v3.5.0/mirage-v3.5.0.tbz"
  checksum: "md5=4254a635bbf4744bb8a7d1d1cc4011b4"
}
