28 lines
1.7 KiB
Markdown
28 lines
1.7 KiB
Markdown
|
# Prerequisites
|
||
|
Boppi requires JDK 1.8 or higher and [Ant](https://ant.apache.org/). Both must be available in the environment.
|
||
|
|
||
|
|
||
|
# Installation
|
||
|
Run `ant build` to perform a basic build of the project: it initialises output directories, generates _ANTLR_ files and compiles all java files. To skip _ANTLR_ file generation, run `ant do-init` and `ant do-build` separately.
|
||
|
|
||
|
Run `ant build-all` to do the above and generate _javadoc_ documentation, run _JUnit_ tests and produce a runnable _JAR_ file.
|
||
|
|
||
|
To see all possible targets, run `ant -verbose -projecthelp`.
|
||
|
|
||
|
|
||
|
# Command line use
|
||
|
After building a _JAR_ file, a command `boppi` becomes available in the `dist/` folder. This command can be used to compile and run files or perform an interactive session. See `boppi --help` and `boppi interactive --help` for more information.
|
||
|
|
||
|
|
||
|
# Directory structure
|
||
|
- `bin` contains compiled java code and required text files (after `ant do-build`)
|
||
|
- `dist` contains a runnable JAR, script files and a copy of the libraries required to run the JAR (after `ant do-build-jar`)
|
||
|
- `doc` contains a report of the project and attached example files
|
||
|
- `doc/javadoc` contains _javadoc_ documentation of the project (after `ant do-javadoc`)
|
||
|
- `doc/junit` contains a report of _JUnit_ tests (after `ant do-junit` and `ant do-junit-report`)
|
||
|
- `lib` contains Java libraries required for the project, excluding those in the JDK 1.8
|
||
|
- `src`
|
||
|
- `src/pp/iloc` contains java code for a slightly modified ILOC virtual machine
|
||
|
- `src/pp/s1184725/boppi` contains java code for the _Boppi_ language
|
||
|
- `util` contains [Pygments](http://pygments.org/) lexers for both ILOC and Boppi and scripts to run the Boppi command line interface (used for the JAR build).
|