Commit e257cdbf authored by Ian Lynagh's avatar Ian Lynagh

Don't require the library ghc.mk files in order to clean

parent cc6b470e
......@@ -43,8 +43,6 @@ endif
include mk/custom-settings.mk
# If the package ghc.mk files are missing, generate them. This means that
# repeating 'make maintainer-clean' works.
PACKAGE_MK=libraries/base/ghc.mk
$(PACKAGE_MK):
sh boot-pkgs
......@@ -67,16 +65,16 @@ $(REALGOALS) all: $(PACKAGE_MK)
@echo "===--- finished updating makefiles"
$(MAKE) -r --no-print-directory -f ghc.mk $@
binary-dist: $(PACKAGE_MK)
binary-dist:
rm -f bindist-list
$(MAKE) -r --no-print-directory -f ghc.mk bindist BINDIST=YES
$(MAKE) -r --no-print-directory -f ghc.mk binary-dist
clean distclean maintainer-clean: $(PACKAGE_MK)
$(MAKE) -r --no-print-directory -f ghc.mk $@
clean distclean maintainer-clean:
$(MAKE) -r --no-print-directory -f ghc.mk $@ CLEANING=YES
test ! -d testsuite || $(MAKE) -C testsuite $@
$(filter clean_%, $(MAKECMDGOALS)) : clean_% : $(PACKAGE_MK)
$(filter clean_%, $(MAKECMDGOALS)) : clean_% :
$(MAKE) -r --no-print-directory -f ghc.mk $@
show: $(PACKAGE_MK)
......
......@@ -134,9 +134,7 @@ show:
# -----------------------------------------------------------------------------
# Include subsidiary build-system bits
ifneq "$(findstring clean,$(MAKECMDGOALS))" ""
-include mk/config.mk
else
ifeq "$(findstring clean,$(MAKECMDGOALS))" ""
include mk/config.mk
ifeq "$(ProjectVersion)" ""
$(error Please run ./configure first)
......@@ -483,10 +481,15 @@ endif
BUILD_DIRS += \
utils/haddock \
utils/haddock/doc \
$(patsubst %, libraries/%, $(PACKAGES)) \
$(patsubst %, libraries/%, $(PACKAGES_STAGE2)) \
libraries/dph \
utils/haddock/doc
ifneq "$(CLEANING)" "YES"
BUILD_DIRS += \
$(patsubst %, libraries/%, $(PACKAGES) $(PACKAGES_STAGE2)) \
libraries/dph
endif
BUILD_DIRS += \
compiler \
$(GHC_HSC2HS_DIR) \
$(GHC_PKG_DIR) \
......@@ -871,6 +874,9 @@ clean : clean_files
.PHONY: clean_files
clean_files :
$(RM) $(CLEAN_FILES)
$(RM) -r $(patsubst %, libraries/%/dist, $(PACKAGES) $(PACKAGES_STAGE2))
$(RM) -r $(patsubst %, libraries/%/dist-install, $(PACKAGES) $(PACKAGES_STAGE2))
$(RM) -r $(patsubst %, libraries/%/dist-boot, $(PACKAGES) $(PACKAGES_STAGE2))
distclean : clean
$(RM) config.cache config.status config.log mk/config.h mk/stamp-h
......@@ -882,6 +888,10 @@ distclean : clean
$(RM) libraries/process/include/HsProcessConfig.h
$(RM) libraries/unix/include/HsUnixConfig.h
$(RM) libraries/old-time/include/HsTimeConfig.h
$(RM) $(patsubst %, libraries/%/config.log, $(PACKAGES) $(PACKAGES_STAGE2))
$(RM) $(patsubst %, libraries/%/config.status, $(PACKAGES) $(PACKAGES_STAGE2))
$(RM) $(patsubst %, libraries/%/include/Hs*Config.h, $(PACKAGES) $(PACKAGES_STAGE2))
$(RM) -r $(patsubst %, libraries/%/autom4te.cache, $(PACKAGES) $(PACKAGES_STAGE2))
maintainer-clean : distclean
$(RM) configure mk/config.h.in
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment