X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=mk%2Fbootstrap.mk;h=1501d5500c3fca649728010d3faad4573b7228d2;hb=1994438bb2a4e052a267744dcec9efb6f8bd3e97;hp=35d97126b72613f4ea895e69596aa41a92977be5;hpb=82a610f1ab49c77b2a31108925c9fd5c89ecd14e;p=ghc-hetmet.git diff --git a/mk/bootstrap.mk b/mk/bootstrap.mk index 35d9712..1501d55 100644 --- a/mk/bootstrap.mk +++ b/mk/bootstrap.mk @@ -1,5 +1,5 @@ # ----------------------------------------------------------------------------- -# $Id: bootstrap.mk,v 1.31 2004/10/07 03:19:51 dons Exp $ +# $Id: bootstrap.mk,v 1.34 2005/05/10 10:29:49 simonmar Exp $ # # Makefile rules for booting from .hc files without a driver. # @@ -61,16 +61,19 @@ endif ifeq "$(BootingFromUnregisterisedHc)" "YES" PLATFORM_HC_BOOT_CC_OPTS += -DNO_REGS -DUSE_MINIINTERPRETER -SRC_CC_OPTS += -DNO_REGS -DUSE_MINIINTERPRETER -# Add these flags to SRC_CC_OPTS too, because they need to be passed to the plain .c -# files in ghc/rts. endif PLATFORM_CC_OPTS += -D__GLASGOW_HASKELL__=$(ProjectVersionInt) HC_BOOT_CC_OPTS = $(PLATFORM_HC_BOOT_CC_OPTS) $(PLATFORM_CC_OPTS) $(CC_OPTS) -SRC_CC_OPTS += -I$(FPTOOLS_TOP_ABS)/ghc/includes -I$(FPTOOLS_TOP_ABS)/libraries/base/include -I$(FPTOOLS_TOP_ABS)/libraries/unix/include -I$(FPTOOLS_TOP_ABS)/libraries/parsec/include +SRC_CC_OPTS += -I$(FPTOOLS_TOP_ABS)/$(GHC_INCLUDE_DIR_REL) -I$(FPTOOLS_TOP_ABS)/libraries/base/include -I$(FPTOOLS_TOP_ABS)/libraries/unix/include -I$(FPTOOLS_TOP_ABS)/libraries/parsec/include + +# C code compiled with UseGhcForCc=YES assumes the existence of certain CPP +# symbols defined by GHC (eg. __GLASGOW_HASKELL__), so we better make sure +# they're defined. We can't test $(UseGhcForCc) here though - it isn't defined +# yet, so we use lazy expansion. +SRC_CC_OPTS += $(if $(findstring YES,$(UseGhcForCc)), $(PLATFORM_HC_BOOT_CC_OPTS) $(PLATFORM_CC_OPTS)) ifeq "$(GhcWithInterpreter)" "YES" SRC_CC_OPTS += -I$(FPTOOLS_TOP_ABS)/libraries/readline/include @@ -86,21 +89,22 @@ UNDERSCORE= endif ifeq "$(HaveLibGmp)" "NO" -DASH_L_GHC_RTS_GMP_DIR=-L$(FPTOOLS_TOP_ABS)/ghc/rts/gmp +DASH_L_GHC_RTS_GMP_DIR=-L$(FPTOOLS_TOP_ABS)/$(GHC_RTS_DIR_REL)/gmp endif HC_BOOT_LD_OPTS = \ - -L$(FPTOOLS_TOP_ABS)/ghc/rts \ + -L$(FPTOOLS_TOP_ABS)/$(GHC_RTS_DIR_REL) \ $(DASH_L_GHC_RTS_GMP_DIR) \ -L$(FPTOOLS_TOP_ABS)/libraries/base \ -L$(FPTOOLS_TOP_ABS)/libraries/base/cbits \ - -L$(FPTOOLS_TOP_ABS)/libraries/haskell98 + -L$(FPTOOLS_TOP_ABS)/libraries/haskell98 \ + -L$(FPTOOLS_TOP_ABS)/libraries/parsec \ + -L$(FPTOOLS_TOP_ABS)/libraries/Cabal ifeq "$(GhcWithInterpreter)" "YES" HC_BOOT_LD_OPTS += \ -L$(FPTOOLS_TOP_ABS)/libraries/template-haskell \ -L$(FPTOOLS_TOP_ABS)/libraries/readline \ - -L$(FPTOOLS_TOP_ABS)/libraries/parsec \ -L$(FPTOOLS_TOP_ABS)/libraries/unix \ -L$(FPTOOLS_TOP_ABS)/libraries/unix/cbits endif @@ -145,7 +149,7 @@ ifeq "$(GhcWithInterpreter)" "YES" HC_BOOT_LIBS += -lHSreadline -lHStemplate-haskell -lHSunix -lHSunix_cbits endif -HC_BOOT_LIBS += -lHShaskell98 -lHSbase -lHSbase_cbits -lHSparsec -lHSrts -lgmp -lm $(EXTRA_HC_BOOT_LIBS) +HC_BOOT_LIBS += -lHSCabal -lHShaskell98 -lHSbase -lHSbase_cbits -lHSparsec -lHSrts -lgmp -lm $(EXTRA_HC_BOOT_LIBS) ifeq "$(GhcLibsWithReadline)" "YES" HC_BOOT_LIBS += $(patsubst %, -l%, $(LibsReadline))