| # |
| # Copyright (C) 2014 The Android Open-Source Project |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # |
| |
| # Enable updating of APEXes |
| $(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk) |
| |
| # Device overlay |
| DEVICE_PACKAGE_OVERLAYS := $(LOCAL_PATH)/overlay |
| |
| # Build and run only ART |
| PRODUCT_RUNTIMES := runtime_libart_default |
| |
| PRODUCT_SHIPPING_API_LEVEL := 29 |
| PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := false |
| |
| # Enable Scoped Storage related |
| $(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk) |
| |
| # vndk |
| PRODUCT_PACKAGES := vndk-sp |
| |
| # Dynamic partitions |
| PRODUCT_BUILD_SUPER_PARTITION := true |
| PRODUCT_USE_DYNAMIC_PARTITIONS := true |
| PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true |
| |
| # HACK: Avoid usb crash |
| PRODUCT_PRODUCT_PROPERTIES := \ |
| persist.adb.nonblocking_ffs=0 \ |
| ro.adb.nonblocking_ffs=0 |
| |
| # Display |
| PRODUCT_PACKAGES += \ |
| android.hardware.drm@1.0-impl \ |
| android.hardware.drm@1.0-service \ |
| android.hardware.graphics.allocator@2.0-impl \ |
| android.hardware.graphics.allocator@2.0-service \ |
| android.hardware.graphics.composer@2.2-impl \ |
| android.hardware.graphics.composer@2.2-service \ |
| android.hardware.graphics.mapper@2.0-impl-2.1 \ |
| gralloc.gbm \ |
| hwcomposer.drm \ |
| libGLES_mesa |
| |
| PRODUCT_PROPERTY_OVERRIDES += \ |
| ro.hardware.gralloc=gbm \ |
| ro.hardware.hwcomposer=drm \ |
| debug.sf.no_hw_vsync=1 \ |
| ro.sf.lcd_density=160 \ |
| ro.opengles.version=196608 \ |
| persist.demo.rotationlock=1 |
| |
| # Use Launcher3QuickStep |
| PRODUCT_PACKAGES += Launcher3QuickStep |
| |
| # Enable WiFi |
| PRODUCT_PACKAGES += \ |
| hostapd \ |
| libwpa_client \ |
| wpa_supplicant \ |
| wpa_supplicant.conf \ |
| wificond |
| |
| PRODUCT_PROPERTY_OVERRIDES += \ |
| wifi.interface=wlan0 \ |
| wifi.supplicant_scan_interval=15 |
| |
| PRODUCT_COPY_FILES += \ |
| frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \ |
| frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \ |
| $(LOCAL_PATH)/wpa_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant_overlay.conf \ |
| $(LOCAL_PATH)/p2p_supplicant_overlay.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/p2p_supplicant_overlay.conf |
| |
| # Enable BT |
| PRODUCT_PACKAGES += \ |
| android.hardware.bluetooth@1.1-service.btlinux |
| |
| PRODUCT_COPY_FILES += \ |
| frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \ |
| frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml |
| |
| # Audio |
| PRODUCT_PACKAGES += \ |
| android.hardware.audio@4.0-impl:32 \ |
| android.hardware.audio.effect@4.0-impl:32 \ |
| android.hardware.audio@2.0-service \ |
| android.hardware.soundtrigger@2.0-impl \ |
| android.hardware.bluetooth.audio@2.0-impl |
| |
| # Build default bluetooth a2dp and usb audio HALs |
| PRODUCT_PACKAGES += \ |
| audio.a2dp.default \ |
| audio.bluetooth.default \ |
| audio.usb.default \ |
| audio.r_submix.default |
| |
| # Build tinyalsa cli tools for debugging |
| PRODUCT_PACKAGES += \ |
| tinyplay \ |
| tinycap \ |
| tinymix \ |
| tinypcminfo |
| |
| # audio policy configuration |
| USE_XML_AUDIO_POLICY_CONF := 1 |
| PRODUCT_COPY_FILES += \ |
| $(LOCAL_PATH)/etc/mixer_paths.xml:$(TARGET_COPY_OUT_VENDOR)/etc/mixer_paths.xml \ |
| $(LOCAL_PATH)/etc/audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration.xml \ |
| $(LOCAL_PATH)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_configuration_bluetooth_legacy_hal.xml \ |
| frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \ |
| frameworks/av/services/audiopolicy/config/a2dp_in_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration.xml \ |
| frameworks/av/services/audiopolicy/config/primary_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/primary_audio_policy_configuration.xml \ |
| frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration.xml \ |
| frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml \ |
| frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/usb_audio_policy_configuration.xml \ |
| frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \ |
| frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml |
| |
| # Copy media codecs config file |
| PRODUCT_COPY_FILES += \ |
| $(LOCAL_PATH)/etc/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \ |
| frameworks/av/media/libeffects/data/audio_effects.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.xml \ |
| frameworks/av/media/libstagefright/data/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \ |
| frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml |
| |
| PRODUCT_COPY_FILES += \ |
| $(LOCAL_PATH)/seccomp_policy/mediaswcodec.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediacodec.policy \ |
| $(LOCAL_PATH)/seccomp_policy/mediaswcodec.policy:$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy/mediaswcodec.policy |
| |
| # Copy hardware config file(s) |
| PRODUCT_COPY_FILES += \ |
| device/linaro/dragonboard/etc/permissions/android.software.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.xml |
| |
| # Memtrack |
| PRODUCT_PACKAGES += \ |
| memtrack.default \ |
| android.hardware.memtrack@1.0-service \ |
| android.hardware.memtrack@1.0-impl |
| |
| # Keymaster |
| PRODUCT_PACKAGES += \ |
| android.hardware.keymaster@3.0-impl \ |
| android.hardware.keymaster@3.0-service |
| |
| # Gatekeeper |
| PRODUCT_PACKAGES += \ |
| android.hardware.gatekeeper@1.0-service.software |
| |
| # Health |
| PRODUCT_PACKAGES += \ |
| android.hardware.health@2.1-impl-cuttlefish \ |
| android.hardware.health@2.1-service |
| |
| # TODO: disable this service once we implement system suspend |
| PRODUCT_PACKAGES += \ |
| suspend_blocker |
| |
| # mkbootimg host tool to build boot.img separately |
| PRODUCT_HOST_PACKAGES := \ |
| mkbootimg |
| |
| # Copy standard platform config files |
| PRODUCT_COPY_FILES += \ |
| $(LOCAL_PATH)/ueventd.common.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \ |
| frameworks/native/data/etc/android.software.cts.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.cts.xml \ |
| frameworks/native/data/etc/android.software.app_widgets.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.app_widgets.xml \ |
| frameworks/native/data/etc/android.software.backup.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.backup.xml \ |
| frameworks/native/data/etc/android.software.voice_recognizers.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.voice_recognizers.xml \ |
| frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \ |
| frameworks/native/data/etc/android.software.print.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.print.xml \ |
| frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \ |
| frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \ |
| frameworks/native/data/etc/android.software.device_admin.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_admin.xml |
| |
| PRODUCT_SOONG_NAMESPACES += external/mesa3d |