1# 2# Copyright (C) 2020 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# This makefile contains the system partition contents for 17# a generic TV device. 18$(call inherit-product, $(SRC_TARGET_DIR)/product/media_system.mk) 19 20$(call inherit-product-if-exists, frameworks/base/data/fonts/fonts.mk) 21$(call inherit-product-if-exists, external/google-fonts/dancing-script/fonts.mk) 22$(call inherit-product-if-exists, external/google-fonts/carrois-gothic-sc/fonts.mk) 23$(call inherit-product-if-exists, external/google-fonts/coming-soon/fonts.mk) 24$(call inherit-product-if-exists, external/google-fonts/cutive-mono/fonts.mk) 25$(call inherit-product-if-exists, external/noto-fonts/fonts.mk) 26$(call inherit-product-if-exists, external/roboto-fonts/fonts.mk) 27$(call inherit-product-if-exists, external/hyphenation-patterns/patterns.mk) 28$(call inherit-product-if-exists, frameworks/base/data/keyboards/keyboards.mk) 29$(call inherit-product-if-exists, frameworks/webview/chromium/chromium.mk) 30 31PRODUCT_IS_ATV := true 32 33PRODUCT_PACKAGES += \ 34 TvProvider 35 36# Media tuner jni 37PRODUCT_PACKAGES += \ 38 libmedia_tv_tuner 39 40# From build/target/product/core.mk 41PRODUCT_PACKAGES += \ 42 BasicDreams \ 43 Bluetooth \ 44 CalendarProvider \ 45 CaptivePortalLogin \ 46 CertInstaller \ 47 clatd \ 48 clatd.conf \ 49 ExternalStorageProvider \ 50 FusedLocation \ 51 InputDevices \ 52 KeyChain \ 53 librs_jni \ 54 PacProcessor \ 55 PrintSpooler \ 56 ProxyHandler \ 57 SharedStorageBackup \ 58 screenrecord \ 59 UserDictionaryProvider \ 60 VpnDialogs \ 61 com.android.media.tv.remoteprovider 62 63# Traceur for debug only 64PRODUCT_PACKAGES_DEBUG += \ 65 Traceur 66 67# PRODUCT_SUPPORTS_CAMERA: Whether the product supports cameras at all 68# (built-in or external USB camera). When 'false', we drop cameraserver, which 69# saves ~3 MiB of RAM. When 'true', additional settings are required for 70# external webcams to work, see "External USB Cameras" documentation. 71# 72# Defaults to true to mimic legacy behaviour. 73PRODUCT_SUPPORTS_CAMERA ?= true 74ifeq ($(PRODUCT_SUPPORTS_CAMERA),true) 75 PRODUCT_PACKAGES += cameraserver 76else 77 # When cameraserver is not included, we need to configure Camera API to not 78 # connect to it. 79 PRODUCT_PROPERTY_OVERRIDES += config.disable_cameraservice=true 80endif 81 82# SDK builds needs to build layoutlib-legacy that depends on debug info 83ifneq ($(PRODUCT_IS_ATV_SDK),true) 84 # Strip the local variable table and the local variable type table to reduce 85 # the size of the system image. This has no bearing on stack traces, but will 86 # leave less information available via JDWP. 87 # From //build/make/target/product/go_defaults_common.mk 88 PRODUCT_MINIMIZE_JAVA_DEBUG_INFO := true 89 90 # Do not generate libartd. 91 # From //build/make/target/product/go_defaults_common.mk 92 PRODUCT_ART_TARGET_INCLUDE_DEBUG_BUILD := false 93endif 94 95DEVICE_PACKAGE_OVERLAYS += \ 96 device/google/atv/overlay 97 98# Enable frame-exact AV sync 99PRODUCT_PROPERTY_OVERRIDES += \ 100 persist.sys.media.avsync=true 101 102# Copy .kl file for generic voice remotes 103PRODUCT_COPY_FILES += \ 104 device/google/atv/Generic.kl:system/usr/keylayout/Generic.kl 105 106PRODUCT_COPY_FILES += \ 107 device/google/atv/permissions/tv_core_hardware.xml:system/etc/permissions/tv_core_hardware.xml 108 109PRODUCT_COPY_FILES += \ 110 frameworks/av/media/libeffects/data/audio_effects.conf:system/etc/audio_effects.conf 111