diff --git a/core/Makefile b/core/Makefile index d150ec364..bddd1da51 100644 --- a/core/Makefile +++ b/core/Makefile @@ -122,6 +122,24 @@ ifeq ($(BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED), true) property_overrides_split_enabled := true endif +# ----------------------------------------------------------------- +# FINAL_VENDOR_DEFAULT_PROPERTIES will be installed in vendor/default.prop if +# property_overrides_split_enabled is true. Otherwise it will be installed in +# ROOT/default.prop. +ifdef BOARD_VNDK_VERSION + ifeq ($(BOARD_VNDK_VERSION),current) + FINAL_VENDOR_DEFAULT_PROPERTIES := ro.vndk.version=$(PLATFORM_VNDK_VERSION) + else + FINAL_VENDOR_DEFAULT_PROPERTIES := ro.vndk.version=$(BOARD_VNDK_VERSION) + endif +else + FINAL_VENDOR_DEFAULT_PROPERTIES := +endif +FINAL_VENDOR_DEFAULT_PROPERTIES += \ + $(call collapse-pairs, $(PRODUCT_DEFAULT_PROPERTY_OVERRIDES)) +FINAL_VENDOR_DEFAULT_PROPERTIES := $(call uniq-pairs-by-first-component, \ + $(FINAL_VENDOR_DEFAULT_PROPERTIES),=) + # ----------------------------------------------------------------- # prop.default ifdef property_overrides_split_enabled @@ -139,7 +157,7 @@ FINAL_DEFAULT_PROPERTIES := \ $(call collapse-pairs, $(PRODUCT_SYSTEM_DEFAULT_PROPERTIES)) ifndef property_overrides_split_enabled FINAL_DEFAULT_PROPERTIES += \ - $(call collapse-pairs, $(PRODUCT_DEFAULT_PROPERTY_OVERRIDES)) + $(call collapse-pairs, $(FINAL_VENDOR_DEFAULT_PROPERTIES)) endif FINAL_DEFAULT_PROPERTIES := $(call uniq-pairs-by-first-component, \ $(FINAL_DEFAULT_PROPERTIES),=) @@ -174,20 +192,6 @@ ifdef property_overrides_split_enabled INSTALLED_VENDOR_DEFAULT_PROP_TARGET := $(TARGET_OUT_VENDOR)/default.prop ALL_DEFAULT_INSTALLED_MODULES += $(INSTALLED_VENDOR_DEFAULT_PROP_TARGET) -ifdef BOARD_VNDK_VERSION - ifeq ($(BOARD_VNDK_VERSION),current) - FINAL_VENDOR_DEFAULT_PROPERTIES := ro.vndk.version=$(PLATFORM_VNDK_VERSION) - else - FINAL_VENDOR_DEFAULT_PROPERTIES := ro.vndk.version=$(BOARD_VNDK_VERSION) - endif -else - FINAL_VENDOR_DEFAULT_PROPERTIES := -endif -FINAL_VENDOR_DEFAULT_PROPERTIES += \ - $(call collapse-pairs, $(PRODUCT_DEFAULT_PROPERTY_OVERRIDES)) -FINAL_VENDOR_DEFAULT_PROPERTIES := $(call uniq-pairs-by-first-component, \ - $(FINAL_VENDOR_DEFAULT_PROPERTIES),=) - $(INSTALLED_VENDOR_DEFAULT_PROP_TARGET): $(INSTALLED_DEFAULT_PROP_TARGET) @echo Target buildinfo: $@ @mkdir -p $(dir $@) diff --git a/core/config.mk b/core/config.mk index 488cf9ca7..5e817711d 100644 --- a/core/config.mk +++ b/core/config.mk @@ -797,6 +797,14 @@ $(foreach req,$(requirements),$(eval $(req)_OVERRIDE ?=)) requirements := +# BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED can be true only if early-mount of +# partitions is supported. But the early-mount must be supported for full +# treble products, and so BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED should be set +# by default for full treble products. +ifeq ($(PRODUCT_FULL_TREBLE),true) + BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED ?= true +endif + # If PRODUCT_USE_VNDK is true and BOARD_VNDK_VERSION is not defined yet, # BOARD_VNDK_VERSION will be set to "current" as default. # PRODUCT_USE_VNDK will be true in Android-P or later launching devices.