Mostly fix Trac #2431: make empty case acceptable to (most of) GHC
[ghc-hetmet.git] / mk / cabal.mk
index 5e0de0d..1ae6cba 100644 (file)
@@ -1,5 +1,6 @@
 
 include $(TOP)/mk/cabal-flags.mk
+include $(TOP)/mk/bindist.mk
 
 # XXX We would like to turn this on, but Cabal generates paths files
 #     that are not -Wall clean!
@@ -15,15 +16,23 @@ INSTALL_FLAGS =
 endif
 endif
 
+# Tell stage1 to make a dynamically-linked binary, but no wrapper.  We assume
+# that in an installation the shared libs will be installed somewhere that
+# the system can find them.
+ifeq "$(BuildSharedLibs)" "YES"
+DYN_FLAGS = --ghc-option=-dynamic --ghc-option=-dynload --ghc-option=deploy
+endif
+
 .PHONY: default all with-bootstrapping-compiler with-stage-1 clean distclean
 
 default all: with-bootstrapping-compiler
 
 with-bootstrapping-compiler:
-       $(CABAL) configure --distpref dist-inplace         \
-                          $(INPLACE_DIRS_CONFIGURE_FLAGS) \
-                          $(USE_BOOT_CONFIGURE_FLAGS)     \
-                          $(COMMON_CONFIGURE_FLAGS)
+       $(CABAL) configure --distpref dist-inplace          \
+                          $(INPLACE_DIRS_CONFIGURE_FLAGS)  \
+                          $(USE_BOOT_CONFIGURE_FLAGS)      \
+                          $(COMMON_CONFIGURE_FLAGS)        \
+                          $(EXTRA_INPLACE_CONFIGURE_FLAGS)
        $(CABAL) build     --distpref dist-inplace $(BUILD_FLAGS)
        $(CABAL) install   --distpref dist-inplace $(INSTALL_FLAGS)
 
@@ -31,8 +40,9 @@ with-stage-1:
        $(CABAL) configure --distpref dist-install         \
                           $(INSTALL_DIRS_CONFIGURE_FLAGS) \
                           $(USE_STAGE1_CONFIGURE_FLAGS)   \
-                          $(COMMON_CONFIGURE_FLAGS)
-       $(CABAL) build     --distpref dist-install $(BUILD_FLAGS)
+                          $(COMMON_CONFIGURE_FLAGS)       \
+                          $(EXTRA_STAGE1_CONFIGURE_FLAGS)
+       $(CABAL) build     --distpref dist-install $(DYN_FLAGS) $(BUILD_FLAGS)
 
 install:
        $(INSTALL_PACKAGE) install UNUSED UNUSED '$(DESTDIR)' '$(prefix)' \
@@ -51,5 +61,3 @@ ifneq "$(EXTRA_CLEAN)" ""
        $(RM) -f $(EXTRA_CLEAN)
 endif
 
-# XXX fix binary-dist
-