Use target-specific variable (aka PRIVATE_* var)
so the build rules don't depend on global variables that may be modified
later in other makefiles.
Also fixed an error introduced by the previous cleanup change.
Change-Id: I2cecc94f06433bb594e3eff3f429f4d65e217f25
diff --git a/CtsCoverage.mk b/CtsCoverage.mk
index 8e5d2af..21d46d1 100644
--- a/CtsCoverage.mk
+++ b/CtsCoverage.mk
@@ -28,8 +28,8 @@
api_xml_description := $(coverage_out)/api.xml
$(api_xml_description) : $(api_text_description) $(APICHECK)
$(hide) echo "Converting API file to XML: $@"
- $(hide) mkdir -p $(coverage_out)
- $(hide) $(APICHECK_COMMAND) -convert2xml $(api_text_description) $(api_xml_description)
+ $(hide) mkdir -p $(dir $@)
+ $(hide) $(APICHECK_COMMAND) -convert2xml $< $@
cts-test-coverage-report := $(coverage_out)/test-coverage.html
cts-verifier-coverage-report := $(coverage_out)/verifier-coverage.html
@@ -38,25 +38,31 @@
cts_api_coverage_dependencies := $(cts_api_coverage_exe) $(dexdeps_exe) $(api_xml_description)
cts_coverage_test_cases_dependencies := $(foreach c, $(CTS_COVERAGE_TEST_CASE_LIST), $(call intermediates-dir-for,APPS,$(c))/package.apk)
-$(cts-test-coverage-report) : PRIVATE_TEST_CASES_APKS := $(cts_coverage_test_cases_dependencies)
+$(cts-test-coverage-report): PRIVATE_TEST_CASES_APKS := $(cts_coverage_test_cases_dependencies)
+$(cts-test-coverage-report): PRIVATE_CTS_API_COVERAGE_EXE := $(cts_api_coverage_exe)
+$(cts-test-coverage-report): PRIVATE_DEXDEPS_EXE := $(dexdeps_exe)
+$(cts-test-coverage-report): PRIVATE_API_XML_DESC := $(api_xml_description)
$(cts-test-coverage-report) : $(cts_coverage_test_cases_dependencies) $(cts_api_coverage_dependencies) | $(ACP)
$(call generate-coverage-report,"CTS Tests API Coverage Report",\
- $(PRIVATE_TEST_CASES_APKS),html,test-coverage.html)
+ $(PRIVATE_TEST_CASES_APKS),html)
cts_coverage_test_cases_dependencies := $(call intermediates-dir-for,APPS,CtsVerifier)/package.apk
-$(cts-test-coverage-report) : PRIVATE_TEST_CASES_APKS := $(cts_coverage_test_cases_dependencies)
+$(cts-verifier-coverage-report): PRIVATE_TEST_CASES_APKS := $(cts_coverage_test_cases_dependencies)
+$(cts-verifier-coverage-report): PRIVATE_CTS_API_COVERAGE_EXE := $(cts_api_coverage_exe)
+$(cts-verifier-coverage-report): PRIVATE_DEXDEPS_EXE := $(dexdeps_exe)
+$(cts-verifier-coverage-report): PRIVATE_API_XML_DESC := $(api_xml_description)
$(cts-verifier-coverage-report) : $(cts_coverage_test_cases_dependencies) $(cts_api_coverage_dependencies) | $(ACP)
$(call generate-coverage-report,"CTS Verifier API Coverage Report",\
- $(PRIVATE_TEST_CASES_APKS),html,verifier-coverage.html)
+ $(PRIVATE_TEST_CASES_APKS),html)
cts_coverage_test_cases_dependencies := $(foreach c, $(CTS_COVERAGE_TEST_CASE_LIST) CtsVerifier, $(call intermediates-dir-for,APPS,$(c))/package.apk)
-$(cts-test-coverage-report) : PRIVATE_TEST_CASES_APKS := $(cts_coverage_test_cases_dependencies)
+$(cts-combined-coverage-report): PRIVATE_TEST_CASES_APKS := $(cts_coverage_test_cases_dependencies)
+$(cts-combined-coverage-report): PRIVATE_CTS_API_COVERAGE_EXE := $(cts_api_coverage_exe)
+$(cts-combined-coverage-report): PRIVATE_DEXDEPS_EXE := $(dexdeps_exe)
+$(cts-combined-coverage-report): PRIVATE_API_XML_DESC := $(api_xml_description)
$(cts-combined-coverage-report) : $(cts_coverage_test_cases_dependencies) $(cts_api_coverage_dependencies) | $(ACP)
$(call generate-coverage-report,"CTS Combined API Coverage Report",\
- $(PRIVATE_TEST_CASES_APKS),html,combined-coverage.html)
-
-cts_api_coverage_dependencies :=
-cts_coverage_test_cases_dependencies :=
+ $(PRIVATE_TEST_CASES_APKS),html)
.PHONY: cts-test-coverage
cts-test-coverage : $(cts-test-coverage-report)
@@ -78,9 +84,20 @@
# 1 - Name of the report printed out on the screen
# 2 - List of apk files that will be scanned to generate the report
# 3 - Format of the report
-# 4 - Output file name of the report
define generate-coverage-report
- $(hide) mkdir -p $(coverage_out)
- $(hide) $(cts_api_coverage_exe) -d $(dexdeps_exe) -a $(api_xml_description) -f $(3) -o $(coverage_out)/$(4) $(2)
- @ echo $(1): file://$(ANDROID_BUILD_TOP)/$(coverage_out)/$(4)
+ $(hide) mkdir -p $(dir $@)
+ $(hide) $(PRIVATE_CTS_API_COVERAGE_EXE) -d $(PRIVATE_DEXDEPS_EXE) -a $(PRIVATE_API_XML_DESC) -f $(3) -o $@ $(2)
+ @ echo $(1): file://$(ANDROID_BUILD_TOP)/$@
endef
+
+# Reset temp vars
+cts_api_coverage_dependencies :=
+cts_coverage_test_cases_dependencies :=
+cts-combined-coverage-report :=
+cts-verifier-coverage-report :=
+cts-test-coverage-report :=
+api_xml_description :=
+api_text_description :=
+coverage_out :=
+dexdeps_exe :=
+cts_api_coverage_exe :=