diff options
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/Makefile.clean | 30 | ||||
| -rw-r--r-- | scripts/package/Makefile | 6 |
2 files changed, 25 insertions, 11 deletions
diff --git a/scripts/Makefile.clean b/scripts/Makefile.clean index 7277dd208ead..1daba0623151 100644 --- a/scripts/Makefile.clean +++ b/scripts/Makefile.clean @@ -29,21 +29,35 @@ subdir-ymn := $(sort $(subdir-ym) $(subdir-n) $(subdir-)) # Add subdir path subdir-ymn := $(addprefix $(obj)/,$(subdir-ymn)) -__clean-files := $(wildcard $(addprefix $(obj)/, \ - $(extra-y) $(EXTRA_TARGETS) $(always) $(host-progs) \ - $(targets) $(clean-files))) +__clean-files := $(extra-y) $(EXTRA_TARGETS) $(always) $(host-progs) \ + $(targets) $(clean-files) +__clean-files := $(wildcard \ + $(addprefix $(obj)/, $(filter-out /%, $(__clean-files))) \ + $(filter /%, $(__clean-files))) +__clean-dirs := $(wildcard \ + $(addprefix $(obj)/, $(filter-out /%, $(clean-dirs))) \ + $(filter /%, $(clean-dirs))) # ========================================================================== -quiet_cmd_clean = CLEAN $(obj) - cmd_clean = rm -f $(__clean-files); $(clean-rule) +quiet_cmd_clean = CLEAN $(obj) + cmd_clean = rm -f $(__clean-files) +quiet_cmd_cleandir = CLEAN $(__clean-dirs) + cmd_cleandir = rm -rf $(__clean-dirs) + __clean: $(subdir-ymn) -ifneq ($(strip $(__clean-files) $(clean-rule)),) +ifneq ($(strip $(__clean-files)),) +$(call cmd,clean) -else - @: endif +ifneq ($(strip $(__clean-dirs)),) + +$(call cmd,cleandir) +endif +ifneq ($(strip $(clean-rule)),) + +$(clean-rule) +endif + @: + # =========================================================================== # Generic stuff diff --git a/scripts/package/Makefile b/scripts/package/Makefile index 48f89e17a3cf..3b1f2eff2584 100644 --- a/scripts/package/Makefile +++ b/scripts/package/Makefile @@ -51,7 +51,7 @@ rpm-pkg rpm: $(objtree)/kernel.spec $(RPM) --target $(UTS_MACHINE) -ta ../$(KERNELPATH).tar.gz rm ../$(KERNELPATH).tar.gz -clean-rule += rm -f $(objtree)/kernel.spec +clean-files := $(objtree)/kernel.spec # binrpm-pkg .PHONY: binrpm-pkg @@ -67,7 +67,7 @@ binrpm-pkg: $(objtree)/binkernel.spec $(RPM) --define "_builddir $(srctree)" --target $(UTS_MACHINE) -bb $< -clean-rule += rm -f $(objtree)/binkernel.spec +clean-files += $(objtree)/binkernel.spec # Deb target # --------------------------------------------------------------------------- @@ -77,7 +77,7 @@ deb-pkg: $(MAKE) $(CONFIG_SHELL) $(srctree)/scripts/package/builddeb -clean-rule += && rm -rf $(objtree)/debian/ +clean-dirs += $(objtree)/debian/ # Help text displayed when executing 'make help' |
