Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 55c81cea authored by Nicolas Geoffray's avatar Nicolas Geoffray Committed by android-build-merger
Browse files

Merge "Make privileged apps always keep uncompressed dex files." am: 3a5c65ef am: 65c8bc66

am: 4ad5bbb3

Change-Id: I669e96d79fc5dd7247ac75b6defe856ec74fe6d6
parents 1c1a6c92 4ad5bbb3
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -659,6 +659,15 @@ $(LOCAL_MODULE)-$(h_or_hc_or_t)$(my_32_64_bit_suffix) : $(my_all_targets)
endif
endif

###########################################################
# Ensure privileged applications always have LOCAL_PRIVILEGED_MODULE
###########################################################
ifndef LOCAL_PRIVILEGED_MODULE
  ifneq (,$(filter $(TARGET_OUT_APPS_PRIVILEGED)/% $(TARGET_OUT_VENDOR_APPS_PRIVILEGED)/%,$(my_module_path)))
    LOCAL_PRIVILEGED_MODULE := true
  endif
endif

###########################################################
## NOTICE files
###########################################################
+12 −0
Original line number Diff line number Diff line
@@ -2726,6 +2726,18 @@ define remove-timestamps-from-package
$(hide) $(ZIPTIME) $@
endef

# Uncompress dex files embedded in an apk.
#
define uncompress-dexs
$(hide) if (zipinfo $@ '*.dex' 2>/dev/null | grep -v ' stor ' >/dev/null) ; then \
  rm -rf $(dir $@)uncompresseddexs && mkdir $(dir $@)uncompresseddexs; \
  unzip $@ '*.dex' -d $(dir $@)uncompresseddexs && \
  zip -d $@ '*.dex' && \
  ( cd $(dir $@)uncompresseddexs && find -type f | sort | zip -D -X -0 ../$(notdir $@) -@ ) && \
  rm -rf $(dir $@)uncompresseddexs; \
  fi
endef

# Uncompress shared libraries embedded in an apk.
#
define uncompress-shared-libs
+4 −0
Original line number Diff line number Diff line
@@ -633,6 +633,10 @@ ifneq ($(BUILD_PLATFORM_ZIP),)
	@# Keep a copy of apk with classes.dex unstripped
	$(hide) cp -f $@ $(dir $@)package.dex.apk
endif  # BUILD_PLATFORM_ZIP
ifeq (true,$(LOCAL_PRIVILEGED_MODULE))
	@# No need to align, sign-package below will do it.
	$(uncompress-dexs)
endif  # LOCAL_PRIVILEGED_MODULE
ifneq (nostripping,$(LOCAL_DEX_PREOPT))
	$(call dexpreopt-remove-classes.dex,$@)
endif
+3 −0
Original line number Diff line number Diff line
@@ -374,6 +374,9 @@ endif
$(built_module) : $(my_prebuilt_src_file) | $(ZIPALIGN) $(SIGNAPK_JAR)
	$(transform-prebuilt-to-target)
	$(uncompress-shared-libs)
ifeq (true,$(LOCAL_PRIVILEGED_MODULE))
	$(uncompress-dexs)
endif  # LOCAL_PRIVILEGED_MODULE
ifdef LOCAL_DEX_PREOPT
ifneq ($(BUILD_PLATFORM_ZIP),)
	@# Keep a copy of apk with classes.dex unstripped