opam-version: "2.0"
maintainer: "Sail Devs <cl-sail-dev@lists.cam.ac.uk>"
authors: [
  "Alasdair Armstrong"
  "Thomas Bauereiss"
  "Brian Campbell"
  "Shaked Flur"
  "Jonathan French"
  "Kathy Gray"
  "Robert Norton"
  "Christopher Pulte"
  "Peter Sewell"
  "Mark Wassell"
]
homepage: "http://www.cl.cam.ac.uk/~pes20/sail/"
bug-reports: "https://github.com/rems-project/sail/issues"
license: "BSD3"
dev-repo: "git+https://github.com/rems-project/sail.git"
build: [make "INSTALL_DIR=%{prefix}%" "SHARE_DIR=%{sail:share}%" "isail"]
install: [make "INSTALL_DIR=%{prefix}%" "SHARE_DIR=%{sail:share}%" "install"]
depends: [
  "ocaml" {>= "4.06.1"}
  "ocamlfind" {build} 
  "ocamlbuild" {build}
  "zarith"
  "menhir" {build}
  "linenoise" {>= "1.1.0"}
  "ott" {>= "0.28" & build}
  "lem" {>= "2018-12-14"}
  "linksem" {>= "0.3"}
  "omd" {>= "1.3.1" & < "2.0.0~alpha1"}
  "conf-gmp"
  "conf-zlib"
  "base64" {>= "3.1.0"}
  "yojson" {>= "1.6.0"}
  "pprint"
]
synopsis:
  "Sail is a language for describing the instruction semantics of processors"
description:
  """Sail is a language for describing the instruction-set
architecture (ISA) semantics of processors. Sail aims to provide a
engineer-friendly, vendor-pseudocode-like language for describing
instruction semantics. It is essentially a first-order imperative
language, but with lightweight dependent typing for numeric types and
bitvector lengths, which are automatically checked using Z3. It has
been used for several papers, available from
http://www.cl.cam.ac.uk/~pes20/sail/."""
url {
  src: "https://github.com/rems-project/sail/archive/0.13.tar.gz"
  checksum: [
    "md5=e63ab1df9521bdb168840adcb076eb23"
    "sha512=4a6bf7527983a344c7f7e438dfa997c9af6adc76840c260ab17c796e66ec8236f586601a5eb3cf615a6876abec39b7cf1f836778c100a9b6b491bfa4d15f7920"
  ]
}
