Add dependencies on java resources when packaging APK without classes

When an APK is packaged without any classes.dex files the resources
are packaged directly, and so the packaging rule must depend on the
resources.

Fixes: 177295654
Test: prebuilts/build-tools/linux-x86/bin/ninja -f out/combined-aosp_cf_x86_64_phone.ninja -t query out/target/product/vsoc_x86_64/obj/APPS/CtsSplitApp_x86_64_intermediates/package.apk
Change-Id: I786e71439f11e7bd5e20e010b66fbf529eb57a5a
This commit is contained in:
Colin Cross 2021-01-12 15:08:08 -08:00
parent 17652e8981
commit 9644ec811f
1 changed files with 6 additions and 0 deletions

View File

@ -552,6 +552,10 @@ endif
ifeq (true, $(LOCAL_UNCOMPRESS_DEX)) ifeq (true, $(LOCAL_UNCOMPRESS_DEX))
$(LOCAL_BUILT_MODULE) : $(ZIP2ZIP) $(LOCAL_BUILT_MODULE) : $(ZIP2ZIP)
endif endif
ifeq ($(full_classes_jar),)
# We don't build jar, need to add the Java resources here.
$(LOCAL_BUILT_MODULE): $(java_resource_sources)
endif
$(LOCAL_BUILT_MODULE): PRIVATE_USE_EMBEDDED_NATIVE_LIBS := $(LOCAL_USE_EMBEDDED_NATIVE_LIBS) $(LOCAL_BUILT_MODULE): PRIVATE_USE_EMBEDDED_NATIVE_LIBS := $(LOCAL_USE_EMBEDDED_NATIVE_LIBS)
$(LOCAL_BUILT_MODULE): $(LOCAL_BUILT_MODULE):
@echo "target Package: $(PRIVATE_MODULE) ($@)" @echo "target Package: $(PRIVATE_MODULE) ($@)"
@ -603,6 +607,8 @@ ifneq ($(full_classes_jar),)
else else
$(my_bundle_module): PRIVATE_DEX_FILE := $(my_bundle_module): PRIVATE_DEX_FILE :=
$(my_bundle_module): PRIVATE_SOURCE_ARCHIVE := $(my_bundle_module): PRIVATE_SOURCE_ARCHIVE :=
# We don't build jar, need to add the Java resources here.
$(my_bundle_module): $(java_resource_sources)
endif # full_classes_jar endif # full_classes_jar
$(my_bundle_module): $(MERGE_ZIPS) $(SOONG_ZIP) $(ZIP2ZIP) $(my_bundle_module): $(MERGE_ZIPS) $(SOONG_ZIP) $(ZIP2ZIP)