1324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver### DEPENDENCIES ### 2324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver 3324c4644fee44b9898524c09511bd33c3f12e2dfBen GruverPrerequisites: 4324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * Java JRE 1.6 or greater. 5324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * Apache Ant 1.7.0 or greater; see http://ant.apache.org/manual/install.html 6324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver 7324c4644fee44b9898524c09511bd33c3f12e2dfBen GruverBefore building the JavaScript target you will need to download a few third 8324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruverparty open source libraries: 9324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver 10324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * ant-contrib: Download ant-contrib here: http://downloads.sourceforge.net/ant-contrib/ant-contrib-1.0b3-bin.zip?modtime=1162486738&big_mirror=0 11324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * Unzip the downloaded file. 12324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * Move ant-contrib-1.0b3.jar from the unzipped directory to runtime/JavaScript/third/ 13324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver 14324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * closure compiler: Download here: http://closure-compiler.googlecode.com/files/compiler-latest.zip 15324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * Unzip the downloaded file. 16324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * Move compiler.jar from the unzipped directory to runtime/JavaScript/third/ 17324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver 18324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * jsdoc-toolkit: Download the latest release from here: http://code.google.com/p/jsdoc-toolkit/downloads/list 19324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * Unzip the downloaded file. 20324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * Move the unzipped folder to runtime/JavaScript/third/jsdoc-toolkit 21324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver 22324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * jsunit: Download here: https://sourceforge.net/project/showfiles.php?group_id=28041&package_id=19823&release_id=404277 23324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * Unzip the downloaded file. 24324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver * Move the unzipped folder to runtime/JavaScript/tests/jsunit 25324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver 26324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver### BUILD ### 27324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver1) In a shell cd to runtime/JavaScript/build. 28324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver2) Run 'ant'. This will build the JavaScript runtime libraries into the 29324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver runtime/JavaScript/lib folder. 30324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver 31324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver### TESTS ### 32324c4644fee44b9898524c09511bd33c3f12e2dfBen GruverCompile Tests: 33324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver1) Build the Antlr tool itself (see main Antlr documentation for details). 34324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver This is most easily done by cd'ing to the root of the antlr code and running 35324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver 'mvn -Dmaven.test.skip=true package assembly:assembly'. If using a 36324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver different build method, update runtime/JavaScript/build/antlr3.properties to 37324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver point to the alternative jar. 38324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver2) In a shell cd to runtime/JavaScript/build. 39324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver3) Run 'ant compile-tests'. This can take a while. Warnings (but not errors) 40324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver issued during this step are expected. (We test the JS runtime against 41324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver grammars that have recoverable problems.) 42324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver 43324c4644fee44b9898524c09511bd33c3f12e2dfBen GruverRun Tests: 44324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver1) Compile the tests using the directions above. 45324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver2) Open runtime/JavaScript/tests/jsunit/testRunner.html in a browser. Note 46324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver that some browsers (notably, Firefox 3.5) will have trouble with this page 47324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver when opened with the 'file://' protocol. To circumvent this issue, start 48324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver and access the page through a lightweight http server (e.g. Mongoose). 49324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver3) Select the file runtime/JavaScript/tests/functional/all.html (or any other 50324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver test html file). 51324c4644fee44b9898524c09511bd33c3f12e2dfBen Gruver4) Hit 'Run' and (hopefully ;) watch the pretty green bar grow. 52