[project @ 2002-10-17 14:26:16 by simonmar]
Finder overhaul.
The finder had got pretty complicated; this commit is mainly a
cleanup, with one new feature:
- the finder has a cache (again). The cache may be flushed by
calling flushFinderCache, which actually only flushes home modules
from the cache, because package modules are assumed not to move.
This change is apropos of some other changes which will result in
the finder being called more often, so we think a cache is going
to be worthwhile.
Also a couple of bugs were fixed:
- the field ml_hi_file in a ModLocation is now *always* the name
of the .hi file. If you need a .hi-boot file, you have to make
it up by changing the suffix of ml_hi_file. (DriverMkDepend and
RnHiFiles do this). This was the cause of a bug, but I can't
remember the details.
- The -odir flag now works in a more reasonable way: hierarchical
modules get put in subdirectories of the -odir directory. eg.
if your module is A.B.C, and -odir D is specified, then the object
will be D/A/B/C.o; previously it would have been D/C.o.