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.
      

Changes  Path
+1 -0 omake/Files
+1 -1 omake/OMakefile.in
+39 -35 omake/OMakeroot
+142 -58 omake/src/build/omake_build.ml
+6 -1 omake/src/build/omake_build_type.ml
+43 -15 omake/src/env/omake_env.ml
+55 -1 omake/src/ir/omake_cache.ml
+11 -3 omake/src/ir/omake_cache.mli
+62 -28 omake/src/ir/omake_node.ml
+1 -1 omake/src/ir/omake_node.mli
Added omake/src/ir/omake_node_sig.ml
Properties omake/src/ir/omake_node_sig.ml
+13 -69 omake/src/ir/omake_node_type.ml
+1 -1 omake/src/magic/omake_gen_magic.ml