|
|
|
@@ -325,50 +325,10 @@ endif
|
|
|
|
|
|
|
|
|
|
include $(BUILD_SYSTEM)/android_manifest.mk
|
|
|
|
|
|
|
|
|
|
called_from_package_internal := true
|
|
|
|
|
#################################
|
|
|
|
|
include $(BUILD_SYSTEM)/java.mk
|
|
|
|
|
#################################
|
|
|
|
|
called_from_package_internal :=
|
|
|
|
|
|
|
|
|
|
LOCAL_SDK_RES_VERSION:=$(strip $(LOCAL_SDK_RES_VERSION))
|
|
|
|
|
ifeq ($(LOCAL_SDK_RES_VERSION),)
|
|
|
|
|
LOCAL_SDK_RES_VERSION:=$(LOCAL_SDK_VERSION)
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
$(LOCAL_INTERMEDIATE_TARGETS): \
|
|
|
|
|
PRIVATE_ANDROID_MANIFEST := $(full_android_manifest)
|
|
|
|
|
|
|
|
|
|
ifeq ($(LOCAL_DATA_BINDING),true)
|
|
|
|
|
data_binding_stamp := $(data_binding_intermediates)/data-binding.stamp
|
|
|
|
|
$(data_binding_stamp): PRIVATE_INTERMEDIATES := $(data_binding_intermediates)
|
|
|
|
|
$(data_binding_stamp): PRIVATE_MANIFEST := $(full_android_manifest)
|
|
|
|
|
# Generate code into $(LOCAL_INTERMEDIATE_SOURCE_DIR) so that the generated .java files
|
|
|
|
|
# will be automatically picked up by function compile-java.
|
|
|
|
|
$(data_binding_stamp): PRIVATE_SRC_OUT := $(LOCAL_INTERMEDIATE_SOURCE_DIR)/data-binding
|
|
|
|
|
$(data_binding_stamp): PRIVATE_XML_OUT := $(data_binding_intermediates)/xml
|
|
|
|
|
$(data_binding_stamp): PRIVATE_RES_OUT := $(data_binding_res_out)
|
|
|
|
|
$(data_binding_stamp): PRIVATE_RES_IN := $(data_binding_res_in)
|
|
|
|
|
$(data_binding_stamp): PRIVATE_ANNO_SRC_DIR := $(data_binding_intermediates)/anno-src
|
|
|
|
|
|
|
|
|
|
$(data_binding_stamp) : $(all_res_assets) $(full_android_manifest) \
|
|
|
|
|
$(DATA_BINDING_COMPILER)
|
|
|
|
|
@echo "Data-binding process: $@"
|
|
|
|
|
@rm -rf $(PRIVATE_INTERMEDIATES) $(PRIVATE_SRC_OUT) && \
|
|
|
|
|
mkdir -p $(PRIVATE_INTERMEDIATES) $(PRIVATE_SRC_OUT) \
|
|
|
|
|
$(PRIVATE_XML_OUT) $(PRIVATE_RES_OUT) $(PRIVATE_ANNO_SRC_DIR)
|
|
|
|
|
$(hide) $(JAVA) -classpath $(DATA_BINDING_COMPILER) android.databinding.tool.MakeCopy \
|
|
|
|
|
$(PRIVATE_MANIFEST) $(PRIVATE_SRC_OUT) $(PRIVATE_XML_OUT) $(PRIVATE_RES_OUT) $(PRIVATE_RES_IN)
|
|
|
|
|
$(hide) touch $@
|
|
|
|
|
|
|
|
|
|
# Make sure the data-binding process happens before javac and generation of R.java.
|
|
|
|
|
$(R_file_stamp): $(data_binding_stamp)
|
|
|
|
|
$(java_source_list_file): $(data_binding_stamp)
|
|
|
|
|
$(full_classes_compiled_jar): $(data_binding_stamp)
|
|
|
|
|
endif # LOCAL_DATA_BINDING
|
|
|
|
|
|
|
|
|
|
resource_export_package :=
|
|
|
|
|
|
|
|
|
|
include $(BUILD_SYSTEM)/java_renderscript.mk
|
|
|
|
|
|
|
|
|
|
include $(BUILD_SYSTEM)/aapt_flags.mk
|
|
|
|
|
|
|
|
|
|
ifeq ($(need_compile_res),true)
|
|
|
|
@@ -387,9 +347,16 @@ endif # LOCAL_COMPRESSED_MODULE
|
|
|
|
|
my_apk_split_configs := $(LOCAL_PACKAGE_SPLITS)
|
|
|
|
|
my_split_suffixes := $(subst $(comma),_,$(my_apk_split_configs))
|
|
|
|
|
built_apk_splits := $(foreach s,$(my_split_suffixes),$(intermediates)/package_$(s).apk)
|
|
|
|
|
installed_apk_splits := $(foreach s,$(my_split_suffixes),$(my_module_path)/$(LOCAL_MODULE)_$(s).apk)
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
$(R_file_stamp) $(my_res_package): PRIVATE_AAPT_FLAGS := $(LOCAL_AAPT_FLAGS)
|
|
|
|
|
$(R_file_stamp) $(my_res_package): PRIVATE_TARGET_AAPT_CHARACTERISTICS := $(TARGET_AAPT_CHARACTERISTICS)
|
|
|
|
|
$(R_file_stamp) $(my_res_package): PRIVATE_MANIFEST_PACKAGE_NAME := $(LOCAL_MANIFEST_PACKAGE_NAME)
|
|
|
|
|
$(R_file_stamp) $(my_res_package): PRIVATE_MANIFEST_INSTRUMENTATION_FOR := $(LOCAL_MANIFEST_INSTRUMENTATION_FOR)
|
|
|
|
|
|
|
|
|
|
###############################
|
|
|
|
|
## AAPT/AAPT2
|
|
|
|
|
|
|
|
|
|
ifdef LOCAL_USE_AAPT2
|
|
|
|
|
my_compiled_res_base_dir := $(intermediates.COMMON)/flat-res
|
|
|
|
|
ifneq (,$(renderscript_target_api))
|
|
|
|
@@ -450,6 +417,16 @@ endif
|
|
|
|
|
|
|
|
|
|
endif # LOCAL_USE_AAPT2
|
|
|
|
|
|
|
|
|
|
endif # need_compile_res
|
|
|
|
|
|
|
|
|
|
called_from_package_internal := true
|
|
|
|
|
#################################
|
|
|
|
|
include $(BUILD_SYSTEM)/java.mk
|
|
|
|
|
#################################
|
|
|
|
|
called_from_package_internal :=
|
|
|
|
|
|
|
|
|
|
ifeq ($(need_compile_res),true)
|
|
|
|
|
|
|
|
|
|
# Other modules should depend on the BUILT module if
|
|
|
|
|
# they want to use this module's R.java file.
|
|
|
|
|
$(LOCAL_BUILT_MODULE): $(R_file_stamp)
|
|
|
|
@@ -460,6 +437,42 @@ $(java_source_list_file): $(R_file_stamp)
|
|
|
|
|
|
|
|
|
|
endif # need_compile_res
|
|
|
|
|
|
|
|
|
|
LOCAL_SDK_RES_VERSION:=$(strip $(LOCAL_SDK_RES_VERSION))
|
|
|
|
|
ifeq ($(LOCAL_SDK_RES_VERSION),)
|
|
|
|
|
LOCAL_SDK_RES_VERSION:=$(LOCAL_SDK_VERSION)
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
$(LOCAL_INTERMEDIATE_TARGETS): \
|
|
|
|
|
PRIVATE_ANDROID_MANIFEST := $(full_android_manifest)
|
|
|
|
|
|
|
|
|
|
ifeq ($(LOCAL_DATA_BINDING),true)
|
|
|
|
|
data_binding_stamp := $(data_binding_intermediates)/data-binding.stamp
|
|
|
|
|
$(data_binding_stamp): PRIVATE_INTERMEDIATES := $(data_binding_intermediates)
|
|
|
|
|
$(data_binding_stamp): PRIVATE_MANIFEST := $(full_android_manifest)
|
|
|
|
|
# Generate code into $(LOCAL_INTERMEDIATE_SOURCE_DIR) so that the generated .java files
|
|
|
|
|
# will be automatically picked up by function compile-java.
|
|
|
|
|
$(data_binding_stamp): PRIVATE_SRC_OUT := $(LOCAL_INTERMEDIATE_SOURCE_DIR)/data-binding
|
|
|
|
|
$(data_binding_stamp): PRIVATE_XML_OUT := $(data_binding_intermediates)/xml
|
|
|
|
|
$(data_binding_stamp): PRIVATE_RES_OUT := $(data_binding_res_out)
|
|
|
|
|
$(data_binding_stamp): PRIVATE_RES_IN := $(data_binding_res_in)
|
|
|
|
|
$(data_binding_stamp): PRIVATE_ANNO_SRC_DIR := $(data_binding_intermediates)/anno-src
|
|
|
|
|
|
|
|
|
|
$(data_binding_stamp) : $(all_res_assets) $(full_android_manifest) \
|
|
|
|
|
$(DATA_BINDING_COMPILER)
|
|
|
|
|
@echo "Data-binding process: $@"
|
|
|
|
|
@rm -rf $(PRIVATE_INTERMEDIATES) $(PRIVATE_SRC_OUT) && \
|
|
|
|
|
mkdir -p $(PRIVATE_INTERMEDIATES) $(PRIVATE_SRC_OUT) \
|
|
|
|
|
$(PRIVATE_XML_OUT) $(PRIVATE_RES_OUT) $(PRIVATE_ANNO_SRC_DIR)
|
|
|
|
|
$(hide) $(JAVA) -classpath $(DATA_BINDING_COMPILER) android.databinding.tool.MakeCopy \
|
|
|
|
|
$(PRIVATE_MANIFEST) $(PRIVATE_SRC_OUT) $(PRIVATE_XML_OUT) $(PRIVATE_RES_OUT) $(PRIVATE_RES_IN)
|
|
|
|
|
$(hide) touch $@
|
|
|
|
|
|
|
|
|
|
# Make sure the data-binding process happens before javac and generation of R.java.
|
|
|
|
|
$(R_file_stamp): $(data_binding_stamp)
|
|
|
|
|
$(java_source_list_file): $(data_binding_stamp)
|
|
|
|
|
$(full_classes_compiled_jar): $(data_binding_stamp)
|
|
|
|
|
endif # LOCAL_DATA_BINDING
|
|
|
|
|
|
|
|
|
|
framework_res_package_export :=
|
|
|
|
|
|
|
|
|
|
ifneq ($(LOCAL_NO_STANDARD_LIBRARIES),true)
|
|
|
|
@@ -495,6 +508,14 @@ ifdef LOCAL_USE_AAPT2
|
|
|
|
|
$(my_res_package) : $(all_library_res_package_export_deps)
|
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
# These four are set above for $(R_stamp_file) and $(my_res_package), but
|
|
|
|
|
# $(LOCAL_BUILT_MODULE) is not set before java.mk, so they have to be set again
|
|
|
|
|
# here.
|
|
|
|
|
$(LOCAL_BUILT_MODULE): PRIVATE_AAPT_FLAGS := $(LOCAL_AAPT_FLAGS)
|
|
|
|
|
$(LOCAL_BUILT_MODULE): PRIVATE_TARGET_AAPT_CHARACTERISTICS := $(TARGET_AAPT_CHARACTERISTICS)
|
|
|
|
|
$(LOCAL_BUILT_MODULE): PRIVATE_MANIFEST_PACKAGE_NAME := $(LOCAL_MANIFEST_PACKAGE_NAME)
|
|
|
|
|
$(LOCAL_BUILT_MODULE): PRIVATE_MANIFEST_INSTRUMENTATION_FOR := $(LOCAL_MANIFEST_INSTRUMENTATION_FOR)
|
|
|
|
|
|
|
|
|
|
ifneq ($(full_classes_jar),)
|
|
|
|
|
$(LOCAL_BUILT_MODULE): PRIVATE_DEX_FILE := $(built_dex)
|
|
|
|
|
# Use the jarjar processed arhive as the initial package file.
|
|
|
|
@@ -661,6 +682,7 @@ $(built_apk_splits) : $(intermediates)/%.apk : $(LOCAL_BUILT_MODULE)
|
|
|
|
|
$(sign-package)
|
|
|
|
|
|
|
|
|
|
# Rules to install the splits
|
|
|
|
|
installed_apk_splits := $(foreach s,$(my_split_suffixes),$(my_module_path)/$(LOCAL_MODULE)_$(s).apk)
|
|
|
|
|
$(installed_apk_splits) : $(my_module_path)/$(LOCAL_MODULE)_%.apk : $(intermediates)/package_%.apk
|
|
|
|
|
@echo "Install: $@"
|
|
|
|
|
$(copy-file-to-new-target)
|
|
|
|
|