unplugged-system/device/google/cuttlefish/vsoc_riscv64/wear/aosp_cf.mk

138 lines
5.8 KiB
Makefile

#
# Copyright (C) 2023 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.
#
#
# All components inherited here go to system image
#
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit_only.mk)
$(call inherit-product, device/google/cuttlefish/shared/wear/aosp_system.mk)
# TODO: FIXME: Start workaround for aosp_system.mk ########################
# TODO(b/271573990): It is currently required that dexpreopt be enabled for
# userdebug builds, but dexpreopt is not yet supported for this architecture.
# In the interim, this flag allows us to indicate that we cannot run dex2oat
# to build the ART boot image. Once the requirement is relaxed or support
# is enabled for this architecture, this flag can be removed.
PRODUCT_USES_DEFAULT_ART_CONFIG := false
# TODO(b/275113769): The riscv64 architecture doesn't support APEX flattening yet.
# This condition can be removed after support is enabled.
OVERRIDE_TARGET_FLATTEN_APEX := false
# TODO: FIXME: Stop workaround for aosp_system.mk #########################
# Cuttlefish uses A/B with system_b preopt, so we must install these
PRODUCT_PACKAGES += \
cppreopts.sh \
otapreopt_script \
# Hacks to boot with basic AOSP system apps
PRODUCT_PACKAGES += \
Contacts \
Launcher3QuickStep \
Provision \
Settings \
StorageManager \
SystemUI \
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.software.app_widgets.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.app_widgets.xml \
#
# All components inherited here go to system_ext image
#
$(call inherit-product, device/google/cuttlefish/shared/wear/aosp_system_ext.mk)
#
# All components inherited here go to product image
#
$(call inherit-product, device/google/cuttlefish/shared/wear/aosp_product.mk)
#
# All components inherited here go to vendor image
#
$(call inherit-product, device/google/cuttlefish/shared/wear/aosp_vendor.mk)
#$(call inherit-product, device/google/cuttlefish/shared/wear/device_vendor.mk)
# TODO: FIXME: Start workaround for wear/device_vendor.mk ####################
PRODUCT_MANIFEST_FILES += device/google/cuttlefish/shared/config/product_manifest.xml
SYSTEM_EXT_MANIFEST_FILES += device/google/cuttlefish/shared/config/system_ext_manifest.xml
$(call inherit-product, $(SRC_TARGET_DIR)/product/handheld_vendor.mk)
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.software.backup.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.backup.xml \
frameworks/native/data/etc/android.software.connectionservice.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.connectionservice.xml \
frameworks/native/data/etc/android.software.device_admin.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.device_admin.xml \
frameworks/native/data/etc/wearable_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/wearable_core_hardware.xml \
$(call inherit-product, device/google/cuttlefish/shared/graphics/device_vendor.mk)
# TODO: FIXME: Enable swiftshader for graphics.
#$(call inherit-product, device/google/cuttlefish/shared/swiftshader/device_vendor.mk)
$(call inherit-product, device/google/cuttlefish/shared/telephony/device_vendor.mk)
$(call inherit-product, device/google/cuttlefish/shared/virgl/device_vendor.mk)
$(call inherit-product, device/google/cuttlefish/shared/device.mk)
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.audio.output.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.output.xml \
frameworks/native/data/etc/android.hardware.faketouch.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.faketouch.xml \
frameworks/native/data/etc/android.hardware.location.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.xml \
# Runtime Resource Overlays
PRODUCT_PACKAGES += \
cuttlefish_phone_overlay_frameworks_base_core \
cuttlefish_wear_overlay_frameworks_base_core \
cuttlefish_wear_overlay_settings_provider \
PRODUCT_PRODUCT_PROPERTIES += \
config.disable_cameraservice=true
PRODUCT_CHARACTERISTICS := nosdcard,watch
TARGET_BOARD_INFO_FILE ?= device/google/cuttlefish/shared/wear/android-info.txt
# TODO: FIXME: Stop workaround for wear/device_vendor.mk #####################
#
# Special settings for the target
#
$(call inherit-product, device/google/cuttlefish/vsoc_riscv64/bootloader.mk)
# Exclude features that are not available on AOSP devices.
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/aosp_excluded_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/aosp_excluded_hardware.xml \
# TODO(b/206676167): This property can be removed when renderscript is removed.
# Prevents framework from attempting to load renderscript libraries, which are
# not supported on this architecture.
PRODUCT_SYSTEM_PROPERTIES += \
config.disable_renderscript=1 \
# TODO(b/271573990): This property can be removed when ART support for JIT on
# this architecture is available. This is an override as the original property
# is defined in runtime_libart.mk.
PRODUCT_PROPERTY_OVERRIDES += \
dalvik.vm.usejit=false
PRODUCT_NAME := aosp_cf_riscv64_wear
PRODUCT_DEVICE := vsoc_riscv64
PRODUCT_MANUFACTURER := Google
PRODUCT_MODEL := Cuttlefish riscv64 wearable
PRODUCT_VENDOR_PROPERTIES += \
ro.soc.manufacturer=$(PRODUCT_MANUFACTURER) \
ro.soc.model=$(PRODUCT_DEVICE)