From 1d46e8abb4a901e6b4ee37958805a9c0b4478bcc Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Tue, 12 Jun 2018 13:43:10 -0700 Subject: [PATCH] Add LOCAL_DONT_MERGE_MANIFESTS Some modules have manifests that ManifestMerger doesn't like, and don't need manifest merging. Skip manifest merger if LOCAL_DONT_MERGE_MANIFESTS is set. Bug: 78447299 Test: m checkbuild Change-Id: If1a58253c62e0194a6acfd79930b9bb10978abe5 --- core/android_manifest.mk | 29 ++++++++++++++++++----------- core/clear_vars.mk | 1 + 2 files changed, 19 insertions(+), 11 deletions(-) diff --git a/core/android_manifest.mk b/core/android_manifest.mk index c8c7333fe0..08f3f383ad 100644 --- a/core/android_manifest.mk +++ b/core/android_manifest.mk @@ -11,19 +11,26 @@ else full_android_manifest := $(LOCAL_PATH)/$(LOCAL_MANIFEST_FILE) endif -my_full_libs_manifest_files := $(LOCAL_FULL_LIBS_MANIFEST_FILES) - LOCAL_STATIC_JAVA_AAR_LIBRARIES := $(strip $(LOCAL_STATIC_JAVA_AAR_LIBRARIES)) -ifdef LOCAL_STATIC_JAVA_AAR_LIBRARIES -my_full_libs_manifest_files += $(foreach lib, $(LOCAL_STATIC_JAVA_AAR_LIBRARIES),\ - $(call intermediates-dir-for,JAVA_LIBRARIES,$(lib),,COMMON)/aar/AndroidManifest.xml) -# With aapt2, we'll link in the built resource from the AAR. -ifneq ($(LOCAL_USE_AAPT2),true) -LOCAL_RESOURCE_DIR += $(foreach lib, $(LOCAL_STATIC_JAVA_AAR_LIBRARIES),\ - $(call intermediates-dir-for,JAVA_LIBRARIES,$(lib),,COMMON)/aar/res) -endif # LOCAL_USE_AAPT2 -endif # LOCAL_STATIC_JAVA_AAR_LIBRARIES +my_full_libs_manifest_files := + +ifndef LOCAL_DONT_MERGE_MANIFESTS + my_full_libs_manifest_files += $(LOCAL_FULL_LIBS_MANIFEST_FILES) + + ifdef LOCAL_STATIC_JAVA_AAR_LIBRARIES + my_full_libs_manifest_files += $(foreach lib, $(LOCAL_STATIC_JAVA_AAR_LIBRARIES),\ + $(call intermediates-dir-for,JAVA_LIBRARIES,$(lib),,COMMON)/aar/AndroidManifest.xml) + endif +endif + +ifdef LOCAL_STATIC_JAVA_AAR_LIBRARIES + # With aapt2, we'll link in the built resource from the AAR. + ifneq ($(LOCAL_USE_AAPT2),true) + LOCAL_RESOURCE_DIR += $(foreach lib, $(LOCAL_STATIC_JAVA_AAR_LIBRARIES),\ + $(call intermediates-dir-for,JAVA_LIBRARIES,$(lib),,COMMON)/aar/res) + endif +endif # Set up rules to merge library manifest files ifneq (,$(strip $(my_full_libs_manifest_files))) diff --git a/core/clear_vars.mk b/core/clear_vars.mk index 1a33153912..8cc7c98c6c 100644 --- a/core/clear_vars.mk +++ b/core/clear_vars.mk @@ -61,6 +61,7 @@ LOCAL_DISABLE_RESOLVE_SUPPORT_LIBRARIES:= LOCAL_DONT_CHECK_MODULE:= # Don't delete the META_INF dir when merging static Java libraries. LOCAL_DONT_DELETE_JAR_META_INF:= +LOCAL_DONT_MERGE_MANIFESTS:= LOCAL_DPI_FILE_STEM:= LOCAL_DPI_VARIANTS:= LOCAL_DROIDDOC_ASSET_DIR:=