Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7693ec7e authored by Ulya Trafimovich's avatar Ulya Trafimovich
Browse files

Deprecate system server jars defined in Android.mk.

Add PRODUCT_BROKEN_DEPRECATED_MK_SYSTEM_SERVER_JARS variable that is
undefined by default. Setting that variable to true enables support for
system server jars defined in Android.mk. It should be enabled on a
per-product basis in product makefiles.

Bug: 203618671
Test: m nothing
Change-Id: If90d7131d37f308c468e395c236d5aa5ad053bad
parent 09f68abc
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -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
+2 −0
Original line number Diff line number Diff line
@@ -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.