
Duncan Coutts wrote:
Ultimately I'd like to cabal do the dependency analysis, be able to rebuild any module (not just the lib/prog target) and do things like parallel builds.
I'm well aware however that no one has the time at the moment to address that.
Sure, all I did was take a little shortcut using existing tools (ghc -M, GNU make). These tools are not necessarily universally available, so you don't want to rely on this for a Cabal package. In the situation I'm interested in (building GHC) we definitely do have GHC and GNU make, so 'setup makefile' makes complete sense. There's one other thing I forgot to mention: currently GHC has a bug that prevents it from building itself with --make and -O (this bug I think: http://hackage.haskell.org/trac/ghc/ticket/445). So 'setup makefile' lets us build GHC itself using Cabal, where we couldn't previously, and hence we'll be able to finally ditch all the horrible makefile code for building packages in GHC's build system. Cheers, Simon