@echo "cProjectVersionInt = \"$(ProjectVersionInt)\"" >> $(CONFIG_HS)
@echo "cProjectPatchLevel = \"$(ProjectPatchLevel)\"" >> $(CONFIG_HS)
@echo "cBooterVersion = \"$(GhcVersion)\"" >> $(CONFIG_HS)
+ @echo "cStage = STAGE" >> $(CONFIG_HS)
@echo "cHscIfaceFileVersion = \"$(HscIfaceFileVersion)\"" >> $(CONFIG_HS)
@echo "cGhcWithNativeCodeGen = \"$(GhcWithNativeCodeGen)\"" >> $(CONFIG_HS)
@echo "cGhcUnregisterised = \"$(GhcUnregisterised)\"" >> $(CONFIG_HS)
HS_IFACES = $(addsuffix .$(way_)hi,$(basename $(HS_OBJS)))
# Haddock can't handle recursive modules currently, so we disable it for now.
-NO_HADDOCK_DOCS = YES
+HADDOCK_DOCS = NO
# Tell package.mk not to set $(HC)
NO_SET_HC = YES
#-----------------------------------------------------------------------------
# binary-dist
-# $(error Q$(INSTALL_PROGS)W)
-foo:
- echo Q$(INSTALL_PROGS)W$(GHC_PROG)E
- echo Q$(INSTALL_LIBEXECS)W$(GHC_PROG)E
+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
echo "stage=$(stage)" > $(BIN_DIST_DIR)/compiler/Makefile
cat Makefile >> $(BIN_DIST_DIR)/compiler/Makefile
$(INSTALL_DATA) package.conf.in $(BIN_DIST_DIR)/compiler/
+ set -e; for d in stage$(stage)/*/; do $(INSTALL_DIR) $(BIN_DIST_DIR)/compiler/$$d; done
+ set -e; for f in $(HS_IFACES); do $(INSTALL_DATA) $$f $(BIN_DIST_DIR)/compiler/$$f; done
ifneq "$(INSTALL_LIBS)" ""
set -e; for f in $(INSTALL_LIBS); do $(INSTALL_DATA) $$f $(BIN_DIST_DIR)/compiler/$$f; done
endif
include $(TOP)/mk/target.mk
+$(odir)/main/Config.$(way_)o: SRC_HC_OPTS+=-DSTAGE='"$(stage)"'
+
# -----------------------------------------------------------------------------
# Explicit dependencies