Get building GHC itself with Cabal more-or-less working
[ghc-hetmet.git] / Makefile
index 9e3319e..f5b1706 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -67,12 +67,23 @@ include $(TOP)/mk/boilerplate.mk
 
 # We can't 'make boot' in libraries until stage1 is built
 ifeq "$(BootingFromHc)" "YES"
-SUBDIRS_BUILD = includes rts compiler docs utils driver
+SUBDIRS_BUILD = includes rts compiler ghc docs utils driver
 else
-SUBDIRS_BUILD = includes utils driver docs compiler rts libraries/Cabal/doc
+SUBDIRS_BUILD = includes utils driver docs compiler ghc rts libraries/Cabal/doc
 endif
 
-SUBDIRS = gmp libffi includes utils driver docs rts libraries compiler libraries/Cabal/doc
+SUBDIRS = gmp libffi includes utils driver docs rts compiler ghc libraries libraries/Cabal/doc
+
+check-all: check-tools check-packages
+
+check-tools:
+       @:
+ifeq "$(HADDOCK_DOCS)" "YES"
+ifeq "$(HADDOCK)"      ""
+       echo "Couldn't find haddock" >&2
+       exit 1
+endif
+endif
 
 # Sanity check that all the boot libraries are in the tree, to catch
 # failure to run darcs-all.
@@ -97,7 +108,7 @@ GCC_LIB_DEP = stamp.inplace-gcc-lib
 endif
 endif
 
-stage1 : $(GCC_LIB_DEP) check-packages
+stage1 : $(GCC_LIB_DEP) check-all
        $(MAKE) -C libraries boot
        $(MAKE) -C gmp       all
        $(MAKE) -C libffi    all
@@ -128,12 +139,13 @@ stage1 : $(GCC_LIB_DEP) check-packages
 # an example.  Thus, we explicitly build a second version with the stage 1 
 # compiler of all utils that get installed and of all extra support binaries
 # includes in binary dists.
-stage2 : check-packages
+stage2 : check-all
        $(MAKE) -C compiler boot stage=2
        $(MAKE) -C compiler stage=2
+       $(MAKE) -C ghc      stage=2
 
 
-stage3 : check-packages
+stage3 : check-all
        $(MAKE) -C compiler boot stage=3
        $(MAKE) -C compiler stage=3