simonmar 2005/05/16 06:47:59 PDT
Modified files:
ghc/compiler/ghci InteractiveUI.hs
ghc/compiler/main DriverMkDepend.hs DriverPhases.hs
DriverPipeline.hs Finder.lhs GHC.hs
HscTypes.lhs Main.hs
ghc/compiler/utils Util.lhs
Log:
Implement -x <suffix> flag to override the suffix of a filename for
the purposes of determinig how it should be compiled. The usage is
similar to gcc, except that we just use a suffix rather than a name
for the language. eg.
ghc -c -x hs hello.blah
will pretend hello.blah is a .hs file. Another possible use is -x
hspp, which skips preprocessing.
This works for one-shot compilation, --make, GHCi, and ghc -e. The
original idea was to make it possible to use runghc on a file that
doesn't end in .hs, so changes to runghc will follow.
Also, I made it possible to specify .c files and other kinds of files
on the --make command line; these will be compiled to objects as
normal and linked into the final executable.
GHC API change: I had to extend the Target type to include an optional
start phase, and also GHC.guessTarget now takes a (Maybe Phase) argument.
I thought this would be half an hour, in fact it took half a day, and
I still haven't documented it. Sigh.
Revision Changes Path
1.207 +11 -9 fptools/ghc/compiler/ghci/InteractiveUI.hs
1.48 +1 -1 fptools/ghc/compiler/main/DriverMkDepend.hs
1.37 +31 -14 fptools/ghc/compiler/main/DriverPhases.hs
1.202 +32 -28 fptools/ghc/compiler/main/DriverPipeline.hs
1.83 +5 -5 fptools/ghc/compiler/main/Finder.lhs
1.30 +25 -17 fptools/ghc/compiler/main/GHC.hs
1.136 +9 -4 fptools/ghc/compiler/main/HscTypes.lhs
1.153 +56 -29 fptools/ghc/compiler/main/Main.hs
1.77 +17 -18 fptools/ghc/compiler/utils/Util.lhs
_______________________________________________
Cvs-ghc mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-ghc