--make is now the default (#3515), and -fno-code works with --make (#3783)
authorSimon Marlow <marlowsd@gmail.com>
Tue, 27 Apr 2010 12:28:51 +0000 (12:28 +0000)
committerSimon Marlow <marlowsd@gmail.com>
Tue, 27 Apr 2010 12:28:51 +0000 (12:28 +0000)
commit7828bf3ea2ea34e7a3a8662f5f621ef706ffee5c
treef5a695fc11e453328d627dbc9e036ed04b3861d9
parentb1710d984af954e4b539b2dd16e3fe92be76d21a
--make is now the default (#3515), and -fno-code works with --make (#3783)
If the command line contains any Haskell source files, then we behave
as if --make had been given.

The meaning of the -c flag has changed (back): -c now selects one-shot
compilation, but stops before linking.  However, to retain backwards
compatibility, -c is still allowed with --make, and means the same as
--make -no-link.  The -no-link flag has been un-deprecated.

-fno-code is now allowed with --make (#3783); the fact that it was
disabled before was largely accidental, it seems.  We also had some
regressions in this area: it seems that -fno-code was causing a .hc
file to be emitted in certain cases.  I've tidied up the code, there
was no need for -fno-code to be a "mode" flag, as far as I can tell.

-fno-code does not emit interface files, nor does it do recompilation
checking, as suggested in #3783.  This would make Haddock emit
interface files, for example, and I'm fairly sure we don't want to do
that.  Compiling with -fno-code is pretty quick anyway, perhaps we can
get away without recompilation checking.
compiler/main/DriverPipeline.hs
compiler/main/DynFlags.hs
compiler/main/HscMain.lhs
docs/users_guide/using.xml
ghc/Main.hs