From f70aa4cde7c49f013afbbe188528fda552acda9c Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Tue, 6 Mar 2018 18:18:06 -0800 Subject: [PATCH] Move aapt flags from java_common.mk to aapt_flags.mk The aapt flags were being set in java_common.mk, which is used by various entry points. host_dalvik_java_library.mk and host_java_library.mk, and java_library.mk don't support aapt, only package_internal.mk and static_java_library.mk do. Move the aapt flags into aapt_flags.mk, and include it from package_internal.mk and static_java_library.mk. Bug: 73885582 Test: no change to build-${TARGET_PRODUCT}.ninja Change-Id: I124393846d37b9bbc941272cce4274121ac235ef Merged-In: I124393846d37b9bbc941272cce4274121ac235ef (cherry picked from commit b6013af085bb70c8d49c8c87c83ff19581fafa5a) --- core/aapt_flags.mk | 20 ++++++++++++++++++++ core/java_common.mk | 21 --------------------- core/package_internal.mk | 2 ++ core/static_java_library.mk | 2 ++ 4 files changed, 24 insertions(+), 21 deletions(-) create mode 100644 core/aapt_flags.mk diff --git a/core/aapt_flags.mk b/core/aapt_flags.mk new file mode 100644 index 0000000000..4e3493aff6 --- /dev/null +++ b/core/aapt_flags.mk @@ -0,0 +1,20 @@ +## AAPT Flags +# aapt doesn't accept multiple --extra-packages flags. +# We have to collapse them into a single --extra-packages flag here. +LOCAL_AAPT_FLAGS := $(strip $(LOCAL_AAPT_FLAGS)) +ifdef LOCAL_AAPT_FLAGS + ifeq ($(filter 0 1,$(words $(filter --extra-packages,$(LOCAL_AAPT_FLAGS)))),) + aapt_flags := $(subst --extra-packages$(space),--extra-packages@,$(LOCAL_AAPT_FLAGS)) + aapt_flags_extra_packages := $(patsubst --extra-packages@%,%,$(filter --extra-packages@%,$(aapt_flags))) + aapt_flags_extra_packages := $(sort $(subst :,$(space),$(aapt_flags_extra_packages))) + LOCAL_AAPT_FLAGS := $(filter-out --extra-packages@%,$(aapt_flags)) \ + --extra-packages $(subst $(space),:,$(aapt_flags_extra_packages)) + aapt_flags_extra_packages := + aapt_flags := + endif +endif + +$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_AAPT_FLAGS := $(LOCAL_AAPT_FLAGS) +$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_TARGET_AAPT_CHARACTERISTICS := $(TARGET_AAPT_CHARACTERISTICS) +$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_MANIFEST_PACKAGE_NAME := $(LOCAL_MANIFEST_PACKAGE_NAME) +$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_MANIFEST_INSTRUMENTATION_FOR := $(LOCAL_MANIFEST_INSTRUMENTATION_FOR) diff --git a/core/java_common.mk b/core/java_common.mk index 4e9d6855d4..6d86ad80fb 100644 --- a/core/java_common.mk +++ b/core/java_common.mk @@ -412,27 +412,6 @@ endif ########################################################## ifndef LOCAL_IS_HOST_MODULE -## AAPT Flags -# aapt doesn't accept multiple --extra-packages flags. -# We have to collapse them into a single --extra-packages flag here. -LOCAL_AAPT_FLAGS := $(strip $(LOCAL_AAPT_FLAGS)) -ifdef LOCAL_AAPT_FLAGS -ifeq ($(filter 0 1,$(words $(filter --extra-packages,$(LOCAL_AAPT_FLAGS)))),) -aapt_flags := $(subst --extra-packages$(space),--extra-packages@,$(LOCAL_AAPT_FLAGS)) -aapt_flags_extra_packages := $(patsubst --extra-packages@%,%,$(filter --extra-packages@%,$(aapt_flags))) -aapt_flags_extra_packages := $(sort $(subst :,$(space),$(aapt_flags_extra_packages))) -LOCAL_AAPT_FLAGS := $(filter-out --extra-packages@%,$(aapt_flags)) \ - --extra-packages $(subst $(space),:,$(aapt_flags_extra_packages)) -aapt_flags_extra_packages := -aapt_flags := -endif -endif - -$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_AAPT_FLAGS := $(LOCAL_AAPT_FLAGS) -$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_TARGET_AAPT_CHARACTERISTICS := $(TARGET_AAPT_CHARACTERISTICS) -$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_MANIFEST_PACKAGE_NAME := $(LOCAL_MANIFEST_PACKAGE_NAME) -$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_MANIFEST_INSTRUMENTATION_FOR := $(LOCAL_MANIFEST_INSTRUMENTATION_FOR) - ifdef aidl_sources ALL_MODULES.$(my_register_name).AIDL_FILES := $(aidl_sources) endif diff --git a/core/package_internal.mk b/core/package_internal.mk index e25fd99c38..cb56c55923 100644 --- a/core/package_internal.mk +++ b/core/package_internal.mk @@ -370,6 +370,8 @@ endif # LOCAL_DATA_BINDING resource_export_package := +include $(BUILD_SYSTEM)/aapt_flags.mk + ifeq ($(need_compile_res),true) ############################### diff --git a/core/static_java_library.mk b/core/static_java_library.mk index b8f508bd77..176d169276 100644 --- a/core/static_java_library.mk +++ b/core/static_java_library.mk @@ -135,6 +135,8 @@ $(intermediates.COMMON)/export_proguard_flags: $(import_proguard_flag_files) $(a import_proguard_flag_files := endif +include $(BUILD_SYSTEM)/aapt_flags.mk + # add --non-constant-id to prevent inlining constants. # AAR needs text symbol file R.txt. ifdef LOCAL_USE_AAPT2