OSDN Git Service

Add new variable SCAN_EXCLUDE_DIRS; specifies directories to exclude when searching...
authorC. Sean Young <csyoung@google.com>
Tue, 9 Jun 2015 17:35:45 +0000 (12:35 -0500)
committerC. Sean Young <csyoung@google.com>
Wed, 10 Jun 2015 18:00:13 +0000 (13:00 -0500)
These directories are excluded in addition to OUT_DIR.
This can be useful if your build system has other output directories
beyond what OUT_DIR is set to.

Change-Id: I6d98a85bcc8c89279e939406a7fec32547e8922f

core/cleanspec.mk
core/config.mk
core/definitions.mk
core/envsetup.mk
core/main.mk

index 500ce54..4441e2a 100644 (file)
@@ -64,6 +64,6 @@ INTERNAL_CLEAN_BUILD_VERSION := 6
 # ************************************************
 
 subdir_cleanspecs := \
-    $(shell build/tools/findleaves.py --prune=$(OUT_DIR) --prune=.repo --prune=.git . CleanSpec.mk)
+    $(shell build/tools/findleaves.py $(FIND_LEAVES_EXCLUDES) . CleanSpec.mk)
 include $(subdir_cleanspecs)
 subdir_cleanspecs :=
index bfa5610..e6a6812 100644 (file)
@@ -150,6 +150,10 @@ endif
 # are specific to the user's build configuration.
 include $(BUILD_SYSTEM)/envsetup.mk
 
+# Pruned directory options used when using findleaves.py
+# See envsetup.mk for a description of SCAN_EXCLUDE_DIRS
+FIND_LEAVES_EXCLUDES := $(addprefix --prune=, $(OUT_DIR) $(SCAN_EXCLUDE_DIRS) .repo .git)
+
 # The build system exposes several variables for where to find the kernel
 # headers:
 #   TARGET_DEVICE_KERNEL_HEADERS is automatically created for the current
index 57fc434..946a2a9 100644 (file)
@@ -150,7 +150,7 @@ endef
 # $(1): directory to search under
 # Ignores $(1)/Android.mk
 define first-makefiles-under
-$(shell build/tools/findleaves.py --prune=$(OUT_DIR) --prune=.repo --prune=.git \
+$(shell build/tools/findleaves.py $(FIND_LEAVES_EXCLUDES) \
         --mindepth=2 $(1) Android.mk)
 endef
 
index ad78be3..ba67737 100644 (file)
@@ -5,6 +5,11 @@
 # the bottom for the full list
 #     OUT_DIR is also set to "out" if it's not already set.
 #         this allows you to set it to somewhere else if you like
+#     SCAN_EXCLUDE_DIRS is an optional, whitespace separated list of
+#         directories that will also be excluded from full checkout tree
+#         searches for source or make files, in addition to OUT_DIR.
+#         This can be useful if you set OUT_DIR to be a different directory
+#         than other outputs of your build system.
 
 # Set up version information.
 include $(BUILD_SYSTEM)/version_defaults.mk
index 9d6e233..17099a3 100644 (file)
@@ -513,7 +513,7 @@ ifneq ($(dont_bother),true)
 # Can't use first-makefiles-under here because
 # --mindepth=2 makes the prunes not work.
 subdir_makefiles := \
-       $(shell build/tools/findleaves.py --prune=$(OUT_DIR) --prune=.repo --prune=.git $(subdirs) Android.mk)
+       $(shell build/tools/findleaves.py $(FIND_LEAVES_EXCLUDES) $(subdirs) Android.mk)
 
 $(foreach mk, $(subdir_makefiles), $(info including $(mk) ...)$(eval include $(mk)))