Optionally dump RBC variables at the end of config.mk
config.mk represents essentially the entire product/board configuration. In order to develop a "quick" rbc regression test, dump all the make variables at the end of config.mk. We can then compare these variable dumps instead of ninja files, because the ninja files take much longer to generate. Bug: 229132189 Test: Manually Change-Id: I4e8371be446b7e511aba22dff58530a6d9ff072f
This commit is contained in:
parent
7bc6d0e71d
commit
ec8316de2e
3 changed files with 19 additions and 9 deletions
|
@ -35,3 +35,7 @@ dump-many-vars :
|
|||
printf "'\n";)
|
||||
|
||||
endif # CALLED_FROM_SETUP
|
||||
|
||||
ifneq (,$(RBC_DUMP_CONFIG_FILE))
|
||||
$(call dump-variables-rbc,$(RBC_DUMP_CONFIG_FILE))
|
||||
endif
|
||||
|
|
|
@ -326,20 +326,26 @@ endif
|
|||
# raw ones.
|
||||
define dump-variables-rbc
|
||||
$(eval _dump_variables_rbc_excluded := \
|
||||
BOARD_PLAT_PRIVATE_SEPOLICY_DIR \
|
||||
BOARD_PLAT_PUBLIC_SEPOLICY_DIR \
|
||||
BUILD_NUMBER \
|
||||
DATE \
|
||||
LOCAL_PATH \
|
||||
MAKEFILE_LIST \
|
||||
PRODUCTS \
|
||||
PRODUCT_COPY_OUT_% \
|
||||
RBC_PRODUCT_CONFIG \
|
||||
RBC_BOARD_CONFIG \
|
||||
SOONG_% \
|
||||
TOPDIR \
|
||||
TRACE_BEGIN_SOONG \
|
||||
BOARD_PLAT_PUBLIC_SEPOLICY_DIR \
|
||||
BOARD_PLAT_PRIVATE_SEPOLICY_DIR \
|
||||
USER \
|
||||
SOONG_% \
|
||||
PRODUCT_COPY_OUT_%)\
|
||||
$(file >$(OUT_DIR)/dump-variables-rbc-temp.txt,$(subst $(space),$(newline),$(filter-out $(_dump_variables_rbc_excluded),$(.VARIABLES))))
|
||||
USER)
|
||||
$(file >$(OUT_DIR)/dump-variables-rbc-temp.txt,$(subst $(space),$(newline),$(sort $(filter-out $(_dump_variables_rbc_excluded),$(.VARIABLES)))))
|
||||
$(file >$(1),\
|
||||
$(foreach v, $(shell grep -he "^[A-Z][A-Z0-9_]*$$" $(OUT_DIR)/dump-variables-rbc-temp.txt),\
|
||||
$(v) := $(strip $($(v)))$(newline))\
|
||||
$(foreach ns,$(SOONG_CONFIG_NAMESPACES),\
|
||||
$(foreach v,$(SOONG_CONFIG_$(ns)),\
|
||||
$(foreach ns,$(sort $(SOONG_CONFIG_NAMESPACES)),\
|
||||
$(foreach v,$(sort $(SOONG_CONFIG_$(ns))),\
|
||||
$$(call soong_config_set,$(ns),$(v),$(SOONG_CONFIG_$(ns)_$(v)))$(newline))))
|
||||
endef
|
||||
|
||||
|
|
|
@ -162,7 +162,7 @@ def _product_configuration(top_pcm_name, top_pcm, input_variables_init):
|
|||
globals["PRODUCTS."+name+".mk.ARTIFACT_PATH_ALLOWED_LIST"] = handle.artifact_path_allowed_list
|
||||
globals["PRODUCTS."+name+".mk.ARTIFACT_PATH_REQUIREMENT_IS_RELAXED"] = "true" if handle.artifact_path_requirement_is_relaxed[0] else ""
|
||||
globals.setdefault("ARTIFACT_PATH_REQUIREMENT_PRODUCTS", [])
|
||||
globals["ARTIFACT_PATH_REQUIREMENT_PRODUCTS"] += [name+".mk"]
|
||||
globals["ARTIFACT_PATH_REQUIREMENT_PRODUCTS"] = sorted(globals["ARTIFACT_PATH_REQUIREMENT_PRODUCTS"] + [name+".mk"])
|
||||
|
||||
# Now we know everything about this PCM, record it in 'configs'.
|
||||
children = handle.inherited_modules
|
||||
|
|
Loading…
Reference in a new issue