development notes

This directory contains sources and other resources needed for building, testing, and creating a distribution of the TVLA system.

Relevant links

Development mailing list

Results of nighly build (remote users may need SSH to connect to PLDI)

Building TVLA

We are using ANT version 1.6.2 to build and perform different build-related tasks.

Build requirements

  1. TVLA requires J2SE verision 1.4.2 or higher.
  2. In order to perform tasks with ANT, download and install Ant version 1.6.2 (and add the bin sub-directory to your PATH environment variable).
  3. We are using JUnit1 version 3.8.1 for unit testing.
    Add junit.jar, which is under the lib sub-directory, to your CLASSPATH environment variable.
  4. To test the installation, open a command console, move to the installation directory and enter 'ant'. This should activate the build process and terminate with a ``BUILD SUCCESSFUL'' message.
For additional documentation on TVLA sources, enter `ant javadocs' and inspect the documentation created under the build/javadocs directory.

Directory structure:

./
.classpath : used by Eclipse to find jar files needed for building and testing TVLA.
.project : an Eclipse project file.
build.xml : contains information for performing different tasks using the ANT Java-based build tool. Enter 'ant -projecthelp' to see the list of available tasks and their description.
tvla.properties : contains properties for runtime configuration of TVLA.
user.properties : a file for user-specified properties that override the ones in tvla.properties.

bin
Contains scripts for running TVLA on different platforms.

docs
Contains the sources and a version of the user manual.

etc
Contains miscellaneous files, e.g., license for tools used by TVLA.

examples
Contains inputs for TVLA that demonstrate how is can be used to perform various kinds of static analyses.

lib
Contains library files, some go into the distribution and some don't. After building TVLA, tvla.jar goes in here as well.

src
Contains sources and resources (e.g., Metadata files) that are used to build the distribution.

tests
Contains sources and resources for testing system (with JUnit). These sources don't go into the distribution.

Recommended template for TVLA code submissions

TVLA code submission
====================
Date      : 
Submitter : 
branch    : HEAD

General description:
====================

Details by file:
================

For more information about JUnit click here.