1# 2# Copyright (C) 2017 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# Include all languages 18$(call inherit-product, $(SRC_TARGET_DIR)/product/languages_full.mk) 19 20# Enable updating of APEXes 21$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk) 22 23# Enable userspace reboot 24$(call inherit-product, $(SRC_TARGET_DIR)/product/userspace_reboot.mk) 25 26PRODUCT_SHIPPING_API_LEVEL := 30 27PRODUCT_BUILD_BOOT_IMAGE := true 28PRODUCT_USE_DYNAMIC_PARTITIONS := true 29DISABLE_RILD_OEM_HOOK := true 30 31PRODUCT_SOONG_NAMESPACES += device/generic/goldfish-opengl # for vulkan 32 33TARGET_USERDATAIMAGE_FILE_SYSTEM_TYPE ?= f2fs 34TARGET_USERDATAIMAGE_PARTITION_SIZE ?= 6442450944 35 36TARGET_VULKAN_SUPPORT ?= true 37 38AB_OTA_UPDATER := true 39AB_OTA_PARTITIONS += \ 40 odm \ 41 product \ 42 system \ 43 system_ext \ 44 vbmeta \ 45 vbmeta_system \ 46 vendor 47 48# Enable Virtual A/B 49$(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota.mk) 50 51# Enable Scoped Storage related 52$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk) 53 54# Properties that are not vendor-specific. These will go in the product 55# partition, instead of the vendor partition, and do not need vendor 56# sepolicy 57PRODUCT_PRODUCT_PROPERTIES += \ 58 persist.adb.tcp.port=5555 \ 59 ro.com.google.locationfeatures=1 \ 60 61# Explanation of specific properties: 62# debug.hwui.swap_with_damage avoids boot failure on M http://b/25152138 63# ro.opengles.version OpenGLES 3.0 64PRODUCT_PROPERTY_OVERRIDES += \ 65 tombstoned.max_tombstone_count=500 \ 66 bt.rootcanal_test_console=off \ 67 debug.hwui.swap_with_damage=0 \ 68 ro.carrier=unknown \ 69 ro.com.android.dataroaming=false \ 70 ro.hardware.virtual_device=1 \ 71 ro.logd.size=1M \ 72 ro.opengles.version=196608 \ 73 wifi.interface=wlan0 \ 74 persist.sys.zram_enabled=1 \ 75 ro.rebootescrow.device=/dev/block/pmem0 \ 76 ro.incremental.enable=1 \ 77 78# Below is a list of properties we probably should get rid of. 79PRODUCT_PROPERTY_OVERRIDES += \ 80 wlan.driver.status=ok 81 82# Enforce privapp-permissions whitelist. 83PRODUCT_PROPERTY_OVERRIDES += ro.control_privapp_permissions=enforce 84 85# aes-256-heh default is not supported in standard kernels. 86PRODUCT_PROPERTY_OVERRIDES += ro.crypto.volume.filenames_mode=aes-256-cts 87 88# Copy preopted files from system_b on first boot 89PRODUCT_PROPERTY_OVERRIDES += ro.cp_system_other_odex=1 90 91# DRM service opt-in 92PRODUCT_PROPERTY_OVERRIDES += drm.service.enabled=true 93 94PRODUCT_SOONG_NAMESPACES += hardware/google/camera 95PRODUCT_SOONG_NAMESPACES += hardware/google/camera/devices/EmulatedCamera 96 97# 98# Packages for various GCE-specific utilities 99# 100PRODUCT_PACKAGES += \ 101 socket_vsock_proxy \ 102 CuttlefishService \ 103 wpa_supplicant.vsoc.conf \ 104 vsoc_input_service \ 105 vport_trigger \ 106 rename_netiface \ 107 ip_link_add \ 108 setup_wifi \ 109 tombstone_transmit \ 110 vsock_logcat \ 111 tombstone_producer \ 112 suspend_blocker \ 113 114# 115# Packages for AOSP-available stuff we use from the framework 116# 117PRODUCT_PACKAGES += \ 118 e2fsck \ 119 ip \ 120 sleep \ 121 tcpdump \ 122 wpa_supplicant \ 123 wificond \ 124 125# 126# Packages for the OpenGL implementation 127# 128 129# SwiftShader provides a software-only implementation that is not thread-safe 130PRODUCT_PACKAGES += \ 131 libEGL_swiftshader \ 132 libGLESv1_CM_swiftshader \ 133 libGLESv2_swiftshader 134 135# GL implementation for virgl 136PRODUCT_PACKAGES += \ 137 libGLES_mesa \ 138 139# 140# Packages for the Vulkan implementation 141# 142ifeq ($(TARGET_VULKAN_SUPPORT),true) 143PRODUCT_PACKAGES += \ 144 vulkan.ranchu \ 145 libvulkan_enc \ 146 vulkan.pastel 147endif 148 149# GL/Vk implementation for gfxstream 150PRODUCT_PACKAGES += \ 151 libandroidemu \ 152 libOpenglCodecCommon \ 153 libOpenglSystemCommon \ 154 libGLESv1_CM_emulation \ 155 lib_renderControl_enc \ 156 libEGL_emulation \ 157 libGLESv2_enc \ 158 libGLESv2_emulation \ 159 libGLESv1_enc 160 161# 162# Packages for testing 163# 164PRODUCT_PACKAGES += \ 165 aidl_lazy_test_server \ 166 hidl_lazy_test_server 167 168DEVICE_PACKAGE_OVERLAYS := device/google/cuttlefish/shared/overlay 169# PRODUCT_AAPT_CONFIG and PRODUCT_AAPT_PREF_CONFIG are intentionally not set to 170# pick up every density resources. 171 172# 173# General files 174# 175 176 177ifneq ($(LOCAL_SENSOR_FILE_OVERRIDES),true) 178 PRODUCT_COPY_FILES += \ 179 frameworks/native/data/etc/android.hardware.sensor.ambient_temperature.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.ambient_temperature.xml \ 180 frameworks/native/data/etc/android.hardware.sensor.barometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.barometer.xml \ 181 frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \ 182 frameworks/native/data/etc/android.hardware.sensor.hinge_angle.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.hinge_angle.xml \ 183 frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \ 184 frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \ 185 frameworks/native/data/etc/android.hardware.sensor.relative_humidity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.relative_humidity.xml 186endif 187 188PRODUCT_COPY_FILES += \ 189 hardware/google/camera/devices/EmulatedCamera/hwl/configs/emu_camera_back.json:$(TARGET_COPY_OUT_VENDOR)/etc/config/emu_camera_back.json \ 190 hardware/google/camera/devices/EmulatedCamera/hwl/configs/emu_camera_front.json:$(TARGET_COPY_OUT_VENDOR)/etc/config/emu_camera_front.json \ 191 hardware/google/camera/devices/EmulatedCamera/hwl/configs/emu_camera_depth.json:$(TARGET_COPY_OUT_VENDOR)/etc/config/emu_camera_depth.json \ 192 device/google/cuttlefish/shared/config/init.vendor.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.cutf_cvm.rc \ 193 device/google/cuttlefish/shared/config/init.product.rc:$(TARGET_COPY_OUT_PRODUCT)/etc/init/init.rc \ 194 device/google/cuttlefish/shared/config/ueventd.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \ 195 device/google/cuttlefish/shared/config/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \ 196 device/google/cuttlefish/shared/config/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \ 197 device/google/cuttlefish/shared/config/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \ 198 device/google/cuttlefish/shared/config/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \ 199 device/google/cuttlefish/shared/permissions/cuttlefish_excluded_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/cuttlefish_excluded_hardware.xml \ 200 device/google/cuttlefish/shared/permissions/privapp-permissions-cuttlefish.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/privapp-permissions-cuttlefish.xml \ 201 frameworks/av/media/libeffects/data/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \ 202 frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \ 203 frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \ 204 frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \ 205 frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \ 206 frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \ 207 frameworks/av/services/audiopolicy/config/surround_sound_configuration_5_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/surround_sound_configuration_5_0.xml \ 208 frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml \ 209 frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \ 210 frameworks/native/data/etc/android.hardware.camera.concurrent.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.concurrent.xml \ 211 frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \ 212 frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \ 213 frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \ 214 frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml \ 215 frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \ 216 frameworks/native/data/etc/android.hardware.faketouch.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.faketouch.xml \ 217 frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml \ 218 frameworks/native/data/etc/android.hardware.reboot_escrow.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.reboot_escrow.xml \ 219 frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \ 220 frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \ 221 frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml \ 222 frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \ 223 frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.verified_boot.xml \ 224 system/bt/vendor_libs/test_vendor_lib/data/controller_properties.json:vendor/etc/bluetooth/controller_properties.json \ 225 device/google/cuttlefish/shared/config/task_profiles.json:$(TARGET_COPY_OUT_VENDOR)/etc/task_profiles.json \ 226 device/google/cuttlefish/shared/config/fstab.f2fs:$(TARGET_COPY_OUT_RAMDISK)/fstab.f2fs \ 227 device/google/cuttlefish/shared/config/fstab.f2fs:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.f2fs \ 228 device/google/cuttlefish/shared/config/fstab.f2fs:$(TARGET_COPY_OUT_RECOVERY)/root/first_stage_ramdisk/fstab.f2fs \ 229 device/google/cuttlefish/shared/config/fstab.ext4:$(TARGET_COPY_OUT_RAMDISK)/fstab.ext4 \ 230 device/google/cuttlefish/shared/config/fstab.ext4:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.ext4 \ 231 device/google/cuttlefish/shared/config/fstab.ext4:$(TARGET_COPY_OUT_RECOVERY)/root/first_stage_ramdisk/fstab.ext4 232 233ifeq ($(TARGET_VULKAN_SUPPORT),true) 234PRODUCT_COPY_FILES += \ 235 frameworks/native/data/etc/android.hardware.vulkan.level-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \ 236 frameworks/native/data/etc/android.hardware.vulkan.version-1_0_3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml \ 237 frameworks/native/data/etc/android.software.vulkan.deqp.level-2020-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml 238endif 239 240# Packages for HAL implementations 241 242# 243# Atrace HAL 244# 245PRODUCT_PACKAGES += \ 246 android.hardware.atrace@1.0-service 247 248# 249# Authsecret HAL 250# 251PRODUCT_PACKAGES += \ 252 android.hardware.authsecret@1.0-service 253 254# 255# Hardware Composer HAL 256# 257PRODUCT_PACKAGES += \ 258 hwcomposer.drm_minigbm \ 259 hwcomposer.cutf_cvm_ashmem \ 260 hwcomposer.cutf_hwc2 \ 261 hwcomposer-stats \ 262 android.hardware.graphics.composer@2.2-impl \ 263 android.hardware.graphics.composer@2.2-service 264 265# 266# Gralloc HAL 267# 268PRODUCT_PACKAGES += \ 269 android.hardware.graphics.allocator@4.0-service.minigbm \ 270 android.hardware.graphics.mapper@4.0-impl.minigbm 271 272# 273# Bluetooth HAL and Compatibility Bluetooth library (for older revs). 274# 275ifeq ($(LOCAL_BLUETOOTH_PRODUCT_PACKAGE),) 276 LOCAL_BLUETOOTH_PRODUCT_PACKAGE := \ 277 android.hardware.bluetooth@1.1-service.sim 278 DEVICE_MANIFEST_FILE += device/google/cuttlefish/shared/config/manifest_android.hardware.bluetooth@1.1-service.xml 279endif 280 281PRODUCT_PACKAGES += $(LOCAL_BLUETOOTH_PRODUCT_PACKAGE) 282 283PRODUCT_PACKAGES += android.hardware.bluetooth.audio@2.0-impl 284 285# 286# Audio HAL 287# 288LOCAL_AUDIO_PRODUCT_PACKAGE ?= \ 289 audio.primary.cutf \ 290 audio.r_submix.default \ 291 android.hardware.audio@6.0-impl:32 \ 292 android.hardware.audio.effect@6.0-impl:32 \ 293 android.hardware.audio@2.0-service \ 294 295LOCAL_AUDIO_PRODUCT_COPY_FILES ?= \ 296 device/google/cuttlefish/shared/config/audio_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy.conf \ 297 frameworks/av/services/audiopolicy/config/audio_policy_configuration_generic.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \ 298 frameworks/av/services/audiopolicy/config/primary_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/primary_audio_policy_configuration.xml 299 300LOCAL_AUDIO_DEVICE_PACKAGE_OVERLAYS ?= 301 302PRODUCT_PACKAGES += $(LOCAL_AUDIO_PRODUCT_PACKAGE) 303PRODUCT_COPY_FILES += $(LOCAL_AUDIO_PRODUCT_COPY_FILES) 304DEVICE_PACKAGE_OVERLAYS += $(LOCAL_AUDIO_DEVICE_PACKAGE_OVERLAYS) 305 306# 307# BiometricsFace HAL 308# 309PRODUCT_PACKAGES += \ 310 android.hardware.biometrics.face@1.0-service.example 311 312# 313# Contexthub HAL 314# 315PRODUCT_PACKAGES += \ 316 android.hardware.contexthub@1.1-service.mock 317 318# 319# Drm HAL 320# 321PRODUCT_PACKAGES += \ 322 android.hardware.drm@1.3-service.clearkey \ 323 android.hardware.drm@1.3-service.widevine 324 325# 326# Dumpstate HAL 327# 328ifeq ($(LOCAL_DUMPSTATE_PRODUCT_PACKAGE),) 329 LOCAL_DUMPSTATE_PRODUCT_PACKAGE := android.hardware.dumpstate@1.1-service.example 330endif 331PRODUCT_PACKAGES += $(LOCAL_DUMPSTATE_PRODUCT_PACKAGE) 332 333# 334# Camera 335# 336PRODUCT_PACKAGES += \ 337 android.hardware.camera.provider@2.6-service-google \ 338 libgooglecamerahwl_impl \ 339 android.hardware.camera.provider@2.6-impl-google \ 340 341# 342# Gatekeeper 343# 344ifeq ($(LOCAL_GATEKEEPER_PRODUCT_PACKAGE),) 345 LOCAL_GATEKEEPER_PRODUCT_PACKAGE := android.hardware.gatekeeper@1.0-service.software 346endif 347PRODUCT_PACKAGES += \ 348 $(LOCAL_GATEKEEPER_PRODUCT_PACKAGE) 349 350# 351# GPS 352# 353PRODUCT_PACKAGES += \ 354 android.hardware.gnss@2.1-service 355 356# Health 357ifeq ($(LOCAL_HEALTH_PRODUCT_PACKAGE),) 358 LOCAL_HEALTH_PRODUCT_PACKAGE := \ 359 android.hardware.health@2.1-impl-cuttlefish \ 360 android.hardware.health@2.1-service 361endif 362PRODUCT_PACKAGES += $(LOCAL_HEALTH_PRODUCT_PACKAGE) 363 364# Health Storage 365PRODUCT_PACKAGES += \ 366 android.hardware.health.storage@1.0-service.cuttlefish 367 368# Identity Credential 369PRODUCT_PACKAGES += \ 370 android.hardware.identity-service.example 371 372# Input Classifier HAL 373PRODUCT_PACKAGES += \ 374 android.hardware.input.classifier@1.0-service.default 375 376# 377# Sensors 378# 379ifeq ($(LOCAL_SENSOR_PRODUCT_PACKAGE),) 380 LOCAL_SENSOR_PRODUCT_PACKAGE := android.hardware.sensors@2.1-service.mock 381endif 382PRODUCT_PACKAGES += \ 383 $(LOCAL_SENSOR_PRODUCT_PACKAGE) 384# 385# Thermal (mock) 386# 387PRODUCT_PACKAGES += \ 388 android.hardware.thermal@2.0-service.mock 389 390# 391# Lights 392# 393PRODUCT_PACKAGES += \ 394 android.hardware.lights-service.example \ 395 396# 397# Keymaster HAL 398# 399ifeq ($(LOCAL_KEYMASTER_PRODUCT_PACKAGE),) 400 LOCAL_KEYMASTER_PRODUCT_PACKAGE := android.hardware.keymaster@4.1-service 401endif 402PRODUCT_PACKAGES += \ 403 $(LOCAL_KEYMASTER_PRODUCT_PACKAGE) 404 405# 406# Power HAL 407# 408PRODUCT_PACKAGES += \ 409 android.hardware.power-service.example 410 411# 412# PowerStats HAL 413# 414PRODUCT_PACKAGES += \ 415 android.hardware.power.stats@1.0-service.mock 416 417# 418# NeuralNetworks HAL 419# 420PRODUCT_PACKAGES += \ 421 android.hardware.neuralnetworks@1.3-service-sample-all \ 422 android.hardware.neuralnetworks@1.3-service-sample-float-fast \ 423 android.hardware.neuralnetworks@1.3-service-sample-float-slow \ 424 android.hardware.neuralnetworks@1.3-service-sample-minimal \ 425 android.hardware.neuralnetworks@1.3-service-sample-quant 426 427# 428# USB 429PRODUCT_PACKAGES += \ 430 android.hardware.usb@1.0-service 431 432# Vibrator HAL 433PRODUCT_PACKAGES += \ 434 android.hardware.vibrator-service.example 435 436# BootControl HAL 437PRODUCT_PACKAGES += \ 438 android.hardware.boot@1.1-impl \ 439 android.hardware.boot@1.1-impl.recovery \ 440 android.hardware.boot@1.1-service 441 442# RebootEscrow HAL 443PRODUCT_PACKAGES += \ 444 android.hardware.rebootescrow-service.default 445 446# WLAN driver configuration files 447PRODUCT_COPY_FILES += \ 448 $(LOCAL_PATH)/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf 449 450# Recovery mode 451ifneq ($(TARGET_NO_RECOVERY),true) 452 453PRODUCT_COPY_FILES += \ 454 device/google/cuttlefish/shared/config/init.recovery.rc:$(TARGET_COPY_OUT_RECOVERY)/root/init.recovery.cutf_cvm.rc \ 455 device/google/cuttlefish/shared/config/cgroups.json:$(TARGET_COPY_OUT_RECOVERY)/root/vendor/etc/cgroups.json \ 456 device/google/cuttlefish/shared/config/ueventd.rc:$(TARGET_COPY_OUT_RECOVERY)/root/ueventd.cutf_cvm.rc \ 457 458endif 459 460# 461# Shell script Vendor Module Loading 462# 463PRODUCT_COPY_FILES += \ 464 $(LOCAL_PATH)/config/init.insmod.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.insmod.sh \ 465 466# Host packages to install 467PRODUCT_HOST_PACKAGES += socket_vsock_proxy 468 469PRODUCT_EXTRA_VNDK_VERSIONS := 28 29 470 471PRODUCT_SOONG_NAMESPACES += external/mesa3d 472 473# Need this so that the application's loop on reading input can be synchronized 474# with HW VSYNC 475PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.running_without_sync_framework=true 476