X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=utils%2Fghc-cabal%2Fghc.mk;h=c41cd01cd85fb7c9a1219dbfefccebf67ec28770;hb=8464822fd829e63b2301ced2c2027edeb788f527;hp=c0fd0f336d7930f134e90d9e07bff89bb7c8fab3;hpb=34cc75e1a62638f2833815746ebce0a9114dc26b;p=ghc-hetmet.git diff --git a/utils/ghc-cabal/ghc.mk b/utils/ghc-cabal/ghc.mk index c0fd0f3..c41cd01 100644 --- a/utils/ghc-cabal/ghc.mk +++ b/utils/ghc-cabal/ghc.mk @@ -1,4 +1,15 @@ # ----------------------------------------------------------------------------- +# +# (c) 2009 The University of Glasgow +# +# This file is part of the GHC build system. +# +# To understand how the build system works and how to modify it, see +# http://hackage.haskell.org/trac/ghc/wiki/Building/Architecture +# http://hackage.haskell.org/trac/ghc/wiki/Building/Modifying +# +# ----------------------------------------------------------------------------- + # Bootstrapping ghc-cabal # Euch, hideous hack: @@ -8,13 +19,13 @@ CABAL_VERSION := $(subst .,$(comma),$(CABAL_DOTTED_VERSION)) CABAL_CONSTRAINT := --constraint="Cabal == $(CABAL_DOTTED_VERSION)" $(GHC_CABAL_INPLACE) : $(GHC_CABAL_DIR)/dist/build/tmp/ghc-cabal$(exeext) - $(MKDIRHIER) $(dir $@) - $(CP) $< $@ + "$(MKDIRHIER)" $(dir $@) + "$(CP)" $< $@ $(GHC_CABAL_DIR)/dist/build/tmp/ghc-cabal$(exeext): $(GHC_CABAL_DIR)/ghc-cabal.hs $(MKDIRHIER) - $(MKDIRHIER) bootstrapping - $(MKDIRHIER) $(dir $@) - $(GHC) --make $(GHC_CABAL_DIR)/ghc-cabal.hs -o $@ \ + "$(MKDIRHIER)" bootstrapping + "$(MKDIRHIER)" $(dir $@) + "$(GHC)" $(SRC_HC_OPTS) --make $(GHC_CABAL_DIR)/ghc-cabal.hs -o $@ \ -Wall $(WERROR) \ -DCABAL_VERSION=$(CABAL_VERSION) \ -odir bootstrapping \ @@ -42,9 +53,11 @@ $(eval $(call all-target,$(GHC_CABAL_DIR),$(GHC_CABAL_INPLACE))) $(GHC_CABAL_DIR)_dist-dummy-ghc_MODULES = dummy-ghc $(GHC_CABAL_DIR)_dist-dummy-ghc_PROG = dummy-ghc$(exeext) -$(GHC_CABAL_DIR)/dist-dummy-ghc/build/dummy-ghc.hs : $(GHC_CABAL_DIR)/ghc.mk $(MKDIRHIER) - $(MKDIRHIER) $(dir $@) +# depend on project.mk, so we pick up the new version number if it changes. +$(GHC_CABAL_DIR)/dist-dummy-ghc/build/dummy-ghc.hs : $(GHC_CABAL_DIR)/ghc.mk $(MKDIRHIER) mk/project.mk + "$(MKDIRHIER)" $(dir $@) echo "import System.Environment; import System.Cmd; import System.Exit" >$@ + echo "main :: IO ()" >>$@ echo "main = do args <- getArgs; if args == [\"--numeric-version\"] then putStrLn \"$(ProjectVersion)\" else do e <- rawSystem \"$(GHC_STAGE0)\" args; exitWith e" >>$@ # We don't build dummy-ghc with Cabal, so we need to pass -package