blob: 1d35028ae980f00d27496d4b3f9088351d7d51bd [file] [view]
<!--
Copyright 2018, Data61, CSIRO (ABN 41 687 119 230)
SPDX-License-Identifier: CC-BY-SA-4.0
-->
This is a test suite for running the generated capDL refinement proofs.
These are Isabelle proof scripts, to prove that the generated capDL
respects the isolation properties expected from its CAmkES system
specification.
Currently, the verification only supports apps that use the basic
CAmkES features and connectors.
We plan to extend verification support to more complex CAmkES
assemblies in the future (eventually including a CAmkES VMM).
Also note that only the AARCH32 platform is supported.
When building a CAmkES app, enable proof generation with the
`CAmkESCapDLVerification` option. The proof scripts will be
generated in `projects/camkes` in your build directory. This also
requires `CAmkESCapDLStaticAlloc` to be enabled.
# Tests
The top-level test script is `./run_tests`.
The tests expect to run as part of a
[camkes-manifest](https://github.com/seL4/camkes-manifest) checkout.
In the camkes-manifest repo, do
```
repo sync -m l4v-master.xml
```
This will clone the Isabelle theorem prover and the L4.verified
infrastructure into `projects/l4v`.
Then run the `run_tests` script that is in this directory.