File tree Expand file tree Collapse file tree 2 files changed +29
-2
lines changed Expand file tree Collapse file tree 2 files changed +29
-2
lines changed Original file line number Diff line number Diff line change @@ -20,17 +20,18 @@ jbmc: jbmc.zip
20
20
cat $* .inc tool-wrapper.inc >> $@
21
21
chmod 755 $@
22
22
23
- cbmc-path.zip : cbmc.inc tool-wrapper.inc $(CBMC ) /LICENSE $(CBMC ) /src/cbmc/cbmc $(CBMC ) /src/goto-cc/goto-cc
23
+ cbmc-path.zip : cbmc.inc tool-wrapper.inc $(CBMC ) /LICENSE $(CBMC ) /src/cbmc/cbmc $(CBMC ) /src/goto-cc/goto-cc README.cbmc-path.txt
24
24
mkdir -p $(basename $@ )
25
25
$(MAKE ) cbmc-wrapper
26
26
mv cbmc-wrapper $(basename $@ ) /cbmc
27
27
sed -i ' s/^.\/cbmc-binary --graphml-witness/.\/cbmc-binary --paths fifo --graphml-witness/' $(basename $@ ) /cbmc
28
28
cp -L $(CBMC ) /LICENSE $(basename $@ ) /
29
29
cp -L $(CBMC ) /src/cbmc/cbmc $(basename $@ ) /cbmc-binary
30
30
cp -L $(CBMC ) /src/goto-cc/goto-cc $(basename $@ ) /
31
+ cp -L README.cbmc-path.txt $(basename $@ ) /README.txt
31
32
chmod a+rX $(basename $@ ) /*
32
33
zip -r $@ $(basename $@ )
33
- cd $(basename $@ ) && rm cbmc cbmc-binary goto-cc LICENSE
34
+ cd $(basename $@ ) && rm cbmc cbmc-binary goto-cc LICENSE README.txt
34
35
rmdir $(basename $@ )
35
36
36
37
cbmc.zip : cbmc.inc tool-wrapper.inc $(CBMC ) /LICENSE $(CBMC ) /src/cbmc/cbmc $(CBMC ) /src/goto-cc/goto-cc
Original file line number Diff line number Diff line change
1
+ CBMC Path
2
+ =========
3
+
4
+ This archive contains the following files:
5
+
6
+ - goto-cc: this C compiler transforms input files into so-called
7
+ `goto-binaries,' which are encoded in CBMC's intermediate representation.
8
+
9
+ - cbmc-binary: this is the actual verification tool. It takes a goto-binary
10
+ as input and checks the properties specified by command-line flags.
11
+
12
+ - cbmc: this wrapper script invokes cbmc-binary and goto-cc, parsing the
13
+ property file to pass the correct flags to cbmc-binary and returning the
14
+ correct return codes for SV-COMP.
15
+
16
+ goto-cc and cbmc-binary were compiled on Debian 9 (stretch); the binaries
17
+ should be self-hosting on similar operating systems. The upstream URL, if
18
+ you wish to compile it yourself, is https://github.com/diffblue/cbmc
19
+
20
+ To run CBMC Path manually, you need to invoke the tool as
21
+
22
+ cbmc-binary --paths fifo ...
23
+
24
+ which activates CBMC's path-exploration mode. Note that the tool will not
25
+ terminate for input programs that contain loops unless you specify an
26
+ unwinding limit using --unwind N. For other flags, see `cbmc-binary -h`.
You can’t perform that action at this time.
0 commit comments