Top | Web home | SourceForge home
SourceForge.net Logo
$Id: //guest/julian_hyde/saffron/doc/install.html#3 $
(C) Copyright 2002, Julian Hyde
Author Julian Hyde (julian.hyde@mail.com)
Created February 15th, 2002

How to build and install Saffron

1. Contents

  1. Contents
  2. Modification history
  3. Setup build environment
  4. Build
  5. Run the demo
  6. Appendix A: Product installation instructions
  7. Appendix B: Coding guidelines

2. Modification history

Date Revision Author Comment
February 15th, 2002 1 Julian Hyde Created

3. Setup build environment

Here are the steps to setup a build environment.

  1. Install JDK 1.3.1.
  2. Install Ant.
  3. Install JUnit.
  4. Install JavaCC.
  5. Modify build.bat, setting JAVACC_HOME, ANT_HOME, JUNIT_HOME. (It may be sufficient to just change HOME_DRIVE.)

Optional:

  1. Install Jikes.

4. Build

As follows:

cd ${project.location}
build

5. Run it

To run the JUnit regression test:

build test

Or you can run class saffron.test.Main using any JUnit test harness. You can control the behavior of the test by creating a file called saffron.properties. Here is an example:

saffron.Statement.printBeforeCompile=false
saffron.debug.level=0
saffron.package.name=saffron.runtime
saffron.java.dir=D:/saffron/src/examples
saffron.class.dir=D:/saffron/classes
saffron.java.compiler.args=-classpath D:/saffron/classes -d D:/saffron/classes -verbose
saffron.test.Class=sales.InMemorySalesTestCase
saffron.test.Name=testIteratorJoin
#saffron.test.Suite=saffron.runtime.ThreadIterator$Test

You'll need an ODBC datasource called empdept in order to run the JDBC flavor of the tests.

To generate Sales2.java from Sales2.oj and compile it to Sales2.class; and to compile Test.java to Test.class:

cd ${project.location}
build compile.examples

(There is a bug in the ojavac Ant task. If you get an IOException, remove Sales2.java and try again.)

To run Sales2:

build run.sales.Sales2

Appendix A. Product installation instructions

These are the products I used to build saffron. Install all of the products marked 'required'. (I use /-es in paths because I am run MKS on Windows 2000, and it makes things simpler.)

In the following, the symbol ${project.location} means the root of your source tree.

Where the instructions suggest setting an environment variable, it is often sufficient to edit the corresponding line in ${project.location}/build.bat.

Product Required? Version Comment
JDK Yes 1.1 or later (I use version 1.3.1.) Available from http://developer.java.sun.com/. I downloaded j2sdk-1_3_1_02-win.exe, and extracted to E:/jdk1.3.1_02. Set JAVA_HOME to same, and CLASS_PATH to %JAVA_HOME%/lib/dt.jar.
Ant Yes 1.4.1 or later  I downloaded jakarta-ant-1.4.1-bin.zip, extracted to E:/jakarta-ant-1.4.1, and set ANT_HOME to the same.
Jikes No   Available from http://oss.software.ibm.com/developerworks/opensource/jikes/. I downloaded jikes-1.15-windows.zip, and extracted jikes.exe to C:/winnt/system32. Then uncomment the relevant lines of ${project.location}/build.properties.
JUnit Yes 3.7 or later Available from http://www.junit.org/. I downloaded junit3.7.zip, extracted to E:/junit3.7, and set JUNIT_HOME to the same.
JavaCC (parser generator) Yes JavaCC2.1 Available from http://www.webgain.com/products/java_cc/. Install in E:/JavaCC2.1 or similar. Edit ${project.home}/build.bat. Edit ${project.home}/build.properties.
Intellij IDEA (a Java IDE) No 2.5.1 You can download a 30-day evaluation copy from http://www.intellij.com/idea/. Follow the instructions in Install.txt in idea-2_5_1.zip to there.

 

Appendix B: Coding guidelines

End $Id: //guest/julian_hyde/saffron/doc/install.html#3 $