rebuild.library.<foo> is now a shorthand for clean then build
[ghc-hetmet.git] / libraries / Makefile
index 2dadbae..1a77051 100644 (file)
@@ -9,6 +9,10 @@
 #
 #   make clean.library.<package>
 #   make build.library.<package>
+#
+# or the following is equivalent:
+#
+#   make rebuild.library.<package>
 
 .PHONY: default_target
 
@@ -23,7 +27,8 @@ TOP=.
 include $(TOP)/mk/boilerplate.mk
 endif
 
-SUBDIRS = base filepath haskell98 template-haskell readline Cabal
+SUBDIRS = base old-time directory filepath pretty template-haskell \
+          readline Cabal random haskell98
 
 ifeq "$(GhcLibsWithUnix)" "YES"
 SUBDIRS += unix
@@ -64,6 +69,7 @@ SUBDIRS += $(wildcard arrows)
 ifeq "$(GhcLibsWithObjectIO)" "YES"
 SUBDIRS += $(wildcard ObjectIO)
 endif
+SUBDIRS += $(wildcard parallel)
 endif
 
 # -----------------------------------------------------------------------------
@@ -90,7 +96,7 @@ CONFIGURE_OPTS += --enable-split-objs
 CONFIGURE_STAMP_EXTRAS := $(CONFIGURE_STAMP_EXTRAS)-splitting
 endif
 
-BOOTSTRAPPING_STAMPS = $(addprefix stamp/bootstrapping.,Cabal filepath)
+BOOTSTRAPPING_STAMPS = $(addprefix stamp/bootstrapping.,Cabal filepath pretty)
 
 .PHONY: subdirs
 
@@ -116,6 +122,7 @@ $(foreach SUBDIR,$(SUBDIRS),$(SUBDIR)/setup/Setup): \
        $(CP) $*/Setup.*hs $*/setup
        cd $*/setup && $(GHC) -i../../bootstrapping.Cabal \
                              -i../../bootstrapping.filepath \
+                             -i../../bootstrapping.pretty \
                              -Wall -cpp --make Setup.*hs -o Setup
 
 installPackage/installPackage: installPackage.hs $(BOOTSTRAPPING_STAMPS)
@@ -125,7 +132,8 @@ installPackage/installPackage: installPackage.hs $(BOOTSTRAPPING_STAMPS)
        cd installPackage && $(GHC) -Wall -cpp \
                                    --make installPackage -o installPackage \
                              -i../bootstrapping.Cabal \
-                             -i../bootstrapping.filepath
+                             -i../bootstrapping.filepath \
+                             -i../bootstrapping.pretty
 
 ifBuildable/ifBuildable: ifBuildable.hs
        -$(RM) -rf ifBuildable
@@ -148,6 +156,11 @@ ifneq "$(NO_HADDOCK_DOCS)" "YES"
 all: doc
 endif
 
+.PHONY: rebuild.library.%
+
+$(foreach SUBDIR,$(SUBDIRS),rebuild.library.$(SUBDIR)):\
+rebuild.library.%: clean.library.% build.library.%
+
 build: $(foreach SUBDIR,$(SUBDIRS),build.library.$(SUBDIR))
 build: installPackage/installPackage