Changes by: Jason Hickey (jyh at cs.caltech.edu)
Date: 2003-04-26 17:39:09 -0700 (Sat, 26 Apr 2003)
Revision: 49
Log message:
Fixed the problem with .o files that change but .cmx files that don't.
This turned out to be harder than I thought, but now the OMakeroot
keeps track of the .o and .a aux files that ocamlopt makes.
This fix changes the semantics of implicit rules. If an implicit
rule has multiple targets, like
%.ml %.mli: %.mly
ocamlyacc $<
then it is an and-target: omake assumes that the command will
build both targets.
Side note: this fix hit a performance bug in lm_map, which had debugging
code enabled (see the line marked n8-). I've taken this out, it was
multiplying runtimes by a factor of 3 or so. If you put it back, you may
want to protect it with the "if debug debug_map then" sequence.