README (Jan 18, 2009)

CSP++ is developed in the Modeling & Design Automation Group in the Dept. of
Computing & Information Science, University of Guelph, Ontario, Canada.
While active "support" is not offered due to limited resources, queries may be
directed to the author of CSP++:

Bill Gardner, Assoc. Prof.
e-mail:		wgardner@cis.uoguelph.ca
homepage:	http://www.cis.uoguelph.ca/~wgardner
CSP++:		http://www.uoguelph.ca/~gardnerw/csp++


EASY INSTALL
0. Verify you have these packages:
	aclocal, autoconf, automake: GNU autotools to build and install
		Ubuntu: apt-get install automake
	flex, bison: compiler-writer tools used by cspt
		Ubuntu: apt-get install flex-old bison
		NOTE: If you get yyFlexLexer::yywrap undefined, try an older flex.
		flex 2.5.4 is known to work.
	pth: GNU Portable Threads used by framework
		Ubuntu: apt-get install libpth-dev
	cppunit: to run regression tests (optional)
		Ubuntu: apt-get install libcppunit-dev
	boost: only lexical_cast.hpp is used by regression tests (optional)
		Ubuntu: apt-get libboost-dev
		Blastwave: pkg-get -i boost_rt boost_devel
		From source: bjam ... -with-conversion
	doxygen: to generate browsable HTML docs from source files (optional)
	
1. Unpack tarball and cd to csp++-4.2

2. type './configure' with any options such as:
	--prefix=/your/installation/dir (defaults to /usr/local)
	CPPFLAGS="-DERRWATCH"
If configure has trouble locating pth or cppunit, make sure pth-config and
cppunit-configis are in your $path. You may also need to set your
LD_LIBRARY_PATH env variable if libpth.so or libcppunit.so are not linking.
For boost, you can tweak CPPFLAGS and/or LDFLAGS.  E.g., if your boost is in
/opt/csw, try CPPFLAGS="-I/opt/csw/include".

3. type 'make check' to build CSP++ and run all regression tests
	g++ 3 will give a clean compile
	g++ 4 gives many "deprecated conversion" warnings
	Normal output = OK (75 tests) / PASS: tests / All 1 tests passed
If you can't run 'make check' due to no cppunit/boost, the next step will
carry out the build.
		
4. type 'make install' to copy bin, include, and lib dirs
	bin: cspt translator
	include/cspxx: all .h files for building apps
	lib: libcspxx.a runtime framework library
You can remove csp++-4.2 after this step.

DEMOS
The DSS and ATM demos are a separate download.  Unpack them somewhere, and
customize their Makefiles to suite your platform.

DOCUMENTATION
To build the browsable source code documentation if you have doxygen installed,
go to the src subdir and type "doxygen".  You may need to customize doxyfile.

For papers, go to the CSP++ website under Publications:
http://www.uoguelph.ca/~gardnerw/csp++/

Two technical reports are approximately "user manuals".  The main paper giving
insight on CSP++ internals is "CSP++: How Faithful to CSPm?"
