Add ro.product.locale
This is a BCP-47 language tag representing the default locale for a given device. Support for the earlier mechanism of supplying a language and region via ro.product.locale.region/language has been removed. This change also removes support for supplying these properties via PRODUCT_ADDITIONAL_PROPERTY_OVERRIDES. Devices that need to override this should either rearrange their PRODUCT_LANGUAGES or supply a custom .prop file. bug: 17691569 Change-Id: I00c74098542b49b9c514a6ca39ea8d08179546c1
This commit is contained in:
@@ -156,29 +156,12 @@ else
|
||||
BUILD_DISPLAY_ID := $(build_desc)
|
||||
endif
|
||||
|
||||
# Whether there is default locale set in PRODUCT_PROPERTY_OVERRIDES
|
||||
product_property_override_locale_language := $(strip \
|
||||
$(patsubst ro.product.locale.language=%,%,\
|
||||
$(filter ro.product.locale.language=%,$(PRODUCT_PROPERTY_OVERRIDES))))
|
||||
product_property_overrides_locale_region := $(strip \
|
||||
$(patsubst ro.product.locale.region=%,%,\
|
||||
$(filter ro.product.locale.region=%,$(PRODUCT_PROPERTY_OVERRIDES))))
|
||||
|
||||
# Selects the first locale in the list given as the argument,
|
||||
# and splits it into language and region, which each may be
|
||||
# empty.
|
||||
define default-locale
|
||||
$(subst _, , $(firstword $(1)))
|
||||
endef
|
||||
|
||||
# Selects the first locale in the list given as the argument
|
||||
# and returns the language (or the region), if it's not set in PRODUCT_PROPERTY_OVERRIDES;
|
||||
# Return empty string if it's already set in PRODUCT_PROPERTY_OVERRIDES.
|
||||
define default-locale-language
|
||||
$(if $(product_property_override_locale_language),,$(word 1, $(call default-locale, $(1))))
|
||||
endef
|
||||
define default-locale-region
|
||||
$(if $(product_property_overrides_locale_region),,$(word 2, $(call default-locale, $(1))))
|
||||
# Accepts a whitespace separated list of product locales such as
|
||||
# (en_US en_AU en_GB...) and returns the first locale in the list with
|
||||
# underscores replaced with hyphens. In the example above, this will
|
||||
# return "en-US".
|
||||
define get-default-product-locale
|
||||
$(strip $(subst _,-, $(firstword $(1))))
|
||||
endef
|
||||
|
||||
BUILDINFO_SH := build/tools/buildinfo.sh
|
||||
@@ -203,8 +186,7 @@ endif
|
||||
TARGET_DEVICE="$(TARGET_DEVICE)" \
|
||||
PRODUCT_NAME="$(TARGET_PRODUCT)" \
|
||||
PRODUCT_BRAND="$(PRODUCT_BRAND)" \
|
||||
PRODUCT_DEFAULT_LANGUAGE="$(call default-locale-language,$(PRODUCT_LOCALES))" \
|
||||
PRODUCT_DEFAULT_REGION="$(call default-locale-region,$(PRODUCT_LOCALES))" \
|
||||
PRODUCT_DEFAULT_LOCALE="$(call get-default-product-locale,$(PRODUCT_LOCALES))" \
|
||||
PRODUCT_DEFAULT_WIFI_CHANNELS="$(PRODUCT_DEFAULT_WIFI_CHANNELS)" \
|
||||
PRODUCT_MODEL="$(PRODUCT_MODEL)" \
|
||||
PRODUCT_MANUFACTURER="$(PRODUCT_MANUFACTURER)" \
|
||||
|
Reference in New Issue
Block a user