summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Desaulniers <ndesaulniers@google.com>2016-06-16 11:23:07 -0700
committerNick Desaulniers <ndesaulniers@google.com>2016-06-22 15:57:49 -0700
commit268a0ab1b2fc8e8d368663faed0c4c544e1ed8dc (patch)
treead8060d7ca7c911a53903ffa130ea654d7c38f85
parent575fc9749aff08e53da39dc267c384e6b195ddd2 (diff)
downloadfugu-268a0ab1b2fc8e8d368663faed0c4c544e1ed8dc.tar.gz
dexpreopt: dont preopt prebuilts and select apps
Preoptimizing apps pushes compile-time from first-boot to system image generation and thus improves out-of-the-box experience, at the cost of system image space. As part of disabling squashfs on the system parition, we don't preopt prebuilt apps that are likely to be updated from the Play Store. The apps listed to not be preoptimized were found by running: grep odex $ANDROID_PRODUCT_OUT/installed-files.txt which lists the size of odex files sorted from largest in size to smallest. Apps were selected based on their size and subjective importantance to remove preopt-ing Bug: 29360840 Change-Id: I74d6cde05d9efcf836992c7ea1b20cfa7ac20102
-rw-r--r--BoardConfig.mk4
-rw-r--r--device.mk26
2 files changed, 30 insertions, 0 deletions
diff --git a/BoardConfig.mk b/BoardConfig.mk
index 9a06f56..c4f7c49 100644
--- a/BoardConfig.mk
+++ b/BoardConfig.mk
@@ -155,3 +155,7 @@ USE_CLANG_PLATFORM_BUILD := true
# Recipes to generate prebuilts
-include device/intel/common/external/external.mk
+
+# Don't dex preopt prebuilt apps that will be updated from Play Store
+DONT_DEXPREOPT_PREBUILTS := true
+
diff --git a/device.mk b/device.mk
index 80a9f91..a52cf2a 100644
--- a/device.mk
+++ b/device.mk
@@ -291,3 +291,29 @@ PRODUCT_COPY_FILES += \
# Wifi country code
PRODUCT_COPY_FILES += \
device/asus/fugu/init.fugu.countrycode.sh:system/bin/init.fugu.countrycode.sh
+
+# Get rid of dex preoptimization to save space for the system.img
+# Sorted by *.odex size
+FUGU_DONT_DEXPREOPT_MODULES := \
+ NoTouchAuthDelegate \
+ ConfigUpdater \
+ SecondScreenSetup \
+ SecondScreenSetupAuthBridge \
+ TvSettings \
+ SetupWraith \
+ GooglePackageInstaller \
+ GoogleContactsSyncAdapter \
+ BugReportSender \
+ ContactsProvider \
+ PrintSpooler \
+ CalendarProvider \
+ CanvasPackageInstaller \
+ SettingsProvider \
+ ituxd \
+ StatementService \
+ ExternalStorageProvider \
+ FrameworkPackageStubs \
+ CertInstaller \
+ KeyChain \
+ UserDictionaryProvider
+$(call add-product-dex-preopt-module-config,$(FUGU_DONT_DEXPREOPT_MODULES),disable)