-
Notifications
You must be signed in to change notification settings - Fork 5
/
meta.yml
102 lines (82 loc) · 2.38 KB
/
meta.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
---
fullname: Cheerios
shortname: cheerios
opam_name: coq-cheerios
organization: uwplse
community: false
action: true
dune: false
coqdoc: false
synopsis: Coq library for verified serialization
description: |-
A formally verified serialization library for Coq
which defines a typeclass for serializable types and instances
for many standard library types.
authors:
- name: Justin Adsuara
initial: false
- name: Karl Palmskog
initial: false
- name: Keith Simmons
initial: true
- name: James R. Wilcox
initial: true
- name: Doug Woos
initial: true
maintainers:
- name: Karl Palmskog
nickname: palmskog
opam-file-maintainer: palmskog@gmail.com
opam-file-version: dev
license:
fullname: BSD 2-Clause "Simplified" license
identifier: BSD-2-Clause
supported_coq_versions:
text: 8.14 or later
opam: '{>= "8.14"}'
tested_coq_opam_versions:
- version: dev
- version: '8.18'
- version: '8.17'
- version: '8.16'
- version: '8.15'
- version: '8.14'
dependencies:
- opam:
name: coq-struct-tact
version: '{= "dev"}'
description: |-
[StructTact](https://github.com/uwplse/StructTact)
ci_extra_dev: true
namespace: Cheerios
keywords:
- name: serialization
- name: deserialization
categories:
- name: Computer Science/Data Types and Data Structures
build: |-
## Building and installation instructions
The easiest way to build and install the Cheerios Coq library is via [opam](http://opam.ocaml.org/doc/Install.html):
```shell
opam repo add coq-extra-dev https://coq.inria.fr/opam/extra-dev
opam install coq-cheerios
```
To instead build and install manually, do:
```shell
git clone https://github.com/uwplse/cheerios.git
cd cheerios
make # or make -j <number-of-cores-on-your-machine>
make install
```
To use serializable types in executable programs, code must be extracted
to OCaml and linked with the Cheerios runtime library. The connection between
the Coq definitions and the runtime library primitives is established in
`ExtractOCamlCheeriosBasic.v` in the `extraction` directory, which must be
imported before extraction of serializable types.
To build and install the OCaml runtime library:
```shell
opam pin add cheerios-runtime -k git https://github.com/uwplse/cheerios.git
```
To compile the runtime library manually, go to the `runtime` directory
and run `make` (requires [OCamlbuild](https://github.com/ocaml/ocamlbuild)).
---