2016-04-06 23:48:30 +02:00
|
|
|
# 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)", )], ' \
|
2017-11-29 00:04:40 +01:00
|
|
|
'"compatibility_suites": [$(foreach w,$(sort $(ALL_MODULES.$(m).COMPATIBILITY_SUITES)),"$(w)", )], ' \
|
2017-12-07 00:57:31 +01:00
|
|
|
'"auto_test_config": [$(ALL_MODULES.$(m).auto_test_config)], ' \
|
2018-08-07 15:22:21 +02:00
|
|
|
'"module_name": ["$(ALL_MODULES.$(m).MODULE_NAME)"], ' \
|
2016-04-06 23:48:30 +02:00
|
|
|
'},\n' \
|
|
|
|
) | sed -e 's/, *\]/]/g' -e 's/, *\}/ }/g' -e '$$s/,$$//' >> $@
|
|
|
|
$(hide) echo '}' >> $@
|
|
|
|
|
|
|
|
|
|
|
|
# If ONE_SHOT_MAKEFILE is set, our view of the world is smaller, so don't
|
|
|
|
# rewrite the file in that came.
|
|
|
|
ifndef ONE_SHOT_MAKEFILE
|
|
|
|
files: $(MODULE_INFO_JSON)
|
|
|
|
endif
|
|
|
|
|