1 # 2 # Copyright (C) 2013 The Android Open Source Project 3 # 4 # Licensed under the Apache License, Version 2.0 (the "License"); 5 # you may not use this file except in compliance with the License. 6 # You may obtain a copy of the License at 7 # 8 # http://www.apache.org/licenses/LICENSE-2.0 9 # 10 # Unless required by applicable law or agreed to in writing, software 11 # distributed under the License is distributed on an "AS IS" BASIS, 12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 # See the License for the specific language governing permissions and 14 # limitations under the License. 15 # 16 17 # Provides a functioning ART environment without Android frameworks 18 19 ifeq ($(TARGET_CORE_JARS),) 20 $(error TARGET_CORE_JARS is empty; cannot update PRODUCT_PACKAGES variable) 21 endif 22 23 # Minimal boot classpath. This should be a subset of PRODUCT_BOOT_JARS, and equivalent to 24 # TARGET_CORE_JARS. 25 PRODUCT_PACKAGES += \ 26 $(TARGET_CORE_JARS) 27 28 # Additional mixins to the boot classpath. 29 PRODUCT_PACKAGES += \ 30 legacy-test \ 31 32 # Why are we pulling in ext, which is frameworks/base, depending on tagsoup and nist-sip? 33 PRODUCT_PACKAGES += \ 34 ext \ 35 36 # Why are we pulling in expat, which is used in frameworks, only, it seem? 37 PRODUCT_PACKAGES += \ 38 libexpat \ 39 40 # Libcore. 41 PRODUCT_PACKAGES += \ 42 libjavacore \ 43 libopenjdk \ 44 45 # Libcore ICU. TODO: Try to figure out if/why we need them explicitly. 46 PRODUCT_PACKAGES += \ 47 libicui18n \ 48 libicuuc \ 49 50 # ART. 51 PRODUCT_PACKAGES += art-runtime 52 # ART/dex helpers. 53 PRODUCT_PACKAGES += art-tools 54 55 # Certificates. 56 PRODUCT_PACKAGES += \ 57 cacerts \ 58 59 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ 60 dalvik.vm.image-dex2oat-Xms=64m \ 61 dalvik.vm.image-dex2oat-Xmx=64m \ 62 dalvik.vm.dex2oat-Xms=64m \ 63 dalvik.vm.dex2oat-Xmx=512m \ 64 ro.dalvik.vm.native.bridge=0 \ 65 dalvik.vm.usejit=true \ 66 dalvik.vm.usejitprofiles=true \ 67 dalvik.vm.dexopt.secondary=true \ 68 dalvik.vm.appimageformat=lz4 69 70 # Different dexopt types for different package update/install times. 71 # On eng builds, make "boot" reasons only extract for faster turnaround. 72 ifeq (eng,$(TARGET_BUILD_VARIANT)) 73 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ 74 pm.dexopt.first-boot=extract \ 75 pm.dexopt.boot=extract 76 else 77 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ 78 pm.dexopt.first-boot=quicken \ 79 pm.dexopt.boot=verify 80 endif 81 82 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \ 83 pm.dexopt.install=quicken \ 84 pm.dexopt.bg-dexopt=speed-profile \ 85 pm.dexopt.ab-ota=speed-profile \ 86 pm.dexopt.inactive=verify \ 87 pm.dexopt.shared=speed 88