Merge "Extract prebuilt APKs from zip files" into nyc-mr1-dev

This commit is contained in:
TreeHugger Robot
2016-06-29 20:25:42 +00:00
committed by Android (Google) Code Review
2 changed files with 22 additions and 0 deletions

View File

@@ -204,6 +204,8 @@ LOCAL_SHARED_ANDROID_LIBRARIES:=
# Used to replace the installed file of a presigned prebuilt apk in PDK fusion build, # Used to replace the installed file of a presigned prebuilt apk in PDK fusion build,
# to avoid installing the presigned apks with classes.dex unstripped. # to avoid installing the presigned apks with classes.dex unstripped.
LOCAL_REPLACE_PREBUILT_APK_INSTALLED:= LOCAL_REPLACE_PREBUILT_APK_INSTALLED:=
LOCAL_EXTRACT_APK:=
LOCAL_EXTRACT_DPI_APK:=
# arch specific variables # arch specific variables
LOCAL_SRC_FILES_$(TARGET_ARCH):= LOCAL_SRC_FILES_$(TARGET_ARCH):=

View File

@@ -152,6 +152,8 @@ endif # my_strip_module not true
ifeq ($(LOCAL_MODULE_CLASS),APPS) ifeq ($(LOCAL_MODULE_CLASS),APPS)
PACKAGES.$(LOCAL_MODULE).OVERRIDES := $(strip $(LOCAL_OVERRIDES_PACKAGES)) PACKAGES.$(LOCAL_MODULE).OVERRIDES := $(strip $(LOCAL_OVERRIDES_PACKAGES))
my_extract_apk := $(strip $(LOCAL_EXTRACT_APK))
# Select dpi-specific source # Select dpi-specific source
ifdef LOCAL_DPI_VARIANTS ifdef LOCAL_DPI_VARIANTS
my_dpi := $(firstword $(filter $(LOCAL_DPI_VARIANTS),$(PRODUCT_AAPT_PREF_CONFIG) $(PRODUCT_AAPT_PREBUILT_DPI))) my_dpi := $(firstword $(filter $(LOCAL_DPI_VARIANTS),$(PRODUCT_AAPT_PREF_CONFIG) $(PRODUCT_AAPT_PREBUILT_DPI)))
@@ -162,9 +164,27 @@ else
my_prebuilt_dpi_file_stem := $(LOCAL_MODULE)_%.apk my_prebuilt_dpi_file_stem := $(LOCAL_MODULE)_%.apk
endif endif
my_prebuilt_src_file := $(dir $(my_prebuilt_src_file))$(subst %,$(my_dpi),$(my_prebuilt_dpi_file_stem)) my_prebuilt_src_file := $(dir $(my_prebuilt_src_file))$(subst %,$(my_dpi),$(my_prebuilt_dpi_file_stem))
ifneq ($(strip $(LOCAL_EXTRACT_DPI_APK)),)
my_extract_apk := $(subst %,$(my_dpi),$(LOCAL_EXTRACT_DPI_APK))
endif # LOCAL_EXTRACT_DPI_APK
endif # my_dpi endif # my_dpi
endif # LOCAL_DPI_VARIANTS endif # LOCAL_DPI_VARIANTS
ifdef my_extract_apk
my_extracted_apk := $(intermediates)/extracted.apk
$(my_extracted_apk): PRIVATE_EXTRACT := $(my_extract_apk)
$(my_extracted_apk): $(my_prebuilt_src_file)
@echo Extract APK: $@
$(hide) mkdir -p $(dir $@) && rm -f $@
$(hide) unzip -p $< $(PRIVATE_EXTRACT) >$@
my_prebuilt_src_file := $(my_extracted_apk)
my_extracted_apk :=
my_extract_apk :=
endif
rs_compatibility_jni_libs := rs_compatibility_jni_libs :=
include $(BUILD_SYSTEM)/install_jni_libs.mk include $(BUILD_SYSTEM)/install_jni_libs.mk