blob: 690cb74b236b776195969d4fa0b0cccea00e843d [file] [log] [blame]
Dependencies
------------
To build the compiler core and the Java and XML bindings and Java-based examples:
* Java JDK 1.5_011 or later
* Apache Ant 1.7+
* JavaCC 4.0
* Junit 4.3.1
* Velocity 1.5
To compile the C# bindings and examples:
* Apache Ant DotNet 1.0
* Mono 1.9
- or -
* .NET Framework 2.0 (Visual Studio 2005)
* NUnit 2.4.7
To compile NSIS installers:
* NSIS 2.23
Setup development environment
-----------------------------
1. Install JDK. Make certain that you set your JAVA_HOME environment variable to point to the correct location.
--OPTIONAL for HTTP-Json Transport in C# --
2. Download the JsonFx.Json.dll (http://jsonfx.net/BuildTools/) and place on your dev machine hard drive.
Be sure to update the build.dependencies file to reflect the path of where you downloaded it to.
--OPTIONAL for Javascript Runtime --
3. Download jQuery 1.2.5 (http://docs.jquery.com/Downloading_jQuery) and place on your dev machine hard drive.
Be sure to update the build.dependencies file to reflect the path of where you downloaded it to.
Ant-based development
---------------------
1. Install Apache ANT (version 1.7 or later).
2. Put /path/to/apache-ant-1.7/bin in your PATH.
3. If you have Mono, make certain MONO_HOME is set correctly. If you have .NET framework, make certain msbuild.exe is in your PATH.
4. If building C#, make certain NUNIT_HOME is set correctly.
5. If building on Win32 and you want to build the NSIS installers, set NSIS_HOME to /path/to/nsis/2.23.
6. Update 'build.dependencies' with the correct paths to the jar's this project depends upon:
* javacc.home=/path/to/javacc-4.0
('${javacc.home}/bin/lib/javacc.jar' should exist)
* junit.lib=/path/to/junit-4.3.1
('${junit.lib}/junit-4.3.1.jar' should exist)
* velocity.lib=/path/to/velocity-1.5
('${velocity.lib}/velocity-dep-1.5.jar' should exist)
--OPTIONAL--
* ant-dotnet.lib=/path/to/apache-ant-dotnet-1.0
('${ant-dotnet.lib}/ant-dotnet-1.0.jar' should exist)
--OPTIONAL for Javascript languange binding--
* jsonfx-json.lib=/path/to/JsonFx.Json-1.0.0802.2707
('${jsonfx-json.lib}/JsonFx.Json.dll' should exist)
--OPTIONAL for Javascript languange binding--
* jQuery.lib=/path/to/jquery-1.2.5
('${jQuery.lib}/jquery.js' should exist)
Build
-----
At the shell prompt type:
> ant release
This will build all compilers and all the bindings for which you have setup dependencies. It will also build and run all unit/functional tests and build all the examples in examples/.
Once complete, the dist tree can be found in 'target/Installers/dist'. Copy this directory manually to the desired install location.
Using Eclipse
-------------
See ECLIPSE_USERS_README.txt