Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b2302013 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

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

parents 60713e6a 7c1c2452
Loading
Loading
Loading
Loading
+88 −0
Original line number Diff line number Diff line
@@ -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 :=