blob: 731a450292a74c2b5a4a9597190a3d6d6e5c71d0 [file] [log] [blame]
Anton Hanssoncf27a3d2018-06-27 18:25:33 +01001#
2# Copyright (C) 2018 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
Anton Hansson889018d2018-09-26 16:23:02 +010017# This makefile is the basis of a generic system image for a handheld device.
Anton Hanssoncac1fc82018-07-10 17:25:52 +010018$(call inherit-product, $(SRC_TARGET_DIR)/product/handheld_system.mk)
Anton Hansson889018d2018-09-26 16:23:02 +010019$(call inherit-product, $(SRC_TARGET_DIR)/product/telephony_system.mk)
Anton Hanssonc0042182019-01-04 13:11:55 +000020$(call inherit-product, $(SRC_TARGET_DIR)/product/languages_default.mk)
Anton Hansson0cb36d72019-01-07 14:36:12 +000021# Add adb keys to debuggable AOSP builds (if they exist)
22$(call inherit-product-if-exists, vendor/google/security/adb/vendor_key.mk)
Anton Hanssoncf27a3d2018-06-27 18:25:33 +010023
Dario Freni99f5e402019-12-06 15:47:23 +000024# Enable updating of APEXes
25$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk)
26
Anton Hanssonbfa43382018-09-27 13:48:17 +010027# Shared java libs
28PRODUCT_PACKAGES += \
29 com.android.nfc_extras \
30
Anton Hansson017e68e2018-09-27 11:57:08 +010031# Applications
32PRODUCT_PACKAGES += \
Anton Hansson017e68e2018-09-27 11:57:08 +010033 LiveWallpapersPicker \
34 PartnerBookmarksProvider \
Anton Hanssonda02e862018-10-16 17:17:36 +010035 PresencePolling \
Anton Hansson017e68e2018-09-27 11:57:08 +010036 RcsService \
Anton Hansson017e68e2018-09-27 11:57:08 +010037 Stk \
Anton Hanssonda77c522019-01-03 16:48:55 +000038 Tag \
Anton Hanssoncac5bff2018-11-06 10:58:44 +000039 TimeZoneUpdater \
Anton Hansson017e68e2018-09-27 11:57:08 +010040
Anton Hanssondeec2802018-09-27 11:07:38 +010041# OTA support
Anton Hansson33611b12018-08-21 16:17:55 +010042PRODUCT_PACKAGES += \
Anton Hansson91fddbb2019-01-25 11:07:15 +000043 recovery-refresh \
Anton Hansson33611b12018-08-21 16:17:55 +010044 update_engine \
45 update_verifier \
46
Anton Hansson2df4bce2018-09-28 15:18:53 +010047# Wrapped net utils for /vendor access.
Anton Hansson88798402018-11-13 15:19:34 +000048PRODUCT_PACKAGES += netutils-wrapper-1.0
Anton Hansson2df4bce2018-09-28 15:18:53 +010049
Anton Hanssonaa236882018-10-16 17:34:33 +010050# Charger images
Anton Hansson88798402018-11-13 15:19:34 +000051PRODUCT_PACKAGES += charger_res_images
Anton Hanssonaa236882018-10-16 17:34:33 +010052
Anton Hanssondeec2802018-09-27 11:07:38 +010053# system_other support
54PRODUCT_PACKAGES += \
55 cppreopts.sh \
56 otapreopt_script \
57
Anton Hanssonc9410072018-09-27 15:43:22 +010058# Bluetooth libraries
59PRODUCT_PACKAGES += \
60 audio.a2dp.default \
61 audio.hearing_aid.default \
62
Anton Hansson8af128d2018-11-06 17:29:32 +000063# For ringtones that rely on forward lock encryption
64PRODUCT_PACKAGES += libfwdlockengine
65
Steven Morelandbf4fd542019-10-08 09:28:30 -070066# System libraries commonly depended on by things on the system_ext or product partitions.
67# These lists will be pruned periodically.
Anton Hansson6d8a1792018-11-20 13:33:27 +000068PRODUCT_PACKAGES += \
Anton Hansson1f6e0242018-11-26 16:42:57 +000069 android.hardware.biometrics.fingerprint@2.1 \
Anton Hansson6d8a1792018-11-20 13:33:27 +000070 android.hardware.radio@1.0 \
71 android.hardware.radio@1.1 \
72 android.hardware.radio@1.2 \
Justin Yunbfe4a1c2019-08-26 17:09:27 +090073 android.hardware.radio@1.3 \
74 android.hardware.radio@1.4 \
Anton Hansson6d8a1792018-11-20 13:33:27 +000075 android.hardware.radio.config@1.0 \
76 android.hardware.radio.deprecated@1.0 \
77 android.hardware.secure_element@1.0 \
Ahmed ElArabawy69e62af2019-01-04 13:39:20 -080078 android.hardware.wifi@1.0 \
Anton Hansson6d8a1792018-11-20 13:33:27 +000079 libaudio-resampler \
Mikhail Naganov4fc7e412019-10-16 10:06:50 -070080 libaudiohal \
Anton Hansson6f964f52019-04-11 17:00:24 +010081 libdrm \
Anton Hansson6d8a1792018-11-20 13:33:27 +000082 liblogwrap \
83 liblz4 \
84 libminui \
Anton Hansson1f6e0242018-11-26 16:42:57 +000085 libnl \
Anton Hansson6d8a1792018-11-20 13:33:27 +000086 libprotobuf-cpp-full \
Anton Hansson6d8a1792018-11-20 13:33:27 +000087
Steven Morelandbf4fd542019-10-08 09:28:30 -070088# These libraries are empty and have been combined into libhidlbase, but are still depended
89# on by things off /system.
90# TODO(b/135686713): remove these
91PRODUCT_PACKAGES += \
92 libhidltransport \
93 libhwbinder \
94
Anton Hansson28e0f032018-10-17 09:08:27 +010095PRODUCT_PACKAGES_DEBUG += \
Anton Hansson36c5d0d2018-10-16 16:15:39 +010096 avbctl \
97 bootctl \
Anton Hansson36c5d0d2018-10-16 16:15:39 +010098 tinycap \
Howard Chen2f6bb932020-05-20 15:06:20 +080099 tinyhostless \
Anton Hansson36c5d0d2018-10-16 16:15:39 +0100100 tinymix \
101 tinypcminfo \
Howard Chen2f6bb932020-05-20 15:06:20 +0800102 tinyplay \
Anton Hansson36c5d0d2018-10-16 16:15:39 +0100103 update_engine_client \
104
Dan Willemsen3d05a082019-02-22 23:06:03 +0000105PRODUCT_HOST_PACKAGES += \
106 tinyplay
107
Hongguang Chen370a65b2020-08-11 10:20:48 -0700108# Enable configurable audio policy
109PRODUCT_PACKAGES += \
110 libaudiopolicyengineconfigurable \
111 libpolicy-subsystem
112
Justin Yunc0b883f2019-10-23 12:54:09 +0900113# Include all zygote init scripts. "ro.zygote" will select one of them.
114PRODUCT_COPY_FILES += \
Tom Cherry89eea962019-11-04 10:41:51 -0800115 system/core/rootdir/init.zygote32.rc:system/etc/init/hw/init.zygote32.rc \
116 system/core/rootdir/init.zygote64.rc:system/etc/init/hw/init.zygote64.rc \
Tom Cherry89eea962019-11-04 10:41:51 -0800117 system/core/rootdir/init.zygote64_32.rc:system/etc/init/hw/init.zygote64_32.rc \
Justin Yunc0b883f2019-10-23 12:54:09 +0900118
SzuWei Lind7ae1bc2018-08-08 13:22:36 +0800119# Enable dynamic partition size
120PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
121
Yo Chiang33b088d2019-09-26 17:29:18 +0800122PRODUCT_ENFORCE_RRO_TARGETS := *
123
Jeongik Chad99e77d2020-03-09 12:31:23 +0900124# TODO(b/150820813) Settings depends on static overlay, remove this after eliminating the dependency.
125PRODUCT_ENFORCE_RRO_EXEMPTED_TARGETS := Settings
126
JaeMan20cdc902020-08-11 02:37:01 +0000127PRODUCT_NAME := generic_system
Anton Hanssoncf27a3d2018-06-27 18:25:33 +0100128PRODUCT_BRAND := generic
Anton Hanssoncf27a3d2018-06-27 18:25:33 +0100129
Yo Chiang96949d32019-12-15 22:11:36 +0800130# Define /system partition-specific product properties to identify that /system
JaeMan20cdc902020-08-11 02:37:01 +0000131# partition is generic_system.
Yo Chiang96949d32019-12-15 22:11:36 +0800132PRODUCT_SYSTEM_NAME := mainline
133PRODUCT_SYSTEM_BRAND := Android
134PRODUCT_SYSTEM_MANUFACTURER := Android
135PRODUCT_SYSTEM_MODEL := mainline
136PRODUCT_SYSTEM_DEVICE := generic
137
Colin Crossc3ad8042020-06-11 11:25:05 -0700138_base_mk_allowed_list :=
Anton Hanssoncf27a3d2018-06-27 18:25:33 +0100139
Colin Crossc3ad8042020-06-11 11:25:05 -0700140_my_allowed_list := $(_base_mk_allowed_list)
Anton Hanssoncf27a3d2018-06-27 18:25:33 +0100141
Anton Hanssonb65a5ba2018-10-18 13:40:22 +0100142# For mainline, system.img should be mounted at /, so we include ROOT here.
Anton Hansson173b5e72018-07-02 15:01:35 +0100143_my_paths := \
Anton Hanssondcb5ef12018-10-15 11:35:15 +0100144 $(TARGET_COPY_OUT_ROOT)/ \
145 $(TARGET_COPY_OUT_SYSTEM)/ \
Anton Hansson173b5e72018-07-02 15:01:35 +0100146
Colin Crossc3ad8042020-06-11 11:25:05 -0700147$(call require-artifacts-in-path, $(_my_paths), $(_my_allowed_list))