Brian Carlstrom | 1aeee8b | 2013-06-27 12:02:46 -0700 | [diff] [blame] | 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 | |
Igor Murashkin | cda3d10 | 2017-06-15 09:46:58 -0700 | [diff] [blame] | 19 | ifeq ($(TARGET_CORE_JARS),) |
| 20 | $(error TARGET_CORE_JARS is empty; cannot update PRODUCT_PACKAGES variable) |
| 21 | endif |
| 22 | |
Andreas Gampe | 9a3e5ac | 2016-11-17 13:54:49 -0800 | [diff] [blame] | 23 | # Minimal boot classpath. This should be a subset of PRODUCT_BOOT_JARS, and equivalent to |
| 24 | # TARGET_CORE_JARS. |
Brian Carlstrom | 1aeee8b | 2013-06-27 12:02:46 -0700 | [diff] [blame] | 25 | PRODUCT_PACKAGES += \ |
Igor Murashkin | cda3d10 | 2017-06-15 09:46:58 -0700 | [diff] [blame] | 26 | $(TARGET_CORE_JARS) |
Andreas Gampe | 9a3e5ac | 2016-11-17 13:54:49 -0800 | [diff] [blame] | 27 | |
| 28 | # Additional mixins to the boot classpath. |
| 29 | PRODUCT_PACKAGES += \ |
Paul Duffin | a840752 | 2017-11-30 17:13:36 +0000 | [diff] [blame] | 30 | android.test.base \ |
Andreas Gampe | 9a3e5ac | 2016-11-17 13:54:49 -0800 | [diff] [blame] | 31 | |
| 32 | # Why are we pulling in ext, which is frameworks/base, depending on tagsoup and nist-sip? |
| 33 | PRODUCT_PACKAGES += \ |
Ying Wang | d54520a | 2014-12-08 14:46:29 -0800 | [diff] [blame] | 34 | ext \ |
Andreas Gampe | 9a3e5ac | 2016-11-17 13:54:49 -0800 | [diff] [blame] | 35 | |
Martin Stjernholm | 4cb8061 | 2019-07-05 22:39:19 +0100 | [diff] [blame^] | 36 | # Runtime (Bionic) APEX module. |
Roland Levillain | fbf4dbe | 2019-01-14 15:23:48 +0000 | [diff] [blame] | 37 | PRODUCT_PACKAGES += com.android.runtime |
Martin Stjernholm | 4cb8061 | 2019-07-05 22:39:19 +0100 | [diff] [blame^] | 38 | |
| 39 | # ART APEX module. |
| 40 | PRODUCT_PACKAGES += com.android.art |
| 41 | PRODUCT_HOST_PACKAGES += com.android.art |
Andreas Gampe | 9a3e5ac | 2016-11-17 13:54:49 -0800 | [diff] [blame] | 42 | |
| 43 | # Certificates. |
| 44 | PRODUCT_PACKAGES += \ |
| 45 | cacerts \ |
| 46 | |
Mathew Inwood | a2a7baa | 2018-02-20 10:56:48 +0000 | [diff] [blame] | 47 | PRODUCT_PACKAGES += \ |
| 48 | hiddenapi-package-whitelist.xml \ |
| 49 | |
Jaekyun Seok | 5fb6a3e | 2017-11-03 15:33:10 +0900 | [diff] [blame] | 50 | PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ |
Brian Carlstrom | cffe289 | 2014-07-08 10:35:29 -0700 | [diff] [blame] | 51 | dalvik.vm.image-dex2oat-Xms=64m \ |
| 52 | dalvik.vm.image-dex2oat-Xmx=64m \ |
| 53 | dalvik.vm.dex2oat-Xms=64m \ |
| 54 | dalvik.vm.dex2oat-Xmx=512m \ |
Nicolas Geoffray | 56a84e1 | 2015-11-05 16:49:49 +0000 | [diff] [blame] | 55 | dalvik.vm.usejit=true \ |
Mathieu Chartier | b7a044e | 2016-01-28 15:58:02 -0800 | [diff] [blame] | 56 | dalvik.vm.usejitprofiles=true \ |
Calin Juravle | dc308c1 | 2017-02-06 19:03:05 -0800 | [diff] [blame] | 57 | dalvik.vm.dexopt.secondary=true \ |
Mathieu Chartier | b7a044e | 2016-01-28 15:58:02 -0800 | [diff] [blame] | 58 | dalvik.vm.appimageformat=lz4 |
Nicolas Geoffray | 10030bc | 2017-04-25 12:25:33 +0100 | [diff] [blame] | 59 | |
Lev Rumyantsev | 7e9f49c | 2019-04-20 22:54:05 -0700 | [diff] [blame] | 60 | PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ |
Lev Rumyantsev | be80acf | 2017-08-09 10:57:33 -0700 | [diff] [blame] | 61 | ro.dalvik.vm.native.bridge=0 |
| 62 | |
Nicolas Geoffray | 10030bc | 2017-04-25 12:25:33 +0100 | [diff] [blame] | 63 | # Different dexopt types for different package update/install times. |
| 64 | # On eng builds, make "boot" reasons only extract for faster turnaround. |
| 65 | ifeq (eng,$(TARGET_BUILD_VARIANT)) |
Jaekyun Seok | 5fb6a3e | 2017-11-03 15:33:10 +0900 | [diff] [blame] | 66 | PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ |
Nicolas Geoffray | 10030bc | 2017-04-25 12:25:33 +0100 | [diff] [blame] | 67 | pm.dexopt.first-boot=extract \ |
| 68 | pm.dexopt.boot=extract |
| 69 | else |
Jaekyun Seok | 5fb6a3e | 2017-11-03 15:33:10 +0900 | [diff] [blame] | 70 | PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ |
Nicolas Geoffray | 10030bc | 2017-04-25 12:25:33 +0100 | [diff] [blame] | 71 | pm.dexopt.first-boot=quicken \ |
| 72 | pm.dexopt.boot=verify |
| 73 | endif |
| 74 | |
Calin Juravle | b5dadc3 | 2018-03-28 18:31:51 -0700 | [diff] [blame] | 75 | # The install filter is speed-profile in order to enable the use of |
| 76 | # profiles from the dex metadata files. Note that if a profile is not provided |
| 77 | # or if it is empty speed-profile is equivalent to (quicken + empty app image). |
Jaekyun Seok | 5fb6a3e | 2017-11-03 15:33:10 +0900 | [diff] [blame] | 78 | PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ |
Calin Juravle | b5dadc3 | 2018-03-28 18:31:51 -0700 | [diff] [blame] | 79 | pm.dexopt.install=speed-profile \ |
Nicolas Geoffray | 10030bc | 2017-04-25 12:25:33 +0100 | [diff] [blame] | 80 | pm.dexopt.bg-dexopt=speed-profile \ |
Shubham Ajmera | c5966a3 | 2017-06-15 13:49:10 -0700 | [diff] [blame] | 81 | pm.dexopt.ab-ota=speed-profile \ |
Calin Juravle | 89836f1 | 2017-09-18 13:05:24 -0700 | [diff] [blame] | 82 | pm.dexopt.inactive=verify \ |
| 83 | pm.dexopt.shared=speed |
Andreas Gampe | 0f3e16a | 2017-11-03 14:37:32 -0700 | [diff] [blame] | 84 | |
Mathieu Chartier | cf5a8b1 | 2019-01-25 09:16:28 -0800 | [diff] [blame] | 85 | # Enable resolution of startup const strings. |
| 86 | PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ |
| 87 | dalvik.vm.dex2oat-resolve-startup-strings=true |
| 88 | |
Mathieu Chartier | 6cbc389 | 2019-04-08 13:32:06 -0700 | [diff] [blame] | 89 | # Specify default block size of 512K to enable parallel image decompression. |
| 90 | PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ |
| 91 | dalvik.vm.dex2oat-max-image-block-size=524288 |
| 92 | |
Andreas Gampe | 0f3e16a | 2017-11-03 14:37:32 -0700 | [diff] [blame] | 93 | # Enable minidebuginfo generation unless overridden. |
Jaekyun Seok | 4022ec9 | 2017-11-13 12:08:40 +0900 | [diff] [blame] | 94 | PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ |
David Srbecky | 99ae76e | 2019-01-08 17:02:14 +0000 | [diff] [blame] | 95 | dalvik.vm.minidebuginfo=true \ |
Andreas Gampe | 0f3e16a | 2017-11-03 14:37:32 -0700 | [diff] [blame] | 96 | dalvik.vm.dex2oat-minidebuginfo=true |
Mathieu Chartier | ef66a8b | 2019-01-29 14:58:28 -0800 | [diff] [blame] | 97 | |
| 98 | # Disable iorapd by default |
| 99 | PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \ |
Igor Murashkin | c47dd05 | 2019-04-25 15:55:35 -0700 | [diff] [blame] | 100 | ro.iorapd.enable=true |
Calin Juravle | 6bfdcda | 2019-04-16 13:05:42 -0700 | [diff] [blame] | 101 | |
Calin Juravle | cdff6b1 | 2019-05-01 15:34:47 -0700 | [diff] [blame] | 102 | PRODUCT_USES_DEFAULT_ART_CONFIG := true |