X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc.mk;h=81ec2f847d2e2b9d14b09a6defd620cdd9172b12;hb=e27c3aa29483ba9be97ba8d967c7ea16de327247;hp=165bdbc6a334a11b2e0dad7e20c7499184a073cc;hpb=90d1a7615977f2040e82661704c82b49a9b11ea5;p=ghc-hetmet.git diff --git a/ghc.mk b/ghc.mk index 165bdbc..81ec2f8 100644 --- a/ghc.mk +++ b/ghc.mk @@ -302,6 +302,7 @@ endif PACKAGES += \ old-locale \ old-time \ + time \ directory \ process \ random \ @@ -905,22 +906,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))