GHC hacking in Windows -> too much pain
Ian Lynagh
igloo at earth.li
Wed Aug 22 10:23:20 EDT 2007
On Wed, Aug 22, 2007 at 01:54:07PM +0100, Neil Mitchell wrote:
>
> We had similar problems in Yhc, so decided to move to Scons to have a
> properly cross platform and consistent build system. My only advice
> from that experiment is _never_ use Scons.
:-)
> Our current plan is to move
> to a hand-rolled Haskell build system, but we still have no idea how
> that should work.
It's not completely infeasible that building GHC 6.10 could mean running
one ./Setup {configure,build,install}, which would do likewise for each
of the compat, GHC1, RTS, libraries and GHC2 Cabal packages. Hmm, it
would be a little ugly as we can't call "./Setup configure" of one phase
before we've done "./Setup build" of the previous phase.
We'd need to
* fix http://hackage.haskell.org/trac/ghc/ticket/930 and
http://hackage.haskell.org/trac/ghc/ticket/910, or make Cabal do
its own dep analysis and use ghc -c rather than ghc --make
* make building when little or nothing has changed faster, i.e. either
ghc --make would need to write its dependency graph to a file (to
avoid needing to rerun the preprocessor on everything) or Cabal would
have to keep all the preprocessed files in dist/. It might be worth
Cabal keeping its dependency graph in dist/ anyway.
You'd then be able to build without make (probably we'd still have
Makefiles, but trivial ones that just cut down the typing slightly).
configure scripts (called by "./Setup configure") are another story, of
course. On the other hand, I think a reasonable proportion of our
configure stuff is written by us anyway (or at least copied from
elsewhere, but in our source tree rather than bundled with autotools),
so maybe re-implementing it wouldn't be such a problem. I know Malcolm
is also interested in not being dependent on autotools.
Thanks
Ian
More information about the Cvs-ghc
mailing list