Optimise the %.hi : %.o rule
Previously this rule had a sanity check for the existence of the .o
file. However, the sanity check is expensive, especially on Windows,
because it requires spawning a shell. So now we use an empty command
here.
This change reduced the time to do 'make' in an up-to-date tree on
Windows from 33s to 16s for me. (the actual saving depends on how
much rebuilding you've been doing, and how many .hi files are older
than their .o files).
The comments in this file now describe various versions of the rule
that don't work.