+GHC_INCLUDE_DIR = $(GHC_TOP)/$(GHC_INCLUDE_DIR_REL)
+GHC_COMPILER_DIR = $(GHC_TOP)/$(GHC_COMPILER_DIR_REL)
+GHC_RUNTIME_DIR = $(GHC_TOP)/$(GHC_RUNTIME_DIR_REL)
+GHC_UTILS_DIR = $(GHC_TOP)/$(GHC_UTILS_DIR_REL)
+GHC_DRIVER_DIR = $(GHC_TOP)/$(GHC_DRIVER_DIR_REL)
+GHC_PKG_DIR = $(GHC_TOP)/$(GHC_PKG_DIR_REL)
+GHC_GENPRIMOP_DIR = $(GHC_TOP)/$(GHC_GENPRIMOP_DIR_REL)
+GHC_GENAPPLY_DIR = $(GHC_TOP)/$(GHC_GENAPPLY_DIR_REL)
+GHC_MANGLER_DIR = $(GHC_TOP)/$(GHC_MANGLER_DIR_REL)
+GHC_SPLIT_DIR = $(GHC_TOP)/$(GHC_SPLIT_DIR_REL)
+GHC_LIB_COMPAT_DIR = $(GHC_TOP)/$(GHC_LIB_COMPAT_DIR_REL)
+
+# -----------------------------------------------------------------------------
+# Names of programs in the GHC tree
+#
+# xxx_PGM the name of an executable, without the path
+
+GHC_UNLIT_PGM = unlit$(exeext)
+GHC_HSTAGS_PGM = hasktags
+GHC_TOUCHY_PGM = touchy$(exeext)
+GHC_MANGLER_PGM = ghc-asm
+GHC_SPLIT_PGM = ghc-split
+GHC_SYSMAN_PGM = SysMan
+GHC_PKG_INPLACE_PGM = ghc-pkg-inplace
+GHC_GENPRIMOP_PGM = genprimopcode
+GHC_GENAPPLY_PGM = genapply
+
+# -----------------------------------------------------------------------------
+# Auxilliary programs used by GHC
+#
+# xxx the pathname to an executable (some using $(TOP))
+
+ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32"
+GHC_CP = "xcopy /y"
+GHC_PERL = perl