diff --git a/core/dex_preopt_odex_install.mk b/core/dex_preopt_odex_install.mk index 7655b426a8..ea50313264 100644 --- a/core/dex_preopt_odex_install.mk +++ b/core/dex_preopt_odex_install.mk @@ -423,6 +423,15 @@ $(eval $(call copy-one-file,$(my_dexpreopt_config),$(my_dexpreopt_config_for_pos $(LOCAL_INSTALLED_MODULE): $(my_dexpreopt_config_for_postprocessing) +# System server jars defined in Android.mk are deprecated. +ifneq (true, $(PRODUCT_BROKEN_DEPRECATED_MK_SYSTEM_SERVER_JARS)) + ifneq (,$(filter %:$(LOCAL_MODULE), $(PRODUCT_SYSTEM_SERVER_JARS) $(PRODUCT_APEX_SYSTEM_SERVER_JARS))) + $(error System server jars defined in Android.mk are deprecated. \ + Convert $(LOCAL_MODULE) to Android.bp or temporarily disable the error \ + with 'PRODUCT_BROKEN_DEPRECATED_MK_SYSTEM_SERVER_JARS := true') + endif +endif + ifdef LOCAL_DEX_PREOPT # System server jars must be copied into predefined locations expected by # dexpreopt. Copy rule must be exposed to Ninja (as it uses these files as diff --git a/core/product.mk b/core/product.mk index 1b3c9f5b23..23fb93929a 100644 --- a/core/product.mk +++ b/core/product.mk @@ -237,6 +237,8 @@ _product_list_vars += PRODUCT_SYSTEM_SERVER_JARS _product_list_vars += PRODUCT_APEX_SYSTEM_SERVER_JARS # If true, then suboptimal order of system server jars does not cause an error. _product_single_value_vars += PRODUCT_BROKEN_SUBOPTIMAL_ORDER_OF_SYSTEM_SERVER_JARS +# If true, then system server jars defined in Android.mk are supported. +_product_single_value_vars += PRODUCT_BROKEN_DEPRECATED_MK_SYSTEM_SERVER_JARS # Additional system server jars to be appended at the end of the common list. # This is necessary to avoid jars reordering due to makefile inheritance order.