X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc.mk;h=b6df093d335bd738ddd1d04d454a68511166d86b;hb=cf96c6c8f2ead02205e509975282e212a5eb9aee;hp=84c3774094e24d70359e957b2fb3972785184045;hpb=cdf1ca34abb0cf11979f571b28a1e343563a2281;p=ghc-hetmet.git diff --git a/ghc.mk b/ghc.mk index 84c3774..b6df093 100644 --- a/ghc.mk +++ b/ghc.mk @@ -21,15 +21,12 @@ # * need to fix Cabal for new Windows layout, see # Distribution/Simple/GHC.configureToolchain. # * remove old Makefiles, add new stubs for building in subdirs -# * utils/hsc2hs/Makefile -# * utils/haddock/Makefile # * docs/Makefile # * docs/docbook-cheat-sheet/Makefile # * docs/ext-core/Makefile # * docs/man/Makefile # * docs/storage-mgmt/Makefile # * docs/vh/Makefile -# * driver/Makefile # * rts/dotnet/Makefile # * utils/Makefile # * GhcProfiled @@ -908,22 +905,33 @@ clean_files : "$(RM)" $(RM_OPTS) $(CLEAN_FILES) .PHONY: clean_libraries +clean_libraries: $(patsubst %,clean_libraries/%_dist-install,$(PACKAGES) $(PACKAGES_STAGE2)) +clean_libraries: $(patsubst %,clean_libraries/%_dist-boot,$(BOOT_PKGS)) + clean_libraries: "$(RM)" $(RM_OPTS) -r $(patsubst %, libraries/%/dist, $(PACKAGES) $(PACKAGES_STAGE2)) - "$(RM)" $(RM_OPTS) -r $(patsubst %, libraries/%/dist-install, $(PACKAGES) $(PACKAGES_STAGE2)) - "$(RM)" $(RM_OPTS) -r $(patsubst %, libraries/%/dist-boot, $(PACKAGES) $(PACKAGES_STAGE2)) "$(RM)" $(RM_OPTS) $(patsubst %, libraries/%/*.buildinfo, $(PACKAGES) $(PACKAGES_STAGE2)) +# We have to define a clean target for each library manually, because the +# libraries/*/ghc.mk files are not included when we're cleaning. +ifeq "$(CLEANING)" "YES" +$(foreach lib,$(PACKAGES) $(PACKAGES_STAGE2),\ + $(eval $(call clean-target,libraries/$(lib),dist-install,libraries/$(lib)/dist-install))) +endif + distclean : clean "$(RM)" $(RM_OPTS) config.cache config.status config.log mk/config.h mk/stamp-h "$(RM)" $(RM_OPTS) mk/config.mk mk/are-validating.mk mk/project.mk + "$(RM)" $(RM_OPTS) mk/config.mk.old mk/project.mk.old "$(RM)" $(RM_OPTS) extra-gcc-opts docs/users_guide/ug-book.xml - "$(RM)" $(RM_OPTS) compiler/ghc.cabal ghc/ghc-bin.cabal + "$(RM)" $(RM_OPTS) compiler/ghc.cabal compiler/ghc.cabal.old + "$(RM)" $(RM_OPTS) ghc/ghc-bin.cabal "$(RM)" $(RM_OPTS) libraries/base/include/HsBaseConfig.h "$(RM)" $(RM_OPTS) libraries/directory/include/HsDirectoryConfig.h "$(RM)" $(RM_OPTS) libraries/process/include/HsProcessConfig.h "$(RM)" $(RM_OPTS) libraries/unix/include/HsUnixConfig.h "$(RM)" $(RM_OPTS) libraries/old-time/include/HsTimeConfig.h + "$(RM)" $(RM_OPTS) $(patsubst %, libraries/%/config.log, $(PACKAGES) $(PACKAGES_STAGE2)) "$(RM)" $(RM_OPTS) $(patsubst %, libraries/%/config.status, $(PACKAGES) $(PACKAGES_STAGE2)) "$(RM)" $(RM_OPTS) $(patsubst %, libraries/%/include/Hs*Config.h, $(PACKAGES) $(PACKAGES_STAGE2))