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!
-# SRC_HC_OPTS += -Wall
+SRC_HC_OPTS += -Wall
ifeq "$(HOSTPLATFORM)" "i386-unknown-mingw32"
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
$(USE_STAGE1_CONFIGURE_FLAGS) \
$(COMMON_CONFIGURE_FLAGS) \
$(EXTRA_STAGE1_CONFIGURE_FLAGS)
- $(CABAL) build --distpref dist-install $(BUILD_FLAGS)
+ $(CABAL) build --distpref dist-install $(DYN_FLAGS) $(BUILD_FLAGS)
install:
$(INSTALL_PACKAGE) install UNUSED UNUSED '$(DESTDIR)' '$(prefix)' \
--distpref dist-install \
$(INSTALL_FLAGS)
-clean: distclean
-
-distclean:
+clean:
-$(CABAL) clean --distpref dist-inplace
-$(CABAL) clean --distpref dist-install
ifneq "$(EXTRA_CLEAN)" ""
$(RM) -f $(EXTRA_CLEAN)
endif
-# XXX fix binary-dist
+distclean: clean
+ifneq "$(EXTRA_DISTCLEAN)" ""
+ $(RM) -f $(EXTRA_DISTCLEAN)
+endif