FLEX make targets you should know

This is a quick guide to the targets included in the FLEX project makefile as of 13-Jun-1999. This is not an exhaustive list, but these are the generally useful targets.

Quick guide: java / jikes / update / list / list-packages / jar / tar / doc / wc / clean

make java

make java is the default target of the makefile. It will compile the FLEX sources using Sun's javac compiler, or another compiler if you override the definition of JAVAC. No dependency-checking is done; instead all sources are built. The simple reason is that all simple dependency-checking tools we tried took much too long to check and update the dependency information. If you want speed, install jikes instead. The javac compiler is supported for universal compatibility, and speed hacks for it are not a priority.

make jikes

Jikes is a very fast java compiler from IBM alphaWorks. Use the most recent version available, as Jikes is still under active development (and may not work with JDK 1.2). However, jikes is orders of magnitude faster than javac; so fast, in fact, that make takes longer to check the dependencies of the target than jikes takes to compile the code. Obviously, installing jikes is highly recommended.

make jikes will build FLEX using jikes.

make update

make update updates your working copy to the most recent version of the FLEX sources in the archive. More-or-less the same as the cvs update command, but includes all the right cvs option switches and Does The Right Thing automagically if you're currently working on a CVS branch (the current branch is assumed to be the branch on which your checked-out version of the root GNUmakefile is). Plus, you get a cool fortune. Please always use make update instead of the corresponding cvs commands unless you're really really sure you know what you are doing.

make list / make list-packages

make list and make list-packages gather up the names of all the java source files (for make list) or all the current java package directories (for make list-packages) and output them to the console. This is intended for use in shell scripts or on the command-line. For example:

grep -E '\W[[:alpha:]]{4}\W' `make list`
will show you all the four-letter words in the FLEX sources.

make jar

make jar will create a JAR binary archive of the compiled FLEX infrastructure. The generated archive will be named Harpoon.jar. The command make Harpoon.jar is identical.

make tar

make tar will create a gzipped-tar file of the currently-checked out sources. The generated file will be named harpoon.tgz. The command make harpoon.tgz is identical.

make doc

make doc will create documentation for the FLEX project using javadoc. The generated documentation will be in the subdirectory doc. Point a web browser at doc/index.html.

The generated javadoc is generally identical to that found at http://www.flex-compiler.lcs.mit.edu/Harpoon/doc unlesss you've modified your sources.

make wc

make wc lets you keep tabs on the growth of the FLEX infrastructure. It shows the size of the largest five source files, and prints the total number of lines of source currently in the project.

make clean

make clean removes compiled class files (the programmer's standard solution to fixing make funniness). It also removes Harpoon.jar (see make jar), harpoon.tgz (see make tar), and machine-generated files (parsers and lexers).

Verbatim copying and distribution is permitted in any medium,
provided this notice is preserved.
HTML Last updated: 13 June 1999