blob: 238b5e396e11a3e43bf05f0602a53c1050db5fc7 [file] [log] [blame]
Brian Carlstrom1aeee8b2013-06-27 12:02:46 -07001#
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 Murashkincda3d102017-06-15 09:46:58 -070019ifeq ($(TARGET_CORE_JARS),)
20$(error TARGET_CORE_JARS is empty; cannot update PRODUCT_PACKAGES variable)
21endif
22
Andreas Gampe9a3e5ac2016-11-17 13:54:49 -080023# Minimal boot classpath. This should be a subset of PRODUCT_BOOT_JARS, and equivalent to
24# TARGET_CORE_JARS.
Brian Carlstrom1aeee8b2013-06-27 12:02:46 -070025PRODUCT_PACKAGES += \
Igor Murashkincda3d102017-06-15 09:46:58 -070026 $(TARGET_CORE_JARS)
Andreas Gampe9a3e5ac2016-11-17 13:54:49 -080027
28# Additional mixins to the boot classpath.
29PRODUCT_PACKAGES += \
Paul Duffina8407522017-11-30 17:13:36 +000030 android.test.base \
Andreas Gampe9a3e5ac2016-11-17 13:54:49 -080031
32# Why are we pulling in ext, which is frameworks/base, depending on tagsoup and nist-sip?
33PRODUCT_PACKAGES += \
Ying Wangd54520a2014-12-08 14:46:29 -080034 ext \
Andreas Gampe9a3e5ac2016-11-17 13:54:49 -080035
Martin Stjernholm4cb80612019-07-05 22:39:19 +010036# Runtime (Bionic) APEX module.
Roland Levillainfbf4dbe2019-01-14 15:23:48 +000037PRODUCT_PACKAGES += com.android.runtime
Martin Stjernholm4cb80612019-07-05 22:39:19 +010038
39# ART APEX module.
40PRODUCT_PACKAGES += com.android.art
41PRODUCT_HOST_PACKAGES += com.android.art
Andreas Gampe9a3e5ac2016-11-17 13:54:49 -080042
43# Certificates.
44PRODUCT_PACKAGES += \
45 cacerts \
46
Mathew Inwooda2a7baa2018-02-20 10:56:48 +000047PRODUCT_PACKAGES += \
48 hiddenapi-package-whitelist.xml \
49
Jaekyun Seok5fb6a3e2017-11-03 15:33:10 +090050PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
Brian Carlstromcffe2892014-07-08 10:35:29 -070051 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 Geoffray56a84e12015-11-05 16:49:49 +000055 dalvik.vm.usejit=true \
Mathieu Chartierb7a044e2016-01-28 15:58:02 -080056 dalvik.vm.usejitprofiles=true \
Calin Juravledc308c12017-02-06 19:03:05 -080057 dalvik.vm.dexopt.secondary=true \
Mathieu Chartierb7a044e2016-01-28 15:58:02 -080058 dalvik.vm.appimageformat=lz4
Nicolas Geoffray10030bc2017-04-25 12:25:33 +010059
Lev Rumyantsev7e9f49c2019-04-20 22:54:05 -070060PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
Lev Rumyantsevbe80acf2017-08-09 10:57:33 -070061 ro.dalvik.vm.native.bridge=0
62
Nicolas Geoffray10030bc2017-04-25 12:25:33 +010063# Different dexopt types for different package update/install times.
64# On eng builds, make "boot" reasons only extract for faster turnaround.
65ifeq (eng,$(TARGET_BUILD_VARIANT))
Jaekyun Seok5fb6a3e2017-11-03 15:33:10 +090066 PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
Nicolas Geoffray10030bc2017-04-25 12:25:33 +010067 pm.dexopt.first-boot=extract \
68 pm.dexopt.boot=extract
69else
Jaekyun Seok5fb6a3e2017-11-03 15:33:10 +090070 PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
Nicolas Geoffray10030bc2017-04-25 12:25:33 +010071 pm.dexopt.first-boot=quicken \
72 pm.dexopt.boot=verify
73endif
74
Calin Juravleb5dadc32018-03-28 18:31:51 -070075# 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 Seok5fb6a3e2017-11-03 15:33:10 +090078PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
Calin Juravleb5dadc32018-03-28 18:31:51 -070079 pm.dexopt.install=speed-profile \
Nicolas Geoffray10030bc2017-04-25 12:25:33 +010080 pm.dexopt.bg-dexopt=speed-profile \
Shubham Ajmerac5966a32017-06-15 13:49:10 -070081 pm.dexopt.ab-ota=speed-profile \
Calin Juravle89836f12017-09-18 13:05:24 -070082 pm.dexopt.inactive=verify \
83 pm.dexopt.shared=speed
Andreas Gampe0f3e16a2017-11-03 14:37:32 -070084
Mathieu Chartiercf5a8b12019-01-25 09:16:28 -080085# Enable resolution of startup const strings.
86PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
87 dalvik.vm.dex2oat-resolve-startup-strings=true
88
Mathieu Chartier6cbc3892019-04-08 13:32:06 -070089# Specify default block size of 512K to enable parallel image decompression.
90PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
91 dalvik.vm.dex2oat-max-image-block-size=524288
92
Andreas Gampe0f3e16a2017-11-03 14:37:32 -070093# Enable minidebuginfo generation unless overridden.
Jaekyun Seok4022ec92017-11-13 12:08:40 +090094PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
David Srbecky99ae76e2019-01-08 17:02:14 +000095 dalvik.vm.minidebuginfo=true \
Andreas Gampe0f3e16a2017-11-03 14:37:32 -070096 dalvik.vm.dex2oat-minidebuginfo=true
Mathieu Chartieref66a8b2019-01-29 14:58:28 -080097
98# Disable iorapd by default
99PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
Igor Murashkinc47dd052019-04-25 15:55:35 -0700100 ro.iorapd.enable=true
Calin Juravle6bfdcda2019-04-16 13:05:42 -0700101
Calin Juravlecdff6b12019-05-01 15:34:47 -0700102PRODUCT_USES_DEFAULT_ART_CONFIG := true