1.1 Why do I want to use it?
Well, basically because it's the best thing since sliced bread. But if
you want specifics, here is a list of features:
-
Mosmake is written to work with the new "toplevel mode" of Moscow ML
2.0. Toplevel mode is what allows you to use the full SML modules
language (and then a bunch, but that's not our point here) instead of
the simplified subset that Moscow ML supported in 1.44 and earlier
versions.
-
Units written with the old "structure mode" conventions are
supported too. See section 2.3 Structure mode.
-
The SML sources for the project can be split across several
subdirectories. Mosmake transparently handles the task of fitting
together cross-directory compilations. See section 2.10 Multiple directories.
-
When used with GNU
make 3.80 or newer, Mosmake will
intelligently prune parts of the rebuild process that turn out to be
unnecessary even tough that was not implied by the file modification
dates. If you change an interface, you won't trigger recompilation of
units that depend on it only indirectly. You can change comments and
layout without any cascading recompilations at all.
See section 2.2.6 The "smartmake" feature.
-
Mosmake creates well-behaved makefile fragments that works together with
your own rules for the rest of the build process. You can add your own
rules to compile C programs, handling installation and configuration,
running the SML programs compiled with Mosmake, build SML source files
mechanically, or all of this at once. Mosmake can peacefully coexist
with a master `Makefile' managed by
autoconf. See section 2.7.3 Mosmake and other makefile generators.
This document was generated
by Henning Makholm on November, 19 2002
using texi2html