Break up PRODUCT_FULL_TREBLE into variables.
PRODUCT_SEPOLICY_SPLIT PRODUCT_TREBLE_LINKER_NAMESPACES PRODUCT_ENFORCE_VINTF_MANIFEST Being able to selectively toggle these does several things: - it's better software engineering (no longer conflating vars) - easier bringup for devices. - devices which don't require full Treble can opt out of only parts of it and still get the benefits of others. Bug: 62019611 Test: manual Merged-In: I728e32869baf043ae9a54e83e513fb99e560c827 Change-Id: I728e32869baf043ae9a54e83e513fb99e560c827
This commit is contained in:
parent
9588438023
commit
33fdd8c4ef
|
@ -700,6 +700,25 @@ else ifneq ($(call math_gt_or_eq,$(PRODUCT_SHIPPING_API_LEVEL),26),)
|
||||||
PRODUCT_FULL_TREBLE := true
|
PRODUCT_FULL_TREBLE := true
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
requirements := \
|
||||||
|
PRODUCT_TREBLE_LINKER_NAMESPACES \
|
||||||
|
PRODUCT_SEPOLICY_SPLIT \
|
||||||
|
PRODUCT_ENFORCE_VINTF_MANIFEST \
|
||||||
|
|
||||||
|
# If it is overriden, then the requirement override is taken, otherwise it's
|
||||||
|
# PRODUCT_FULL_TREBLE
|
||||||
|
$(foreach req,$(requirements),$(eval \
|
||||||
|
$(req) := $(if $($(req)_OVERRIDE),$($(req)_OVERRIDE),$(PRODUCT_FULL_TREBLE))))
|
||||||
|
# If the requirement is false for any reason, then it's not PRODUCT_FULL_TREBLE
|
||||||
|
$(foreach req,$(requirements),$(eval \
|
||||||
|
PRODUCT_FULL_TREBLE := $(if $(filter false,$($(req))),false,$(PRODUCT_FULL_TREBLE))))
|
||||||
|
|
||||||
|
.KATI_READONLY := \
|
||||||
|
$(requirements) \
|
||||||
|
PRODUCT_FULL_TREBLE
|
||||||
|
|
||||||
|
requirements :=
|
||||||
|
|
||||||
# The default key if not set as LOCAL_CERTIFICATE
|
# The default key if not set as LOCAL_CERTIFICATE
|
||||||
ifdef PRODUCT_DEFAULT_DEV_CERTIFICATE
|
ifdef PRODUCT_DEFAULT_DEV_CERTIFICATE
|
||||||
DEFAULT_SYSTEM_DEV_CERTIFICATE := $(PRODUCT_DEFAULT_DEV_CERTIFICATE)
|
DEFAULT_SYSTEM_DEV_CERTIFICATE := $(PRODUCT_DEFAULT_DEV_CERTIFICATE)
|
||||||
|
|
Loading…
Reference in New Issue