Include package.mk in target.mk, in the bindists's mk/
[ghc-hetmet.git] / Makefile
index a7ae8f4..6f38c13 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -120,6 +120,28 @@ bootstrap2 : stage1
 bootstrap3 : bootstrap2
        $(MAKE) stage3
 
+ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32"
+ifneq "$(WhatGccIsCalled)" ""
+all :: stamp.inplace-gcc-lib
+
+.PHONY: stamp.inplace-gcc-lib
+
+# This is a hack to make Cabal able to find ld when we run tests with
+# the inplace ghc. We should probably install all the gcc stuff in our
+# tree somewhere, and then have install copy it from there rather than
+# from the filesystem.
+stamp.inplace-gcc-lib:
+       $(RM) -r compiler/gcc-lib
+       mkdir compiler/gcc-lib
+       cp $(GccDir)ld.exe compiler/gcc-lib
+       touch $@
+
+clean ::
+       $(RM) -r compiler/gcc-lib
+       $(RM) -f inplace-gcc-lib
+endif
+endif
+
 all :: bootstrap
 
 # -----------------------------------------------------------------------------
@@ -177,6 +199,11 @@ install ::
 endif
 endif
 
+# Install gcc-extra-opts
+install ::
+       @$(INSTALL_DIR) $(libdir)
+       $(INSTALL_DATA) $(INSTALL_OPTS) extra-gcc-opts $(libdir)
+
 install-docs ::
        @case '${MFLAGS}' in *-[ik]*) x_on_err=0;; *-r*[ik]*) x_on_err=0;; *) x_on_err=1;; esac; \
        for i in $(SUBDIRS); do \
@@ -240,6 +267,7 @@ BIN_DIST_TOP= distrib/Makefile \
               ANNOUNCE \
               LICENSE \
               install-sh \
+             extra-gcc-opts.in \
               config.guess \
               config.sub   \
               aclocal.m4
@@ -255,7 +283,8 @@ binary-dist:: binary-dist-pre
 binary-dist-pre::
        $(MKDIRHIER) $(BIN_DIST_DIR)/mk
        echo 'include $$(TOP)/Makefile-vars' >  $(BIN_DIST_DIR)/mk/boilerplate.mk
-       echo 'include $$(TOP)/mk/install.mk' >  $(BIN_DIST_DIR)/mk/target.mk
+       echo 'include $$(TOP)/mk/package.mk' >  $(BIN_DIST_DIR)/mk/target.mk
+       echo 'include $$(TOP)/mk/install.mk' >> $(BIN_DIST_DIR)/mk/target.mk
        echo 'include $$(TOP)/mk/recurse.mk' >> $(BIN_DIST_DIR)/mk/target.mk
        echo ''                              >  $(BIN_DIST_DIR)/mk/compat.mk
        cp mk/package.mk $(BIN_DIST_DIR)/mk/