exynos9610: Enforce RRO on framework-res
[GitHub/moto-9609/android_device_motorola_exynos9610-common.git] / common.mk
1 #
2 # Copyright (C) 2020 The LineageOS 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 COMMON_PATH := device/motorola/exynos9610-common
18
19 $(call inherit-product, $(SRC_TARGET_DIR)/product/product_launched_with_p.mk)
20
21 # Get non-open-source specific aspects
22 $(call inherit-product-if-exists, vendor/motorola/exynos9610-common/exynos9610-common-vendor.mk)
23
24 DEVICE_PACKAGE_OVERLAYS += $(COMMON_PATH)/overlay
25
26 # RRO (Runtime Resource Overlay)
27 PRODUCT_ENFORCE_RRO_TARGETS := \
28 framework-res
29
30 # A/B
31 AB_OTA_UPDATER := true
32
33 AB_OTA_PARTITIONS += \
34 boot \
35 dtbo \
36 system \
37 vbmeta \
38 vendor
39
40 AB_OTA_POSTINSTALL_CONFIG += \
41 RUN_POSTINSTALL_system=true \
42 POSTINSTALL_PATH_system=system/bin/otapreopt_script \
43 FILESYSTEM_TYPE_system=ext4 \
44 POSTINSTALL_OPTIONAL_system=true
45
46
47 # Audio
48 PRODUCT_PACKAGES += \
49 android.hardware.audio.effect@4.0-impl \
50 android.hardware.audio@2.0-service \
51 android.hardware.audio@4.0-impl \
52 android.hardware.soundtrigger@2.0-impl \
53 audio.r_submix.default \
54 audio.usb.default \
55 libtinycompress \
56 libaudioroute \
57 libgui_vendor
58
59 PRODUCT_COPY_FILES += \
60 frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
61 $(COMMON_PATH)/configs/audio/aov_ec_mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/aov_ec_mixer_paths.xml \
62 $(COMMON_PATH)/configs/audio/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \
63 $(COMMON_PATH)/configs/audio/audio_ext_spkr.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_ext_spkr.conf \
64 $(COMMON_PATH)/configs/audio/audio_platform_info.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_platform_info.xml \
65 $(COMMON_PATH)/configs/audio/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \
66 $(COMMON_PATH)/configs/audio/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
67 $(COMMON_PATH)/configs/audio/mixer_paths.retin.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.retin.xml \
68 $(COMMON_PATH)/configs/audio/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \
69 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
70 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \
71 frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml
72
73 # Update engine
74 PRODUCT_PACKAGES += \
75 update_engine \
76 update_engine_sideload \
77 update_verifier
78
79 PRODUCT_PACKAGES += \
80 otapreopt_script
81
82 # Bluetooth
83 PRODUCT_COPY_FILES += \
84 hardware/samsung_slsi/libbt/conf/bt_did.conf:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth/bt_did.conf
85
86 PRODUCT_PACKAGES += \
87 android.hardware.bluetooth@1.0-impl \
88 android.hardware.bluetooth@1.0-service \
89 libbt-vendor
90
91 # Boot animation
92 TARGET_BOOTANIMATION_PRELOAD := true
93 TARGET_BOOTANIMATION_TEXTURE_CACHE := true
94 TARGET_SCREEN_HEIGHT := 2520
95 TARGET_SCREEN_WIDTH := 1080
96
97 # bootctrl
98 PRODUCT_PACKAGES += \
99 android.hardware.boot@1.0 \
100 android.hardware.boot@1.0-service \
101 android.hardware.boot@1.0-impl.exynos9610 \
102 android.hardware.boot@1.0-impl.exynos9610.recovery
103
104 # camera
105 PRODUCT_PACKAGES += \
106 android.hardware.camera.provider@2.4-impl \
107 android.hardware.camera.provider@2.4-service \
108 libsensorndkbridge
109
110 # configstore
111 PRODUCT_PACKAGES += \
112 android.hardware.configstore@1.1-service
113
114
115 # Display
116 PRODUCT_PACKAGES += \
117 android.hardware.graphics.allocator@2.0-impl \
118 android.hardware.graphics.allocator@2.0-service \
119 android.hardware.graphics.composer@2.2-service \
120 android.hardware.graphics.mapper@2.0-impl \
121
122 # DRM
123 PRODUCT_PACKAGES += \
124 android.hardware.drm@1.0-impl \
125 android.hardware.drm@1.0-service \
126 android.hardware.drm@1.2-service.clearkey
127
128 # Fingerprint Gestures
129 PRODUCT_COPY_FILES += \
130 $(COMMON_PATH)/configs/keylayout/uinput-egis.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/uinput-egis.kl \
131 $(COMMON_PATH)/configs/idc/uinput-egis.idc:$(TARGET_COPY_OUT_VENDOR)/usr/idc/uinput-egis.idc
132
133 # FM radio
134 PRODUCT_PACKAGES += \
135 FMRadio \
136 libfmjni
137
138 # Gatekeeper
139 PRODUCT_PACKAGES += \
140 android.hardware.gatekeeper@1.0-impl \
141 android.hardware.gatekeeper@1.0-service
142
143 # GPS
144 PRODUCT_COPY_FILES += \
145 $(COMMON_PATH)/configs/gps/gps.cfg:$(TARGET_COPY_OUT_VENDOR)/etc/gnss/gps.cfg
146
147
148 # Graphics
149 # Device uses high-density artwork where available
150 PRODUCT_AAPT_CONFIG := xlarge
151 PRODUCT_AAPT_PREF_CONFIG := xxxhdpi
152 # A list of dpis to select prebuilt apk, in precedence order.
153 PRODUCT_AAPT_PREBUILT_DPI := xxxhdpi xxhdpi xhdpi hdpi
154
155 # Health
156 PRODUCT_PACKAGES += \
157 android.hardware.health@2.0-service
158
159 # HotwordEnrollement
160 PRODUCT_COPY_FILES += \
161 $(COMMON_PATH)/configs/privapp-permissions-hotword.xml:system/etc/permissions/privapp-permissions-hotword.xml
162
163 # init
164 PRODUCT_COPY_FILES += \
165 $(COMMON_PATH)/configs/init/carrier/init.default.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/carrier/init.default.rc \
166 $(COMMON_PATH)/configs/init/carrier/init.retin.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/carrier/init.retin.rc \
167 $(COMMON_PATH)/configs/init/hw/init.mmi.overlay.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.mmi.overlay.rc \
168 $(COMMON_PATH)/configs/init/init.ets.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.ets.rc \
169 $(COMMON_PATH)/configs/init/init.exynos.sensorhub.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.exynos.sensorhub.rc \
170 $(COMMON_PATH)/configs/init/init.exynos9610.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.exynos9610.rc \
171 $(COMMON_PATH)/configs/init/init.exynos9610.usb.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.exynos9610.usb.rc \
172 $(COMMON_PATH)/configs/init/init.mmi.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.mmi.rc \
173 $(COMMON_PATH)/configs/init/init.nfc.sec.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.nfc.sec.rc \
174 $(COMMON_PATH)/configs/init/init.recovery.exynos9610.rc:$(TARGET_COPY_OUT_ROOT)/init.recovery.exynos9610.rc \
175 $(COMMON_PATH)/configs/init/mobicore.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/mobicore.rc \
176 $(COMMON_PATH)/configs/init/rild.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/rild.rc \
177 $(COMMON_PATH)/configs/init/ueventd.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \
178 $(COMMON_PATH)/configs/init/vendor.mmi.carrier.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/vendor.mmi.carrier.rc \
179 $(COMMON_PATH)/configs/fstab.exynos9610:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.exynos9610
180
181 # Keymaster
182 PRODUCT_PACKAGES += \
183 android.hardware.keymaster@3.0-impl \
184 android.hardware.keymaster@3.0-service
185
186 # Lights
187 PRODUCT_PACKAGES += \
188 android.hardware.light@2.0-service.exynos9610
189
190 # LineageActions
191 PRODUCT_PACKAGES += \
192 LineageActions
193
194 # Media
195 PRODUCT_COPY_FILES += \
196 $(COMMON_PATH)/configs/media/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
197 $(COMMON_PATH)/configs/media/media_codecs_dolby_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_dolby_audio.xml \
198 $(COMMON_PATH)/configs/media/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
199 $(COMMON_PATH)/configs/media/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
200 $(COMMON_PATH)/configs/media/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \
201 $(COMMON_PATH)/configs/media/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
202 $(COMMON_PATH)/configs/media/media_profiles_V1_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \
203 $(COMMON_PATH)/configs/media/media_profiles_vendor.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor.xml \
204 $(COMMON_PATH)/configs/media/media_profiles_vendor_V1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_vendor_V1.xml
205
206 # Memtrack
207 PRODUCT_PACKAGES += \
208 android.hardware.memtrack@1.0-impl \
209 android.hardware.memtrack@1.0-service
210
211 # NFC
212 PRODUCT_PACKAGES += \
213 NfcNci \
214 Tag \
215 SecureElement \
216 com.android.nfc_extras \
217 android.hardware.nfc@1.0 \
218 android.hardware.nfc@1.1 \
219 android.hardware.nfc@1.2
220
221 PRODUCT_COPY_FILES += \
222 $(COMMON_PATH)/configs/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nci.conf \
223 $(COMMON_PATH)/configs/nfc/libnfc-sec-vendor.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-sec-vendor.conf
224
225 # Neuralnetworks
226 PRODUCT_PACKAGES += \
227 android.hardware.neuralnetworks@1.2-service-sample-all
228
229 # OMX
230 PRODUCT_PACKAGES += \
231 android.hardware.media.omx@1.0-service \
232 libstagefright_softomx
233
234 # Permissions
235 PRODUCT_COPY_FILES += \
236 frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml \
237 frameworks/native/data/etc/android.hardware.biometrics.face.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.biometrics.face.xml \
238 frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
239 frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \
240 frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \
241 frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \
242 frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
243 frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml \
244 frameworks/native/data/etc/android.hardware.camera.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.xml \
245 frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml \
246 frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml \
247 frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
248 frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \
249 frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \
250 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \
251 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \
252 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \
253 frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \
254 frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml \
255 frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
256 frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
257 frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \
258 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
259 frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
260 frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute.xml \
261 frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \
262 frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml \
263 frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml \
264 frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
265 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
266 frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml \
267 frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
268
269 PRODUCT_COPY_FILES += \
270 frameworks/native/data/etc/android.hardware.telephony.ims.xml:system/etc/permissions/android.hardware.telephony.ims.xml \
271 frameworks/native/data/etc/android.hardware.nfc.xml:system/etc/permissions/android.hardware.nfc.xml \
272 frameworks/native/data/etc/android.hardware.nfc.hce.xml:system/etc/permissions/android.hardware.nfc.hce.xml \
273 frameworks/native/data/etc/android.hardware.nfc.hce.xml:system/etc/permissions/android.hardware.nfc.hcef.xml
274
275 # Power
276 PRODUCT_PACKAGES += \
277 android.hardware.power@1.0-impl \
278 android.hardware.power@1.0-service
279
280 # Public Libraries
281 PRODUCT_COPY_FILES += \
282 $(COMMON_PATH)/configs/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt
283
284 # ril
285 PRODUCT_PACKAGES += \
286 android.hardware.radio.config@1.0 \
287 android.hardware.radio.config@1.1 \
288 android.hardware.radio.config@1.2 \
289 android.hardware.radio@1.0 \
290 android.hardware.radio@1.1 \
291 android.hardware.radio@1.2 \
292 android.hardware.radio@1.3 \
293 android.hardware.radio@1.4 \
294 android.hardware.radio.deprecated@1.0 \
295
296
297 # RenderScript HAL
298 PRODUCT_PACKAGES += \
299 android.hardware.renderscript@1.0-impl
300
301 # Seccomp
302 PRODUCT_COPY_FILES += \
303 $(COMMON_PATH)/configs/seccomp/mediacodec.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy
304
305 # Sensors
306 PRODUCT_PACKAGES += \
307 android.hardware.sensors@1.0-impl \
308 android.hardware.sensors@1.0-service
309
310 PRODUCT_COPY_FILES += \
311 $(COMMON_PATH)/configs/sensors/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf \
312 $(COMMON_PATH)/configs/sensors/mot_sensor_settings.json:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/mot_sensor_settings.json
313
314 # Shims
315 PRODUCT_PACKAGES += \
316 libaudioproxy_shim
317
318 # Thermal
319 PRODUCT_PACKAGES += \
320 android.hardware.thermal@1.0-impl \
321 android.hardware.thermal@1.0-service \
322
323 PRODUCT_COPY_FILES += \
324 $(COMMON_PATH)/configs/thermal/exynos-thermal.conf:$(TARGET_COPY_OUT_VENDOR)/exynos-thermal.conf \
325 $(COMMON_PATH)/configs/thermal/exynos-thermal.env:$(TARGET_COPY_OUT_VENDOR)/exynos-thermal.env \
326 $(COMMON_PATH)/configs/thermal/exynos-thermal-kane.conf:$(TARGET_COPY_OUT_VENDOR)/exynos-thermal-kane.conf \
327 $(COMMON_PATH)/configs/thermal/exynos-thermal-kane-retin.conf:$(TARGET_COPY_OUT_VENDOR)/exynos-thermal-kane-retin.conf \
328 $(COMMON_PATH)/configs/thermal/exynos-thermal-troika.conf:$(TARGET_COPY_OUT_VENDOR)/exynos-thermal-troika.conf
329
330 # Trust HAL
331 PRODUCT_PACKAGES += \
332 vendor.lineage.trust@1.0-service
333
334 # USB
335 PRODUCT_PACKAGES += \
336 android.hardware.usb@1.1-service.exynos9610
337
338 # Vibrator
339 PRODUCT_PACKAGES += \
340 android.hardware.vibrator@1.0-service.exynos9610
341
342 # WiFi
343 PRODUCT_PACKAGES += \
344 android.hardware.wifi@1.0-service \
345 hostapd \
346 wpa_supplicant \
347 wpa_supplicant.conf
348
349 PRODUCT_COPY_FILES += \
350 $(COMMON_PATH)/configs/wifi/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf \
351 $(COMMON_PATH)/configs/wifi/wpa_supplicant.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant.conf \
352 $(COMMON_PATH)/configs/wifi/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf