Change cbmc-viewer invocation in CBMC makefile (#63)

* Exclude FreeRTOS/Demo from CBMC proof reports.

The script cbmc-viewer generates the CBMC proof reports.  The script
searches source files for symbol definitions and annotates source
files with coverage information.  This patch causes cbmc-viewer to
ignore the directory FreeRTOS/Demo containing 348M of data.  The
script now terminates in a few seconds.

* Make report default target for CBMC Makefile.

Modify the Makefile for CBMC proofs to generate the report by default
(and not just property checking) and modify property checking to
ignore failures (due to property assertions failing) and terminating
report generation.

Co-authored-by: Mark R. Tuttle <mrtuttle@amazon.com>
This commit is contained in:
markrtuttle
2020-04-29 04:27:45 +00:00
committed by GitHub
parent d421ccc89f
commit 95ae7c6575

View File

@ -1,4 +1,4 @@
default: cbmc
default: report
# ____________________________________________________________________
# CBMC binaries
@ -114,7 +114,7 @@ goto:
$(MAKE) $(ENTRY).goto
cbmc.txt: $(ENTRY).goto
cbmc $(CBMCFLAGS) --unwinding-assertions --trace @RULE_INPUT@ > $@ 2>&1
- cbmc $(CBMCFLAGS) --unwinding-assertions --trace @RULE_INPUT@ > $@ 2>&1
property.xml: $(ENTRY).goto
cbmc $(CBMCFLAGS) --unwinding-assertions --show-properties --xml-ui @RULE_INPUT@ \
@ -135,7 +135,7 @@ report: cbmc.txt property.xml coverage.xml
--srcdir $(FREERTOS) \
--blddir $(FREERTOS) \
--htmldir html \
--srcexclude "(.@FORWARD_SLASH@doc|.@FORWARD_SLASH@tests|.@FORWARD_SLASH@vendors)" \
--srcexclude "(.@FORWARD_SLASH@Demo)" \
--result cbmc.txt \
--property property.xml \
--block coverage.xml