CHANGES version 2.2.1
This file summarizes changes made since mmake 1.26
* Fixed the potential circular dependency problem in the dependency
graph, which occur when there is a dual dependency between two
or more classes. The trick is to let .class files depend on only
.java files in the graph, not on other .class files. Thanks to Tim
Oberg <email@example.com>. [Addendum, With this dependency
graph strategy the (dang*) built-in dependency check in the java
compiler will kick in and compile depending java-files in the
"background" before make can get a chance to compile the file. This
is not a problem, (on the contrary) but can give the impression that
make forget to compile classes, when looking at the output from
make. (A Java compiler compiles more than one file in a swoop if it
feels like it).]
* Added uninstall target
* CPP now runs first, before any .java files are compiled. This, to
avoid errors in a situation where a.xjava depends on b.xjava. CPP
will also run first in the depend target for the same reason.
* Removed unnecessary multiple dependencies for .xjava files in
* Refactored the unnecessary complicated eval construct - thanks to
Trond Michelsen <firstname.lastname@example.org>
* Configure script and Makefile. The configure script will setup mmake with
the local Perl-interpreter and with jikes as the java compiler. If jikes
is not found, javac is used instead.
* Added prototyping to avoid warning messages with Perl version 5.6 or later
* tags target - Submitted by Jesper Hansen <email@example.com>
* Added support for installing resource files together with class
files. Resource files are files used by an application or Applet.
Types of resource files are, *.properties, *.gif or *.au.
For example, if you have a directory in the package structure
with only property files (e.g. for Localized ResourceBundles) like:
org/mydomain/myapplication/resources/ then this directory and the
property files will be installed when you do a 'make install'. This
is especially usefull when working with the new Servlet 2.2 api and
web-applications, and you want to install property files into e.g.
* Added dependency check for resource files as well. When a jar file
is created it will now be re-buildt if a resource file was changed.
Thanks to "David D. Kilzer".
* Escaping the $ delimiter in inner classes. `make install' had problem
installing inner-classes unless the delimiter was escaped.
* Removed the GNU find syntax and falling back to using standard find
syntax when searching for source files.
* Updated the README file.
* Added version options to the script