Add Coercion.lhs
[ghc-hetmet.git] / mk / package.mk
index a2794ab..ce90aec 100644 (file)
@@ -3,13 +3,8 @@
 
 ifneq "$(PACKAGE)" ""
 
-ifeq "$(STANDALONE_PACKAGE)" ""
-ifeq "$(ProjectNameShort)" "ghc"
+# FIXME: does anyone do this any more?
 STANDALONE_PACKAGE = NO
-else
-STANDALONE_PACKAGE = YES
-endif
-endif
 
 # -----------------------------------------------------------------------------
 # Directory layouts, installation etc.
@@ -86,7 +81,7 @@ package.conf.inplace   : package.conf.in
                -DDATA_DIR='"$(DATA_DIR_INPLACE)"' \
                -DHTML_DIR='"$(HTML_DIR_INPLACE)"' \
                -DHADDOCK_IFACE='"$(HADDOCK_IFACE_INPLACE)"' \
-               -DFPTOOLS_TOP_ABS=\"${FPTOOLS_TOP_ABS}\" \
+               -DFPTOOLS_TOP_ABS='"${FPTOOLS_TOP_ABS}"' \
                -x c $(PACKAGE_CPP_OPTS) $< | \
        grep -v '^#pragma GCC' | \
        sed -e 's/""//g' -e 's/:[       ]*,/: /g' >$@
@@ -104,7 +99,7 @@ package.conf.installed : package.conf.in
        sed -e 's/""//g' -e 's/:[       ]*,/: /g' >$@
 
 # we could be more accurate here and add a dependency on
-# ghc/driver/package.conf, but that doesn't work too well because of
+# driver/package.conf, but that doesn't work too well because of
 # make's limited accuracy with modification times: when doing 'make
 # boot' in multiple packages, make won't detect that the package
 # configuration needs updating if it was updated already in the last
@@ -124,8 +119,8 @@ boot all :: $(STAMP_PKG_CONF)
 endif
 
 $(STAMP_PKG_CONF) : package.conf.inplace package.conf.installed
-       $(GHC_PKG_INPLACE) --force --update-package <package.conf.inplace
-       $(GHC_PKG_INPLACE)  -f $(GHC_DRIVER_DIR)/package.conf --force --update-package <package.conf.installed
+       $(GHC_PKG_INPLACE) update - --force-files <package.conf.inplace
+       $(GHC_PKG_INPLACE) update - -f $(GHC_DRIVER_DIR)/package.conf --force-files <package.conf.installed
        @touch $(STAMP_PKG_CONF)
 
 CLEAN_FILES += package.conf.installed package.conf.inplace 
@@ -158,20 +153,20 @@ SRC_HSC2HS_OPTS += -I.
 
 ifeq "$(STANDALONE_PACKAGE)" "NO"
 HC = $(GHC_INPLACE)
-IGNORE_PACKAGE_FLAG = -ignore-package
+IGNORE_PACKAGE_FLAG = -package-name  $(PACKAGE)-$(VERSION)
 else
 # Only use -ignore-package if supported by HC; i.e., ghc-6.3 and later.
 # (Don't like the use of slow $(shell ..) in Makefiles, but can't see a way around it here.)
 ifeq "$(strip $(GHC))" ""
-IGNORE_PACKAGE_FLAG = -ignore-package
+IGNORE_PACKAGE_FLAG = -ignore-package $(PACKAGE)
 else
 # Making the assumption here that standalone packages will be using mk/config.mk:GHC
-IGNORE_PACKAGE_FLAG = $(shell if (test $(GhcCanonVersion) -ge 603); then echo "-ignore-package"; else echo "-package-name"; fi)
+IGNORE_PACKAGE_FLAG = $(shell if (test $(GhcCanonVersion) -ge 603); then echo "-ignore-package"; else echo "-package-name"; fi) $(PACKAGE)
 endif 
 endif # STANDALONE_PACKAGE
 
 ifeq "$(NON_HS_PACKAGE)" ""
-SRC_HC_OPTS    += $(IGNORE_PACKAGE_FLAG) $(PACKAGE)
+SRC_HC_OPTS    += $(IGNORE_PACKAGE_FLAG)
 SRC_HC_OPTS    += $(GhcLibHcOpts)
 SRC_HC_OPTS     += $(patsubst %, -package %, $(PACKAGE_DEPS))
 endif
@@ -359,9 +354,9 @@ endif # $(LIBRARY) /= ""
 ifneq "$(PACKAGE)" ""
 ifneq "$(NO_HADDOCK_DOCS)" "YES"
 
-HS_PPS = $(addsuffix .raw-hs, $(basename $(filter-out $(EXCLUDED_HADDOCK_SRCS), $(HS_SRCS))))
+HS_PPS = $(addsuffix .raw-hs, $(basename $(filter-out $(EXCLUDED_HADDOCK_SRCS), $(HS_SRCS)))) $(EXTRA_HADDOCK_SRCS)
 
-HTML_DIR = ../html/$(PACKAGE)
+HTML_DIR = ../html-docs/$(PACKAGE)
 HTML_DOC = $(HTML_DIR)/haddock.css $(HTML_DIR)/haddock.js
 
 ifneq "$(HS_PPS)" ""
@@ -392,10 +387,10 @@ $(HTML_DOC) : $(HS_PPS)
 CLEAN_FILES += $(PACKAGE).haddock
 
 %.raw-hs : %.lhs
-       $(HC) $(HC_OPTS) -D__HADDOCK__ -E -optP-P $< -o $@
+       $(HC) $(HC_OPTS) -D__HADDOCK__ -E $< -o $@
 
 %.raw-hs : %.hs
-       $(HC) $(HC_OPTS) -D__HADDOCK__ -E -optP-P $< -o $@
+       $(HC) $(HC_OPTS) -D__HADDOCK__ -E $< -o $@
 
 HTML_INSTALL_DIR = $(datadir)/html/libraries/$(PACKAGE)
 #  NOT the same as HTML_DIR_INSTALLED when BIN_DIST is on