@echo "cUSER_WAY_OPTS = \"$(USER_WAY_OPTS)\"" >> $(CONFIG_HS)
@echo "cDEFAULT_TMPDIR = \"$(DEFAULT_TMPDIR)\"" >> $(CONFIG_HS)
@echo "cDocDir = \"$(docdir)\"" >> $(CONFIG_HS)
+ifeq "$(RelocatableBuild)" "YES"
+ @echo "cRelocatableBuild = True" >> $(CONFIG_HS)
+else
+ @echo "cRelocatableBuild = False" >> $(CONFIG_HS)
+endif
@echo done.
CLEAN_FILES += $(CONFIG_HS)
ifeq "$(GhcWithInterpreter) $(bootstrapped)" "YES YES"
-# Yes, include the interepreter, readline, and Template Haskell extensions
+# Yes, include the interepreter and Template Haskell extensions
SRC_HC_OPTS += -DGHCI -package template-haskell
PKG_DEPENDS += template-haskell
PKG_DEPENDS += readline
endif
else
--include $(FPTOOLS_TOP)/libraries/readline/config.mk
+-include $(FPTOOLS_TOP_ABS)/libraries/readline/config.mk
# readline's config.mk sets PACKAGE, which we don't want here
PACKAGE=
ifeq "$(READLINE_BUILD_PACKAGE)" "yes"
INPLACE_PROG = $(odir)/ghc-inplace$(_way)$(exeext)
EXCLUDED_C_SRCS += ghc-inplace.c
+CLEAN_FILES += $(INPLACE_SRC)
+
GHC_PATH=$(FPTOOLS_TOP_ABS)/$(GHC_COMPILER_DIR_REL)/$(GHC_PROG)$(exeext)
ifeq "$(HOSTPLATFORM)" "i386-unknown-mingw32"
INPLACE_EXTRA_FLAGS = -optc-DWINDOWS
endif
-$(INPLACE_SRC): ghc-inplace.c
- $(SED) -e "s@GHC_PATH@$(GHC_PATH)@g" -e "s@TOP_ABS@$(FPTOOLS_TOP_ABS)@g" < $< > $@
-
-$(INPLACE_PROG): $(INPLACE_SRC)
- $(HC) -cpp $(INPLACE_EXTRA_FLAGS) $< -o $@
+$(INPLACE_PROG): ghc-inplace.c
+ $(SED) -e "s@GHC_PATH@$(GHC_PATH)@g" -e "s@TOP_ABS@$(FPTOOLS_TOP_ABS)@g" < $< > $(INPLACE_SRC)
+ $(HC) -cpp $(INPLACE_EXTRA_FLAGS) $(INPLACE_SRC) -o $@
all :: $(INPLACE_PROG)
# override $(GhcLibHcOpts): we want GhcStage2HcOpts to take precedence
GhcLibHcOpts =
+ifeq "$(DOING_BIN_DIST)" "YES"
+# This is derived from the sources when we are in a source tree, but we
+# don't have any sources in a bindist, so we have to shortcut it
+HS_IFACES := $(wildcard stage$(stage)/*/*.hi)
+else
# override default definition of HS_IFACES so we can add $(odir)
HS_IFACES = $(addsuffix .$(way_)hi,$(basename $(HS_OBJS)))
+endif
# Haddock can't handle recursive modules currently, so we disable it for now.
override HADDOCK_DOCS = NO
#-----------------------------------------------------------------------------
# binary-dist
-ifeq "$(DOING_BIN_DIST)" "YES"
-# This is derived from the sources when we are in a source tree, but we
-# don't have any sources in a bindist, so we have to shortcut it
-HS_IFACES := $(wildcard stage$(stage)/*/*.hi)
-endif
-
binary-dist:
$(INSTALL_DIR) $(BIN_DIST_DIR)/compiler
$(INSTALL_DIR) $(BIN_DIST_DIR)/compiler/stage$(stage)