From manju (CVSROOT=:ext:manju.cs.berkeley.edu:/home/cvs-repository), checkout five repositories:
$ cvs checkout smbase $ cvs checkout ast $ cvs checkout elkhound $ cvs checkout elsa $ cvs checkout verifier
In each of the first four (smbase through elsa), do
$ ./configure $ make $ make check
Then in verifier, just do
$ ./configure $ make
You can do make check in verifier, but Simplify will be required.
Note: If you run the verifier on manju, Simplify has already been installed in /opt/escjava-1.2.4/bin/Simplify and the run-Simplify script knows about it, so nothing more needs to be done to set up Simplify.
Download ESC/Java from Compaq. Unpack the escjava-X.Y.Z.tar.Z tarball somewhere (say, /opt). Then modify the run-Simplify script in the verifier directory so it points at the Simplify binary.
(Sorry this isn't more automated.)
Now, you should be able to
$ cd verifier $ make check
Check out the Kettle repository from manju alongside the other source directories (Kettle should be a sibling of verifier). Then do
$ ./configure --with-matchrule --with-cases $ make
Now it should work to
$ cd verifier $ ./regrtest -group kettle
The runvml script automates the following steps in the verification of a C program:
When something goes wrong, it's a good idea to inspect the files produced at each step. The runvml script works fine as a black box when things are working, but it's too far removed from the action when things are broken.