This is ViperServer, an HTTP server that manages verification requests to different tools from the Viper tool stack.
The main two Viper tools (a.k.a verification backends) currently are:
For more details about using Viper, please visit: http://viper.ethz.ch/downloads/
Clone viperserver (this repository) in your computer.
Execute git submodule update --init --recursive
in the cloned directory to fetch the carbon
, silicon
, and (transitively) the silver
repositories. Note that both carbon
and silicon
have a silver
submodule. Even though silicon
's silver
repository is actually used for compilation of ViperServer, we assume that both reference the same silver
commit.
Compile by typing: sbt compile
Other supported SBT commands are: sbt stage
(produces fine-grained jar files), sbt assembly
(produces a single fat jar file).
Set the environment variable Z3_EXE
to an executable of a recent version of Z3.
Run the following command: sbt test
.