Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

No binary distributions are available. Perhaps someone will volunteer to set up automated builds and a build download page?

...

Setup for Falcon

Falcon is written in Java 1.6. Its build scripts use Ant 1.7. Eclipse projects for development use Eclipse 4.2 (Juno).

You must obtain JFlex 1.4.3 as a prerequisite and set the environment variable JFLEX_JAR to point to it. You can obtain it here.

Building Falcon

The top-level Ant script has the following targets:

Target

Purpose

javadoc

Builds Falcon's Javadoc. See the Javadoc section below for more information.

eclipse

Prepares the project for use in Eclipse. This takes care of generating the Java code for the lexers, parsers, and BURMs.

main (default)

Produces an SDK at generated/dist/sdk containing both Falcon and the legacy compiler.

clean

Cleans the build output but leaves the any downloaded JARs.

wipe

Wipes out everything that didn't come from Subversion.

The Ant script downloads several third-party JARs. One third-party JAR must be installed as a prerequisite. See the README file for more information. main or{{main}} target will do a one-time download of five third party JARs:

  • lib/antlr.jar
  • lib/commons-cli.jar
  • lib/commons-io.jar
  • lib/guava.jar
  • lib/lzma-sdk.jar

Occasionally one of these downloads hangs. Just interrupt Ant and try again.

These JARs will hang around until you do a wipeInformation about Ant targets will be available soon.

All the compiled Java classes that comprise Falcon are packaged as falcon.jar, which is generated at generated/dist/sdk/lib. Other JAR files such as falcon-mxmlc.jar and falcon-compc.jar are codeless launcher JARs which serve only to run a particular entry point within Falcon. Launchers such as the shell script mxmlc or the batch file mxmlc.bat simply run these launch JARs from the command line.

...