Merge "Support transitive resource packages from Soong" into main
This commit is contained in:
commit
08d991834d
5 changed files with 24 additions and 1 deletions
|
@ -68,6 +68,8 @@ $(my_res_resources_flat) $(my_overlay_resources_flat) $(my_resources_flata) $(my
|
|||
# support for it.
|
||||
my_static_library_resources := $(foreach l, $(call reverse-list,$(LOCAL_STATIC_ANDROID_LIBRARIES) $(LOCAL_STATIC_JAVA_AAR_LIBRARIES)),\
|
||||
$(call intermediates-dir-for,JAVA_LIBRARIES,$(l),,COMMON)/package-res.apk)
|
||||
my_static_library_transitive_resource_packages_lists := $(foreach l, $(call reverse-list,$(LOCAL_STATIC_ANDROID_LIBRARIES) $(LOCAL_STATIC_JAVA_AAR_LIBRARIES)),\
|
||||
$(call intermediates-dir-for,JAVA_LIBRARIES,$(l),,COMMON)/transitive-res-packages)
|
||||
my_static_library_extra_packages := $(foreach l, $(call reverse-list,$(LOCAL_STATIC_ANDROID_LIBRARIES) $(LOCAL_STATIC_JAVA_AAR_LIBRARIES)),\
|
||||
$(call intermediates-dir-for,JAVA_LIBRARIES,$(l),,COMMON)/extra_packages)
|
||||
my_shared_library_resources := $(foreach l, $(LOCAL_SHARED_ANDROID_LIBRARIES),\
|
||||
|
@ -95,6 +97,7 @@ $(my_res_package): PRIVATE_ASSET_DIRS := $(my_asset_dirs)
|
|||
$(my_res_package): PRIVATE_JAVA_GEN_DIR := $(intermediates.COMMON)/aapt2
|
||||
$(my_res_package): PRIVATE_SRCJAR := $(my_srcjar)
|
||||
$(my_res_package): PRIVATE_STATIC_LIBRARY_EXTRA_PACKAGES := $(my_static_library_extra_packages)
|
||||
$(my_res_package): PRIVATE_STATIC_LIBRARY_TRANSITIVE_RES_PACKAGES_LISTS := $(my_static_library_transitive_resource_packages_lists)
|
||||
$(my_res_package): PRIVATE_AAPT_EXTRA_PACKAGES := $(aapt_extra_packages)
|
||||
$(my_res_package): .KATI_IMPLICIT_OUTPUTS := $(my_srcjar) $(aapt_extra_packages)
|
||||
|
||||
|
@ -117,7 +120,7 @@ ifdef proguard_options_file
|
|||
$(my_res_package): .KATI_IMPLICIT_OUTPUTS += $(proguard_options_file)
|
||||
endif
|
||||
|
||||
$(my_res_package): $(full_android_manifest) $(my_static_library_resources) $(my_shared_library_resources)
|
||||
$(my_res_package): $(full_android_manifest) $(my_static_library_resources) $(my_static_library_transitive_resource_packages_lists) $(my_shared_library_resources)
|
||||
$(my_res_package): $(my_full_asset_paths)
|
||||
$(my_res_package): $(my_res_resources_flat) $(my_overlay_resources_flat) \
|
||||
$(my_resources_flata) $(my_static_library_resources) $(my_static_library_extra_packages) \
|
||||
|
|
|
@ -298,6 +298,7 @@ LOCAL_SOONG_MODULE_TYPE :=
|
|||
LOCAL_SOONG_PROGUARD_DICT :=
|
||||
LOCAL_SOONG_PROGUARD_USAGE_ZIP :=
|
||||
LOCAL_SOONG_RESOURCE_EXPORT_PACKAGE :=
|
||||
LOCAL_SOONG_TRANSITIVE_RES_PACKAGES :=
|
||||
LOCAL_SOONG_DEVICE_RRO_DIRS :=
|
||||
LOCAL_SOONG_PRODUCT_RRO_DIRS :=
|
||||
LOCAL_SOONG_STATIC_LIBRARY_EXTRA_PACKAGES :=
|
||||
|
|
|
@ -2377,6 +2377,7 @@ rm -rf $(PRIVATE_JAVA_GEN_DIR)
|
|||
mkdir -p $(PRIVATE_JAVA_GEN_DIR)
|
||||
$(call dump-words-to-file,$(PRIVATE_RES_FLAT),$(dir $@)aapt2-flat-list)
|
||||
$(call dump-words-to-file,$(PRIVATE_OVERLAY_FLAT),$(dir $@)aapt2-flat-overlay-list)
|
||||
cat $(PRIVATE_STATIC_LIBRARY_TRANSITIVE_RES_PACKAGES_LISTS) | sort -u | tr '\n' ' ' > $(dir $@)aapt2-transitive-overlay-list
|
||||
$(hide) $(AAPT2) link -o $@ \
|
||||
$(PRIVATE_AAPT_FLAGS) \
|
||||
$(if $(PRIVATE_STATIC_LIBRARY_EXTRA_PACKAGES),$$(cat $(PRIVATE_STATIC_LIBRARY_EXTRA_PACKAGES))) \
|
||||
|
@ -2396,6 +2397,7 @@ $(hide) $(AAPT2) link -o $@ \
|
|||
$(addprefix --rename-manifest-package ,$(PRIVATE_MANIFEST_PACKAGE_NAME)) \
|
||||
$(addprefix --rename-instrumentation-target-package ,$(PRIVATE_MANIFEST_INSTRUMENTATION_FOR)) \
|
||||
-R \@$(dir $@)aapt2-flat-overlay-list \
|
||||
-R \@$(dir $@)aapt2-transitive-overlay-list \
|
||||
\@$(dir $@)aapt2-flat-list
|
||||
$(SOONG_ZIP) -o $(PRIVATE_SRCJAR) -C $(PRIVATE_JAVA_GEN_DIR) -D $(PRIVATE_JAVA_GEN_DIR)
|
||||
$(EXTRACT_JAR_PACKAGES) -i $(PRIVATE_SRCJAR) -o $(PRIVATE_AAPT_EXTRA_PACKAGES) --prefix '--extra-packages '
|
||||
|
|
|
@ -99,6 +99,17 @@ ifdef LOCAL_SOONG_RESOURCE_EXPORT_PACKAGE
|
|||
|
||||
$(call add-dependency,$(LOCAL_BUILT_MODULE),$(my_res_package))
|
||||
|
||||
my_transitive_res_packages := $(intermediates.COMMON)/transitive-res-packages
|
||||
$(my_transitive_res_packages): PRIVATE_TRANSITIVE_RES_PACKAGES := $(filter-out $(LOCAL_SOONG_RESOURCE_EXPORT_PACKAGE),$(LOCAL_SOONG_TRANSITIVE_RES_PACKAGES))
|
||||
$(my_transitive_res_packages):
|
||||
@echo Write transitive resource package list $@
|
||||
rm -f $@
|
||||
touch $@
|
||||
$(foreach f,$(PRIVATE_TRANSITIVE_RES_PACKAGES),\
|
||||
echo "$f" >> $@; )
|
||||
|
||||
$(call add-dependency,$(my_res_package),$(my_transitive_res_packages))
|
||||
|
||||
my_proguard_flags := $(intermediates.COMMON)/export_proguard_flags
|
||||
$(my_proguard_flags): $(LOCAL_SOONG_EXPORT_PROGUARD_FLAGS)
|
||||
@echo "Export proguard flags: $@"
|
||||
|
|
|
@ -127,6 +127,12 @@ framework_res_package_export := \
|
|||
endif
|
||||
endif
|
||||
|
||||
# transitive-res-packages is only populated for Soong modules for now, but needs
|
||||
# to exist so that other Make modules can depend on it. Create an empty file.
|
||||
my_transitive_res_packages := $(intermediates.COMMON)/transitive-res-packages
|
||||
$(my_transitive_res_packages):
|
||||
touch $@
|
||||
|
||||
import_proguard_flag_files := $(strip $(foreach l,$(LOCAL_STATIC_ANDROID_LIBRARIES) $(LOCAL_STATIC_JAVA_AAR_LIBRARIES),\
|
||||
$(call intermediates-dir-for,JAVA_LIBRARIES,$(l),,COMMON)/export_proguard_flags))
|
||||
$(intermediates.COMMON)/export_proguard_flags: $(import_proguard_flag_files) $(addprefix $(LOCAL_PATH)/,$(LOCAL_EXPORT_PROGUARD_FLAG_FILES))
|
||||
|
|
Loading…
Reference in a new issue