opam-version: "2.0"
maintainer: "Ivan Gotovchits <ivg@ieee.org>"
authors: "BAP Team"
homepage: "https://github.com/BinaryAnalysisPlatform/bap/"
bug-reports: "https://github.com/BinaryAnalysisPlatform/bap/issues"
dev-repo: "git://github.com/BinaryAnalysisPlatform/bap/"
license: "MIT"
build: [
  ["./configure" "--prefix=%{prefix}%" "--enable-primus-test"]
  [make]
]

install: [[make "install"]]

remove: [
        ["ocamlfind" "remove" "bap-plugin-primus_test"]
        ["bapbundle" "remove" "primus_test.plugin"]
        ]

depends: [
  "ocaml" {>= "4.04.1" & < "4.08.0"}
  "bap-std" {= "1.6.0"}
  "bap-primus" {= "1.6.0"}
]
synopsis: "BAP Primus Testing and Program Verification module"
description: """
With Primus Test Framework program analysis could be implemented as a
set of simple tests written in Primus Lisp language. The framework
provides an unified incident reporting facility for generalized
problem reporting. The framework comes with a couple of analysis on
board as a showcase.

Memcheck - a memory checker that detects vioalations of memory
management discipline, such as use-after-free, double free, and
corrupted free.

Check Returned Value - verifies that a program is addressing all
possible outcomes of certain API calls, e.g., checks return values,
error codes, etc."""
url {
  src: "https://github.com/BinaryAnalysisPlatform/bap/archive/v1.6.0.tar.gz"
  checksum: "md5=0ccf6571613c0666a37d154c7f70af4f"
  mirrors: "https://mirrors.aegis.cylab.cmu.edu/bap/1.6.0/v1.6.0.tar.gz"
}
