summaryrefslogtreecommitdiff
path: root/scripts/Makefile.clean
diff options
context:
space:
mode:
authorKai Germaschewski <kai@tp1.ruhr-uni-bochum.de>2002-10-28 01:25:33 -0600
committerKai Germaschewski <kai@tp1.ruhr-uni-bochum.de>2002-10-28 01:25:33 -0600
commitafed13861e6bd0e308d3d53b38ed11e4eabe3a2f (patch)
treea5cedd3adce7feaa0072e11f2316950744d2f963 /scripts/Makefile.clean
parent5fe41502b4ac8fb2d92dbc6000da15deb3aad981 (diff)
parentc23e6bf05f7802e92fd3da69a1ed35e56f9c85bb (diff)
Merge tp1.ruhr-uni-bochum.de:/home/kai/src/kernel/v2.5/linux-2.5
into tp1.ruhr-uni-bochum.de:/home/kai/src/kernel/v2.5/linux-2.5.make
Diffstat (limited to 'scripts/Makefile.clean')
-rw-r--r--scripts/Makefile.clean33
1 files changed, 27 insertions, 6 deletions
diff --git a/scripts/Makefile.clean b/scripts/Makefile.clean
index d7bb2dfb88d8..e7c392fd5788 100644
--- a/scripts/Makefile.clean
+++ b/scripts/Makefile.clean
@@ -1,13 +1,17 @@
+# ==========================================================================
+# Cleaning up
+# ==========================================================================
src := $(obj)
-no-rules.make := 1
-
.PHONY: __clean
__clean:
include $(obj)/Makefile
+# Figure out what we need to build from the various variables
+# ==========================================================================
+
__subdir-y := $(patsubst %/,%,$(filter %/, $(obj-y)))
subdir-y += $(__subdir-y)
__subdir-m := $(patsubst %/,%,$(filter %/, $(obj-m)))
@@ -17,26 +21,43 @@ subdir-n += $(__subdir-n)
__subdir- := $(patsubst %/,%,$(filter %/, $(obj-)))
subdir- += $(__subdir-)
+# Subdirectories we need to descend into
+
subdir-ym := $(sort $(subdir-y) $(subdir-m))
subdir-ymn := $(sort $(subdir-ym) $(subdir-n) $(subdir-))
+# Add subdir path
+
EXTRA_TARGETS := $(addprefix $(obj)/,$(EXTRA_TARGETS))
clean-files := $(addprefix $(obj)/,$(clean-files))
host-progs := $(addprefix $(obj)/,$(host-progs))
subdir-ymn := $(addprefix $(obj)/,$(subdir-ymn))
+# ==========================================================================
+
__clean-files := $(wildcard $(EXTRA_TARGETS) $(host-progs) $(clean-files))
+quiet_cmd_clean = CLEAN $(obj)
+ cmd_clean = rm -f $(__clean-files); $(clean-rule)
+
__clean: $(subdir-ymn)
ifneq ($(strip $(__clean-files) $(clean-rule)),)
- rm -f $(__clean-files)
- $(clean-rule)
+ +$(call cmd,clean)
else
@:
endif
-.PHONY: $(subdir-ymn)
+# ===========================================================================
+# Generic stuff
+# ===========================================================================
+
+# Descending
+# ---------------------------------------------------------------------------
+.PHONY: $(subdir-ymn)
$(subdir-ymn):
- $(MAKE) -rR -f scripts/Makefile.clean obj=$@
+ $(Q)$(MAKE) -f scripts/Makefile.clean obj=$@
+
+# If quiet is set, only print short version of command
+cmd = @$(if $($(quiet)cmd_$(1)),echo ' $($(quiet)cmd_$(1))' &&) $(cmd_$(1))