summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorYing Wang <wangying@google.com>2012-09-26 16:00:54 -0700
committerYing Wang <wangying@google.com>2012-09-26 16:00:54 -0700
commit6ea58cb3dc564ce112b28f1a7c6936317168d931 (patch)
treecc9a63e9af5fa86e089b3e463cef55ebfeab2d13 /core
parentbf36578bf26627cff094d8c1782c7eda2d2549a7 (diff)
downloadbuild-6ea58cb3dc564ce112b28f1a7c6936317168d931.zip
build-6ea58cb3dc564ce112b28f1a7c6936317168d931.tar.gz
build-6ea58cb3dc564ce112b28f1a7c6936317168d931.tar.bz2
Run clean steps in only given paths when using mm/mmm
To speed up mm/mmm start time. At the same time, we should copy over the other clean steps. Bug: 7186768 Change-Id: I250e64256343afe788d79817af36eafaadb47028
Diffstat (limited to 'core')
-rw-r--r--core/cleanbuild.mk4
-rw-r--r--core/cleanspec.mk8
2 files changed, 11 insertions, 1 deletions
diff --git a/core/cleanbuild.mk b/core/cleanbuild.mk
index 45f178c..c17902d 100644
--- a/core/cleanbuild.mk
+++ b/core/cleanbuild.mk
@@ -78,6 +78,10 @@ else
$(info Clean step: $(INTERNAL_CLEAN_STEP.$(step))) \
$(shell $(INTERNAL_CLEAN_STEP.$(step))) \
)
+ # If we are running mm/mmm, we should copy over the other clean steps too.
+ ifneq ($(ONE_SHOT_MAKEFILE),)
+ INTERNAL_CLEAN_STEPS := $(strip $(CURRENT_CLEAN_STEPS) $(steps))
+ endif
steps :=
endif
CURRENT_CLEAN_BUILD_VERSION :=
diff --git a/core/cleanspec.mk b/core/cleanspec.mk
index d4a8eed..a3eb7cd 100644
--- a/core/cleanspec.mk
+++ b/core/cleanspec.mk
@@ -63,7 +63,13 @@ INTERNAL_CLEAN_BUILD_VERSION := 6
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
# ************************************************
+ifneq ($(ONE_SHOT_MAKEFILE),)
+cs_subdirs := $(dir $(ONE_SHOT_MAKEFILE))
+else
+cs_subdirs := .
+endif
subdir_cleanspecs := \
- $(shell build/tools/findleaves.py --prune=out --prune=.repo --prune=.git . CleanSpec.mk)
+ $(shell build/tools/findleaves.py --prune=out --prune=.repo --prune=.git $(cs_subdirs) CleanSpec.mk)
include $(subdir_cleanspecs)
+cs_subdirs :=
subdir_cleanspecs :=