summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYing Wang <wangying@google.com>2015-04-03 16:15:28 -0700
committerYing Wang <wangying@google.com>2015-04-03 16:55:09 -0700
commitb931956076b93f055ba5a6bc3f848443d57d84b0 (patch)
tree1342f6dd972b2528122a308d6a9d11c0c8e95156
parent555b7770fef6024ac6fe4e580f8a8d1663ceb001 (diff)
downloadbuild-b931956076b93f055ba5a6bc3f848443d57d84b0.zip
build-b931956076b93f055ba5a6bc3f848443d57d84b0.tar.gz
build-b931956076b93f055ba5a6bc3f848443d57d84b0.tar.bz2
Convert bc depfiles to .P files.
So you don't need clean step when a header file gets moved or deleted. Change-Id: Iec0d63b89ba17c4ef0ad75f4a52b6759f2bff58a
-rw-r--r--core/binary.mk10
-rw-r--r--core/definitions.mk4
-rw-r--r--core/java.mk11
3 files changed, 16 insertions, 9 deletions
diff --git a/core/binary.mk b/core/binary.mk
index 15d5d1e..69131c3 100644
--- a/core/binary.mk
+++ b/core/binary.mk
@@ -451,18 +451,20 @@ ifneq ($(LOCAL_RENDERSCRIPT_INCLUDES_OVERRIDE),)
renderscript_includes := $(LOCAL_RENDERSCRIPT_INCLUDES_OVERRIDE)
endif
+bc_dep_files := $(addprefix $(renderscript_intermediate)/, \
+ $(patsubst %.fs,%.d, $(patsubst %.rs,%.d, $(notdir $(renderscript_sources)))))
+
$(RenderScript_file_stamp): PRIVATE_RS_INCLUDES := $(renderscript_includes)
$(RenderScript_file_stamp): PRIVATE_RS_CC := $(LOCAL_RENDERSCRIPT_CC)
$(RenderScript_file_stamp): PRIVATE_RS_FLAGS := $(renderscript_flags)
$(RenderScript_file_stamp): PRIVATE_RS_SOURCE_FILES := $(renderscript_sources_fullpath)
$(RenderScript_file_stamp): PRIVATE_RS_OUTPUT_DIR := $(renderscript_intermediate)
+$(RenderScript_file_stamp): PRIVATE_DEP_FILES := $(bc_dep_files)
$(RenderScript_file_stamp): $(renderscript_sources_fullpath) $(LOCAL_RENDERSCRIPT_CC)
$(transform-renderscripts-to-cpp-and-bc)
-# include the dependency files (.d) generated by llvm-rs-cc.
-renderscript_generated_dep_files := $(addprefix $(renderscript_intermediate)/, \
- $(patsubst %.fs,%.d, $(patsubst %.rs,%.d, $(notdir $(renderscript_sources)))))
--include $(renderscript_generated_dep_files)
+# include the dependency files (.d/.P) generated by llvm-rs-cc.
+-include $(bc_dep_files:%.d=%.P)
LOCAL_INTERMEDIATE_TARGETS += $(RenderScript_file_stamp)
diff --git a/core/definitions.mk b/core/definitions.mk
index 25f667f..2cdd3f5 100644
--- a/core/definitions.mk
+++ b/core/definitions.mk
@@ -871,6 +871,8 @@ $(hide) $(PRIVATE_RS_CC) \
$(PRIVATE_RS_FLAGS) \
$(foreach inc,$(PRIVATE_RS_INCLUDES),$(addprefix -I , $(inc))) \
$(PRIVATE_RS_SOURCE_FILES)
+ $(foreach d,$(PRIVATE_DEP_FILES),\
+ $(call transform-d-to-p-args,$(d),$(d:%.d=%.P))$(newline))
$(hide) mkdir -p $(dir $@)
$(hide) touch $@
endef
@@ -905,6 +907,8 @@ $(hide) $(PRIVATE_RS_CC) \
$(PRIVATE_RS_FLAGS) \
$(addprefix -I , $(PRIVATE_RS_INCLUDES)) \
$(PRIVATE_RS_SOURCE_FILES)
+ $(foreach d,$(PRIVATE_DEP_FILES),\
+ $(call transform-d-to-p-args,$(d),$(d:%.d=%.P))$(newline))
$(hide) mkdir -p $(dir $@)
$(hide) touch $@
endef
diff --git a/core/java.mk b/core/java.mk
index 55aa79b..fc4703c 100644
--- a/core/java.mk
+++ b/core/java.mk
@@ -180,6 +180,9 @@ ifneq ($(LOCAL_RENDERSCRIPT_INCLUDES_OVERRIDE),)
LOCAL_RENDERSCRIPT_INCLUDES := $(LOCAL_RENDERSCRIPT_INCLUDES_OVERRIDE)
endif
+bc_files := $(patsubst %.fs,%.bc, $(patsubst %.rs,%.bc, $(notdir $(renderscript_sources))))
+bc_dep_files := $(addprefix $(renderscript_intermediate.COMMON)/,$(patsubst %.bc,%.d,$(bc_files)))
+
$(RenderScript_file_stamp): PRIVATE_RS_INCLUDES := $(LOCAL_RENDERSCRIPT_INCLUDES)
$(RenderScript_file_stamp): PRIVATE_RS_CC := $(LOCAL_RENDERSCRIPT_CC)
$(RenderScript_file_stamp): PRIVATE_RS_FLAGS := $(renderscript_flags)
@@ -188,16 +191,14 @@ $(RenderScript_file_stamp): PRIVATE_RS_SOURCE_FILES := $(renderscript_sources_fu
# automatically found by the java compiling function transform-java-to-classes.jar.
$(RenderScript_file_stamp): PRIVATE_RS_OUTPUT_DIR := $(renderscript_intermediate.COMMON)
$(RenderScript_file_stamp): PRIVATE_RS_TARGET_API := $(renderscript_target_api)
+$(RenderScript_file_stamp): PRIVATE_DEP_FILES := $(bc_dep_files)
$(RenderScript_file_stamp): $(renderscript_sources_fullpath) $(LOCAL_RENDERSCRIPT_CC)
$(transform-renderscripts-to-java-and-bc)
-# include the dependency files (.d) generated by llvm-rs-cc.
-renderscript_generated_dep_files := $(addprefix $(renderscript_intermediate.COMMON)/, \
- $(patsubst %.fs,%.d, $(patsubst %.rs,%.d, $(notdir $(renderscript_sources)))))
--include $(renderscript_generated_dep_files)
+# include the dependency files (.d/.P) generated by llvm-rs-cc.
+-include $(bc_dep_files:%.d=%.P)
ifneq ($(LOCAL_RENDERSCRIPT_COMPATIBILITY),)
-bc_files := $(patsubst %.fs,%.bc, $(patsubst %.rs,%.bc, $(notdir $(renderscript_sources))))
ifeq ($(filter $(RSCOMPAT_32BIT_ONLY_API_LEVELS),$(renderscript_target_api)),)