Merge "Add cts-api-map report targets" into main

This commit is contained in:
Treehugger Robot
2024-06-20 16:17:17 +00:00
committed by Gerrit Code Review

View File

@@ -92,8 +92,16 @@ $(verifier-zip): $(SOONG_ANDROID_CTS_VERIFIER_ZIP)
cts_api_coverage_exe := $(HOST_OUT_EXECUTABLES)/cts-api-coverage
dexdeps_exe := $(HOST_OUT_EXECUTABLES)/dexdeps
cts_api_map_exe := $(HOST_OUT_EXECUTABLES)/cts-api-map
coverage_out := $(HOST_OUT)/cts-api-coverage
api_map_out := $(HOST_OUT)/cts-api-map
cts_jar_files := $(api_map_out)/api_map_files.txt
$(cts_jar_files): PRIVATE_API_MAP_FILES := $(sort $(COMPATIBILITY.cts.API_MAP_FILES))
$(cts_jar_files):
mkdir -p $(dir $@)
echo $(PRIVATE_API_MAP_FILES) > $@
api_xml_description := $(TARGET_OUT_COMMON_INTERMEDIATES)/api.xml
@@ -116,6 +124,14 @@ cts-combined-xml-coverage-report := $(coverage_out)/combined-coverage.xml
cts_api_coverage_dependencies := $(cts_api_coverage_exe) $(dexdeps_exe) $(api_xml_description) $(napi_xml_description)
cts_system_api_coverage_dependencies := $(cts_api_coverage_exe) $(dexdeps_exe) $(system_api_xml_description)
cts-api-xml-api-map-report := $(api_map_out)/api-map.xml
cts-api-html-api-map-report := $(api_map_out)/api-map.html
cts-system-api-xml-api-map-report := $(api_map_out)/system-api-map.xml
cts-system-api-html-api-map-report := $(api_map_out)/system-api-map.html
cts_system_api_map_dependencies := $(cts_api_map_exe) $(system_api_xml_description) $(cts_jar_files)
cts_api_map_dependencies := $(cts_api_map_exe) $(api_xml_description) $(cts_jar_files)
android_cts_zip := $(HOST_OUT)/cts/android-cts.zip
cts_verifier_apk := $(call intermediates-dir-for,APPS,CtsVerifier)/package.apk
@@ -194,6 +210,48 @@ cts-combined-xml-coverage : $(cts-combined-xml-coverage-report)
.PHONY: cts-coverage-report-all cts-api-coverage
cts-coverage-report-all: cts-test-coverage cts-verifier-coverage cts-combined-coverage cts-combined-xml-coverage
$(cts-system-api-xml-api-map-report): PRIVATE_CTS_API_MAP_EXE := $(cts_api_map_exe)
$(cts-system-api-xml-api-map-report): PRIVATE_API_XML_DESC := $(system_api_xml_description)
$(cts-system-api-xml-api-map-report): PRIVATE_JAR_FILES := $(cts_jar_files)
$(cts-system-api-xml-api-map-report) : $(android_cts_zip) $(cts_system_api_map_dependencies) | $(ACP)
$(call generate-api-map-report-cts,"CTS System API MAP Report - XML",\
$(PRIVATE_JAR_FILES),xml)
$(cts-system-api-html-api-map-report): PRIVATE_CTS_API_MAP_EXE := $(cts_api_map_exe)
$(cts-system-api-html-api-map-report): PRIVATE_API_XML_DESC := $(system_api_xml_description)
$(cts-system-api-html-api-map-report): PRIVATE_JAR_FILES := $(cts_jar_files)
$(cts-system-api-html-api-map-report) : $(android_cts_zip) $(cts_system_api_map_dependencies) | $(ACP)
$(call generate-api-map-report-cts,"CTS System API MAP Report - HTML",\
$(PRIVATE_JAR_FILES),html)
$(cts-api-xml-api-map-report): PRIVATE_CTS_API_MAP_EXE := $(cts_api_map_exe)
$(cts-api-xml-api-map-report): PRIVATE_API_XML_DESC := $(api_xml_description)
$(cts-api-xml-api-map-report): PRIVATE_JAR_FILES := $(cts_jar_files)
$(cts-api-xml-api-map-report) : $(android_cts_zip) $(cts_api_map_dependencies) | $(ACP)
$(call generate-api-map-report-cts,"CTS API MAP Report - XML",\
$(PRIVATE_JAR_FILES),xml)
$(cts-api-html-api-map-report): PRIVATE_CTS_API_MAP_EXE := $(cts_api_map_exe)
$(cts-api-html-api-map-report): PRIVATE_API_XML_DESC := $(api_xml_description)
$(cts-api-html-api-map-report): PRIVATE_JAR_FILES := $(cts_jar_files)
$(cts-api-html-api-map-report) : $(android_cts_zip) $(cts_api_map_dependencies) | $(ACP)
$(call generate-api-map-report-cts,"CTS API MAP Report - HTML",\
$(PRIVATE_JAR_FILES),html)
.PHONY: cts-system-api-xml-api-map
cts-system-api-xml-api-map : $(cts-system-api-xml-api-map-report)
.PHONY: cts-system-api-html-api-map
cts-system-api-html-api-map : $(cts-system-api-html-api-map-report)
.PHONY: cts-api-xml-api-map
cts-api-xml-api-map : $(cts-api-xml-api-map-report)
.PHONY: cts-api-html-api-map
cts-api-html-api-map : $(cts-api-html-api-map-report)
.PHONY: cts-api-map-all
# Put the test coverage report in the dist dir if "cts-api-coverage" is among the build goals.
$(call dist-for-goals, cts-api-coverage, $(cts-test-coverage-report):cts-test-coverage-report.html)
$(call dist-for-goals, cts-api-coverage, $(cts-system-api-coverage-report):cts-system-api-coverage-report.html)
@@ -209,6 +267,17 @@ ALL_TARGETS.$(cts-verifier-coverage-report).META_LIC:=$(module_license_metadata)
ALL_TARGETS.$(cts-combined-coverage-report).META_LIC:=$(module_license_metadata)
ALL_TARGETS.$(cts-combined-xml-coverage-report).META_LIC:=$(module_license_metadata)
# Put the test api map report in the dist dir if "cts-api-map-all" is among the build goals.
$(call dist-for-goals, cts-api-map-all, $(cts-system-api-xml-api-map-report):cts-system-api-xml-api-map-report.xml)
$(call dist-for-goals, cts-api-map-all, $(cts-system-api-html-api-map-report):cts-system-api-html-api-map-report.html)
$(call dist-for-goals, cts-api-map-all, $(cts-api-xml-api-map-report):cts-api-xml-api-map-report.xml)
$(call dist-for-goals, cts-api-map-all, $(cts-api-html-api-map-report):cts-api-html-api-map-report.html)
ALL_TARGETS.$(cts-system-api-xml-api-map-report).META_LIC:=$(module_license_metadata)
ALL_TARGETS.$(cts-system-api-html-api-map-report).META_LIC:=$(module_license_metadata)
ALL_TARGETS.$(cts-api-xml-api-map-report).META_LIC:=$(module_license_metadata)
ALL_TARGETS.$(cts-api-html-api-map-report).META_LIC:=$(module_license_metadata)
# Arguments;
# 1 - Name of the report printed out on the screen
# 2 - List of apk files that will be scanned to generate the report
@@ -219,23 +288,42 @@ define generate-coverage-report-cts
@ echo $(1): file://$$(cd $(dir $@); pwd)/$(notdir $@)
endef
# Arguments;
# 1 - Name of the report printed out on the screen
# 2 - A file containing list of files that to be analyzed
# 3 - Format of the report
define generate-api-map-report-cts
$(hide) mkdir -p $(dir $@)
$(hide) $(PRIVATE_CTS_API_MAP_EXE) -j 8 -a $(PRIVATE_API_XML_DESC) -i $(2) -f $(3) -o $@
@ echo $(1): file://$$(cd $(dir $@); pwd)/$(notdir $@)
endef
# Reset temp vars
cts_api_coverage_dependencies :=
cts_system_api_coverage_dependencies :=
cts_api_map_dependencies :=
cts_system_api_map_dependencies :=
cts-combined-coverage-report :=
cts-combined-xml-coverage-report :=
cts-verifier-coverage-report :=
cts-test-coverage-report :=
cts-system-api-coverage-report :=
cts-system-api-xml-coverage-report :=
cts-api-xml-api-map-report :=
cts-api-html-api-map-report :=
cts-system-api-xml-api-map-report :=
cts-system-api-html-api-map-report :=
api_xml_description :=
api_text_description :=
system_api_xml_description :=
napi_xml_description :=
napi_text_description :=
coverage_out :=
api_map_out :=
cts_jar_files :=
dexdeps_exe :=
cts_api_coverage_exe :=
cts_api_map_exe :=
cts_verifier_apk :=
android_cts_zip :=
cts-dir :=