forked from openkylin/platform_build
Add generation of a module-info.json file
This outputs all of the modules that the build system knows about for this invocation. Change-Id: I8f95f3f8443c18f7898ce90e287432cbd2b6db6d
This commit is contained in:
parent
969b6f8ada
commit
48bd6f53f4
|
@ -0,0 +1,24 @@
|
|||
# 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)", )], ' \
|
||||
'},\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
|
||||
|
Loading…
Reference in New Issue