X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2FMakefile;h=3c215a3840297de03deafffe7362668664bb36a1;hb=41ea53bfeccbb2fd33e5408f1dde47b0770d30e2;hp=cb122413ec6bf96e93e34ee8a18ace1d383085ae;hpb=6d0dd9aa562a9f96bf875b7260675609e1171b66;p=ghc-hetmet.git diff --git a/ghc/Makefile b/ghc/Makefile index cb12241..3c215a3 100644 --- a/ghc/Makefile +++ b/ghc/Makefile @@ -34,16 +34,15 @@ stage2 :: stage3 :: $(MAKE) stage=3 -clean distclean:: - -$(CABAL) clean --distpref dist-stage1 - -$(CABAL) clean --distpref dist-stage2 - -$(CABAL) clean --distpref dist-stage3 - $(RM) -rf stage1-inplace - $(RM) -rf stage2-inplace - $(RM) -rf stage3-inplace +ifeq "$(CLEAN_ALL_STAGES)" "YES" +clean distclean:: clean.stage.1 clean.stage.2 clean.stage.3 +else +clean distclean:: clean.stage.$(stage) +endif -# XXX This should be defined somewhere more central -INPLACE_DATA_DIR = $(FPTOOLS_TOP_ABS)/inplace-datadir +clean.stage.%: + -$(CABAL) clean --distpref dist-stage$* + $(RM) -rf stage$*-inplace CONFIGURE_FLAGS_STAGE1 += --flags=-ghci @@ -83,10 +82,14 @@ BUILD_FLAGS=$(patsubst %, --ghc-option=%, $(EXTRA_HC_OPTS)) # no library to register ifeq "$(stage)" "1" +ifeq "$(ghc_ge_609)" "NO" # GHC 6.9+ can handle cross-package recompilation checking, but # we don't rely on the bootstrapping compiler being able to do this. TOUCH_MAIN = $(RM) dist-stage1/build/ghc/ghc-tmp/Main.o endif +endif + +dist-stage1 dist-stage2 dist-stage3: dist-stage%: boot.stage.% boot.stage.%: $(CABAL) configure --distpref dist-stage$* \ @@ -97,7 +100,7 @@ boot.stage.%: --datadir='$$libdir' \ --datasubdir=. -build.stage.%: +build.stage.%: dist-stage% $(TOUCH_MAIN) $(CABAL) build --distpref dist-stage$* $(BUILD_FLAGS) $(INSTALL_PACKAGE) install '$(GHC_PKG_PROG)' 'XXX/package.conf' "" \