From b543a4f80c07c056325601d512f99ebdf6d89455 Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Mon, 12 Mar 2018 14:56:27 -0700 Subject: [PATCH] Move R.txt and make aapt2 generate it Move R.txt from $(intermediates.COMMON)/src to $(intermediates.COMMON) in preparation for moving aapt/aapt2 java files out of src. Also make aapt2 generate R.txt, and make it an implicit output of the rule and and input to the aar rule. Bug: 73885582 Test: m out/target/common/obj/JAVA_LIBRARIES/SettingsLib_intermediates/javalib.aar Test: m checkbuild Change-Id: Ia858de226355965b69794c002f841333df16a612 Merged-In: Ia858de226355965b69794c002f841333df16a612 (cherry picked from commit 7c24f8ec85266cc93c873b2daffc3952a70b2d5f) --- core/static_java_library.mk | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/core/static_java_library.mk b/core/static_java_library.mk index 99a69e8364..7b78f6ef95 100644 --- a/core/static_java_library.mk +++ b/core/static_java_library.mk @@ -144,7 +144,7 @@ LOCAL_INTERMEDIATE_SOURCE_DIR := $(intermediates.COMMON)/src # add --non-constant-id to prevent inlining constants. # AAR needs text symbol file R.txt. ifdef LOCAL_USE_AAPT2 -$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_AAPT_FLAGS := $(LOCAL_AAPT_FLAGS) --static-lib +$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_AAPT_FLAGS := $(LOCAL_AAPT_FLAGS) --static-lib --output-text-symbols $(intermediates.COMMON)/R.txt ifndef LOCAL_AAPT_NAMESPACES $(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_AAPT_FLAGS += --no-static-lib-packages endif @@ -152,7 +152,7 @@ $(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_PRODUCT_AAPT_CONFIG := $(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_PRODUCT_AAPT_PREF_CONFIG := $(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_TARGET_AAPT_CHARACTERISTICS := else -$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_AAPT_FLAGS := $(LOCAL_AAPT_FLAGS) --non-constant-id --output-text-symbols $(LOCAL_INTERMEDIATE_SOURCE_DIR) +$(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_AAPT_FLAGS := $(LOCAL_AAPT_FLAGS) --non-constant-id --output-text-symbols $(intermediates.COMMON) endif $(LOCAL_INTERMEDIATE_TARGETS): PRIVATE_SOURCE_INTERMEDIATES_DIR := $(LOCAL_INTERMEDIATE_SOURCE_DIR) @@ -176,7 +176,9 @@ ifdef LOCAL_USE_AAPT2 endif # renderscript_target_api is set include $(BUILD_SYSTEM)/aapt2.mk $(my_res_package) : $(framework_res_package_export) + $(my_res_package): .KATI_IMPLICIT_OUTPUTS += $(intermediates.COMMON)/R.txt else + $(R_file_stamp): .KATI_IMPLICIT_OUTPUTS := $(intermediates.COMMON)/R.txt $(R_file_stamp): PRIVATE_RESOURCE_LIST := $(all_resources) $(R_file_stamp) : $(all_resources) $(full_android_manifest) $(AAPT) $(framework_res_package_export) $(rs_generated_res_zip) @echo "target R.java/Manifest.java: $(PRIVATE_MODULE) ($@)" @@ -209,9 +211,9 @@ $(built_aar): PRIVATE_MODULE := $(LOCAL_MODULE) $(built_aar): PRIVATE_ANDROID_MANIFEST := $(full_android_manifest) $(built_aar): PRIVATE_CLASSES_JAR := $(aar_classes_jar) $(built_aar): PRIVATE_RESOURCE_DIR := $(LOCAL_RESOURCE_DIR) -$(built_aar): PRIVATE_R_TXT := $(LOCAL_INTERMEDIATE_SOURCE_DIR)/R.txt +$(built_aar): PRIVATE_R_TXT := $(intermediates.COMMON)/R.txt $(built_aar): $(JAR_ARGS) -$(built_aar) : $(aar_classes_jar) $(full_android_manifest) +$(built_aar) : $(aar_classes_jar) $(full_android_manifest) $(intermediates.COMMON)/R.txt @echo "target AAR: $(PRIVATE_MODULE) ($@)" $(hide) rm -rf $(dir $@)aar && mkdir -p $(dir $@)aar/res $(hide) cp $(PRIVATE_ANDROID_MANIFEST) $(dir $@)aar/AndroidManifest.xml