X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FMakefile;h=c7d4169372f9d58e233bd8df7e6dc01f4da0d5c5;hb=550bd53be2ca1241a46517187d64fb0d077aeda0;hp=71b53fb25aae11a4a30e1a4108566f95daae14bd;hpb=b49514af620e5956d11698987a20cb0064629668;p=ghc-hetmet.git diff --git a/compiler/Makefile b/compiler/Makefile index 71b53fb..c7d4169 100644 --- a/compiler/Makefile +++ b/compiler/Makefile @@ -95,9 +95,6 @@ ifeq "$(stage)" "" stage=1 endif -# XXX DQ is now the same on all platforms, so get rid of it -DQ = \" - .DUMMY: stage_dir stage_dirs : $(MKDIRHIER) stage$(stage) @@ -476,6 +473,15 @@ bootstrapped = NO endif endif +# Beyond stage 1, honour any Mac OS X depolyment target options. If we use +# these options in stage 1 we get a linker error if the bootstrap compiler is +# for a more recent OS version +ifneq "$(findstring $(stage), 2 3)" "" +SRC_CC_OPTS += $(MACOSX_DEPLOYMENT_CC_OPTS) +SRC_HC_OPTS += $(addprefix -optc, $(MACOSX_DEPLOYMENT_CC_OPTS)) +SRC_LD_OPTS += $(addprefix -optl, $(MACOSX_DEPLOYMENT_LD_OPTS)) +endif + # ----------------------------------------------------------------------------- # Building a compiler with interpreter support # @@ -875,6 +881,8 @@ LIB_LD_OPTS += $(foreach pkg,$(PKG_DEPENDS),-package $(pkg)) # We have to expand each package dependency with its version, which we # can do by calling "ghc-pkg list $pkg --simple-output". PACKAGE_CPP_OPTS += -DPKG_DEPENDS='$(foreach pkg,$(PKG_DEPENDS),$(shell $(GHC_PKG_INPLACE) latest --global $(pkg)))' +# We want to define STAGE to be like "2" in the Haskell code, so we need +# to quote the "s so that they don't get interpreted by the shell. PACKAGE_CPP_OPTS += -DSTAGE='"$(stage)"' # Omit Main from the library, the client will want to plug their own Main in @@ -985,7 +993,7 @@ ifeq "$(BUILD_GHC_PACKAGE)" "YES" all :: $(GHC_PROG) endif -$(odir)/main/Config.$(way_)o: SRC_HC_OPTS+=-DSTAGE=$(DQ)$(stage)$(DQ) +$(odir)/main/Config.$(way_)o: SRC_HC_OPTS+=-DSTAGE='"$(stage)"' ifneq "$(findstring $(stage), 2 3)" "" $(warning LIBRARY is $(LIBRARY))