Move manifest generation logic into static_java_library.mk
Previously a manifest file would be generated for static_java_library.mk and package_internal.mk. For pacakge_internal.mk, this would cause cryptic errors like b/188612215#2 With this CL, a manifest file would only be generated for java_library with need_compile_res == true. The advantages are 1. No redundant generation for java_library with need_compile_res == false (i.e. modules that do not require aapt2) 2. Force devs to provide manifest for android_app, and not silently generating one for them Bug: 188652897 Test: TH Test: m nothing in tv-dev, car-dev Change-Id: I69a23e373f1b4ac1569ae5b1d36067bfc0dadc05
This commit is contained in:
parent
3293a959ad
commit
68684bea79
3 changed files with 15 additions and 7 deletions
|
@ -44,10 +44,3 @@ ifneq (,$(filter-out current system_current test_current core_current,$(LOCAL_SD
|
|||
LOCAL_SDK_RES_VERSION := current
|
||||
endif
|
||||
|
||||
ifeq (,$(strip $(LOCAL_MANIFEST_FILE)$(LOCAL_FULL_MANIFEST_FILE)))
|
||||
ifeq (,$(wildcard $(LOCAL_PATH)/AndroidManifest.xml))
|
||||
# work around missing manifests by creating a default one
|
||||
LOCAL_FULL_MANIFEST_FILE := $(call local-intermediates-dir,COMMON)/DefaultManifest.xml
|
||||
$(call create-default-manifest-file,$(LOCAL_FULL_MANIFEST_FILE),$(call module-min-sdk-version))
|
||||
endif
|
||||
endif
|
||||
|
|
|
@ -97,6 +97,14 @@ LOCAL_MANIFEST_PACKAGE_NAME := $(override_manifest_name)
|
|||
endif
|
||||
|
||||
include $(BUILD_SYSTEM)/force_aapt2.mk
|
||||
# validate that app contains a manifest file for aapt2
|
||||
ifeq (,$(strip $(LOCAL_MANIFEST_FILE)$(LOCAL_FULL_MANIFEST_FILE)))
|
||||
ifeq (,$(wildcard $(LOCAL_PATH)/AndroidManifest.xml))
|
||||
$(call pretty-error,App missing manifest file which is required by aapt2. \
|
||||
Provide a manifest file by either setting LOCAL_MANIFEST_FILE in Android.mk \
|
||||
or via a AndroidManifest.xml in this directory)
|
||||
endif
|
||||
endif
|
||||
|
||||
# Process Support Library dependencies.
|
||||
include $(BUILD_SYSTEM)/support_libraries.mk
|
||||
|
|
|
@ -101,6 +101,13 @@ all_res_assets := $(all_resources)
|
|||
include $(BUILD_SYSTEM)/java_renderscript.mk
|
||||
|
||||
ifeq (true,$(need_compile_res))
|
||||
# work around missing manifests by creating a default one
|
||||
ifeq (,$(strip $(LOCAL_MANIFEST_FILE)$(LOCAL_FULL_MANIFEST_FILE)))
|
||||
ifeq (,$(wildcard $(LOCAL_PATH)/AndroidManifest.xml))
|
||||
LOCAL_FULL_MANIFEST_FILE := $(call local-intermediates-dir,COMMON)/DefaultManifest.xml
|
||||
$(call create-default-manifest-file,$(LOCAL_FULL_MANIFEST_FILE),$(call module-min-sdk-version))
|
||||
endif
|
||||
endif
|
||||
include $(BUILD_SYSTEM)/android_manifest.mk
|
||||
|
||||
LOCAL_SDK_RES_VERSION:=$(strip $(LOCAL_SDK_RES_VERSION))
|
||||
|
|
Loading…
Reference in a new issue