330af541eb
This is needed for test mapping to have module-info.json built out for device targets so that test harness can do some checks to ensure the test is properly configured in TEST_MAPPING files. module-info has alreay depended on droidcore, which will be built out in the infrastructure. Verified in a forrest run: https://android-build.googleplex.com/builds/forrest/run/L81000000840964024 Bug: 154931418 Test: m -j droidcore m -j module-info Change-Id: I76b97debe3fbd51c2dc033c91ed9c2eb73cfa8a2
32 lines
1.6 KiB
Makefile
32 lines
1.6 KiB
Makefile
# Print a list of the modules that could be built
|
|
|
|
MODULE_INFO_JSON := $(PRODUCT_OUT)/module-info.json
|
|
|
|
$(MODULE_INFO_JSON):
|
|
@echo Generating $@
|
|
$(hide) echo -ne '{\n ' > $@
|
|
$(hide) echo -ne $(foreach m, $(sort $(ALL_MODULES)), \
|
|
' "$(m)": {' \
|
|
'"class": [$(foreach w,$(sort $(ALL_MODULES.$(m).CLASS)),"$(w)", )], ' \
|
|
'"path": [$(foreach w,$(sort $(ALL_MODULES.$(m).PATH)),"$(w)", )], ' \
|
|
'"tags": [$(foreach w,$(sort $(ALL_MODULES.$(m).TAGS)),"$(w)", )], ' \
|
|
'"installed": [$(foreach w,$(sort $(ALL_MODULES.$(m).INSTALLED)),"$(w)", )], ' \
|
|
'"compatibility_suites": [$(foreach w,$(sort $(ALL_MODULES.$(m).COMPATIBILITY_SUITES)),"$(w)", )], ' \
|
|
'"auto_test_config": [$(ALL_MODULES.$(m).auto_test_config)], ' \
|
|
'"module_name": "$(ALL_MODULES.$(m).MODULE_NAME)", ' \
|
|
'"test_config": [$(foreach w,$(strip $(ALL_MODULES.$(m).TEST_CONFIG) $(ALL_MODULES.$(m).EXTRA_TEST_CONFIGS)),"$(w)", )], ' \
|
|
'"dependencies": [$(foreach w,$(sort $(ALL_DEPS.$(m).ALL_DEPS)),"$(w)", )], ' \
|
|
'"srcs": [$(foreach w,$(sort $(ALL_MODULES.$(m).SRCS)),"$(w)", )], ' \
|
|
'"srcjars": [$(foreach w,$(sort $(ALL_MODULES.$(m).SRCJARS)),"$(w)", )], ' \
|
|
'"classes_jar": [$(foreach w,$(sort $(ALL_MODULES.$(m).CLASSES_JAR)),"$(w)", )], ' \
|
|
'"test_mainline_modules": [$(foreach w,$(sort $(ALL_MODULES.$(m).TEST_MAINLINE_MODULES)),"$(w)", )], ' \
|
|
'"is_unit_test": "$(ALL_MODULES.$(m).IS_UNIT_TEST)", ' \
|
|
'},\n' \
|
|
) | sed -e 's/, *\]/]/g' -e 's/, *\}/ }/g' -e '$$s/,$$//' >> $@
|
|
$(hide) echo '}' >> $@
|
|
|
|
|
|
droidcore: $(MODULE_INFO_JSON)
|
|
|
|
$(call dist-for-goals, general-tests, $(MODULE_INFO_JSON))
|
|
$(call dist-for-goals, droidcore, $(MODULE_INFO_JSON))
|