this repo has no description
1opam-version: "2.0"
2maintainer: "guillaume.melquiond@inria.fr"
3authors: [
4 "François Bobot"
5 "Jean-Christophe Filliâtre"
6 "Claude Marché"
7 "Guillaume Melquiond"
8 "Andrei Paskevich"
9]
10
11homepage: "http://why3.lri.fr/"
12license: "LGPL-2.1-only"
13doc: "http://why3.lri.fr/doc/"
14bug-reports: "https://gitlab.inria.fr/why3/why3/issues"
15dev-repo: "git+https://gitlab.inria.fr/why3/why3.git"
16
17tags: [
18 "deductive"
19 "program verification"
20 "formal specification"
21 "automated theorem prover"
22 "interactive theorem prover"
23]
24
25build: [
26 ["./autogen.sh"] {dev} # when pinning, there might be no configure file
27 ["./configure"
28 "--prefix" prefix
29 "--disable-frama-c"
30 "--disable-coq-libs"
31 "--disable-js-of-ocaml"
32 "--disable-ide"]
33 [make "-j%{jobs}%" "all" "opt" "byte"]
34 [make "doc" "stdlibdoc" "apidoc"] {with-doc}
35]
36
37install: [
38 [make "install" "install-lib"]
39 [make "DOCDIR=%{_:doc}%" "install-doc"] {with-doc}
40]
41
42remove: [
43 ["rm" "%{_:bin}%/why3"]
44 ["rm" "-r" "%{_:lib}%"]
45 ["rm" "-r" "%{_:share}%"]
46 ["rm" "-r" "%{_:doc}%"] {with-doc}
47]
48
49flags: [ light-uninstall ]
50
51depends: [
52 "ocaml" {>= "4.02.3" & < "4.09.0"}
53 "ocamlfind" {build}
54 "menhir" {>= "20151112" & < "20200123"}
55 "num"
56]
57
58depopts: [
59 "zarith"
60 "camlzip"
61 "ocamlgraph"
62]
63
64conflicts: [
65 "why3-base"
66 "ocamlgraph" {< "1.8.2"}
67]
68
69synopsis: "Why3 environment for deductive program verification"
70
71description: """
72Why3 provides a rich language for specification and programming, called WhyML, and relies on external theorem provers, both automated and interactive, to discharge verification conditions. Why3 comes with a standard library of logical theories (integer and real arithmetic, Boolean operations, sets and maps, etc.) and basic programming data structures (arrays, queues, hash tables, etc.). A user can write WhyML programs directly and get correct-by-construction OCaml programs through an automated extraction mechanism. WhyML is also used as an intermediate language for the verification of C, Java, or Ada programs.
73
74Why3 is a complete reimplementation of the former Why platform. Among the new features are: numerous extensions to the input language, a new architecture for calling external provers, and a well-designed API, allowing to use Why3 as a software library. An important emphasis is put on modularity and genericity, giving the end user a possibility to easily reuse Why3 formalizations or to add support for a new external prover if wanted."""
75
76url {
77 src: "https://why3.gitlabpages.inria.fr/releases/why3-1.2.0.tar.gz"
78 checksum: [
79 "sha256=888c09fbad8d5c83b3c23ebc8d89fcb9c535cc3ee2cb8c3752329c086500e077"
80 "md5=a9574b33d94c9a4966704c8318489db9"
81 ]
82}