Exempt some RROs from building against SDK

If an RRO is depending on the source module to import its resources,
this trips up the link check because the source module may not be
building against the SDK. Exempt these RROs from the rule.

Bug: 123510624
Test: m
Change-Id: Ie0e05ce6d31dd3a0eafb14ace426da2bc15fb740
This commit is contained in:
Anton Hansson 2019-01-29 15:01:06 +00:00
parent ad9ee4b504
commit 038177ba55
2 changed files with 9 additions and 6 deletions

View File

@ -27,10 +27,14 @@ LOCAL_CERTIFICATE := platform
LOCAL_AAPT_FLAGS += --auto-add-overlay
LOCAL_RESOURCE_DIR := $(enforce_rro_source_overlays)
ifeq (framework-res__auto_generated_rro,$(enforce_rro_module))
LOCAL_PRIVATE_PLATFORM_APIS := true
ifneq (,$(LOCAL_RES_LIBRARIES))
# Technically we are linking against the app (if only to grab its resources),
# and because it's potentially not building against the SDK, we can't either.
LOCAL_PRIVATE_PLATFORM_APIS := true
else ifeq (framework-res__auto_generated_rro,$(enforce_rro_module))
LOCAL_PRIVATE_PLATFORM_APIS := true
else
LOCAL_SDK_VERSION := current
LOCAL_SDK_VERSION := current
endif
include $(BUILD_RRO_PACKAGE)

View File

@ -25,9 +25,8 @@ ifdef BOARD_SYSTEMSDK_VERSIONS
ifneq (,$(filter JAVA_LIBRARIES APPS,$(LOCAL_MODULE_CLASS)))
ifndef LOCAL_SDK_VERSION
ifeq ($(_is_vendor_app),true)
ifeq (,$(filter framework-res__auto_generated_rro,$(LOCAL_MODULE)))
# Runtime resource overlay for framework-res is exempted from building
# against System SDK.
ifeq (,$(filter %__auto_generated_rro,$(LOCAL_MODULE)))
# Runtime resource overlays are exempted from building against System SDK.
# TODO(b/35859726): remove this exception
LOCAL_SDK_VERSION := system_current
endif