| # |
| # Copyright (C) 2022 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. |
| # |
| |
| # If a downstream target does not want any graphics support, do not |
| # include this file! |
| |
| PRODUCT_COPY_FILES += \ |
| device/google/cuttlefish/shared/config/graphics/init_graphics.vendor.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init_graphics.vendor.rc \ |
| |
| # Gfxstream common libraries: |
| PRODUCT_SOONG_NAMESPACES += device/generic/goldfish-opengl |
| PRODUCT_PACKAGES += \ |
| libandroidemu \ |
| libOpenglCodecCommon \ |
| libOpenglSystemCommon \ |
| libGLESv1_CM_emulation \ |
| lib_renderControl_enc \ |
| libEGL_emulation \ |
| libGLESv2_enc \ |
| libGLESv2_emulation \ |
| libGLESv1_enc \ |
| libGoldfishProfiler \ |
| |
| # Gfxstream OpenGL implementation (OpenGL streamed to the host). |
| PRODUCT_PACKAGES += \ |
| libEGL_emulation \ |
| libGLESv1_CM_emulation \ |
| libGLESv1_enc \ |
| libGLESv2_emulation \ |
| libGLESv2_enc \ |
| |
| # Gfxstream Vulkan implementation (Vulkan streamed to the host). |
| ifeq ($(TARGET_VULKAN_SUPPORT),true) |
| PRODUCT_PACKAGES += \ |
| vulkan.ranchu \ |
| libvulkan_enc |
| endif |
| |
| ifeq ($(TARGET_VULKAN_SUPPORT),true) |
| ifneq ($(LOCAL_PREFER_VENDOR_APEX),true) |
| PRODUCT_COPY_FILES += \ |
| frameworks/native/data/etc/android.hardware.vulkan.level-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \ |
| frameworks/native/data/etc/android.hardware.vulkan.version-1_0_3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml \ |
| frameworks/native/data/etc/android.software.vulkan.deqp.level-2023-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml \ |
| frameworks/native/data/etc/android.software.opengles.deqp.level-2023-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml |
| endif |
| endif |
| |
| # |
| # Hardware Composer HAL |
| # |
| # The device needs to avoid having both hwcomposer2.4 and hwcomposer3 |
| # services running at the same time so make the user manually enables |
| # in order to run with --gpu_mode=drm. |
| ifeq ($(TARGET_ENABLE_DRMHWCOMPOSER),true) |
| DEVICE_MANIFEST_FILE += \ |
| device/google/cuttlefish/shared/config/manifest_android.hardware.graphics.composer@2.4-service.xml |
| PRODUCT_PACKAGES += \ |
| android.hardware.graphics.composer@2.4-service \ |
| hwcomposer.drm |
| else |
| PRODUCT_PACKAGES += \ |
| android.hardware.graphics.composer3-service.ranchu |
| endif |
| |
| PRODUCT_VENDOR_PROPERTIES += \ |
| ro.vendor.hwcomposer.pmem=/dev/block/pmem1 |
| |
| # Gralloc implementation |
| PRODUCT_PACKAGES += \ |
| android.hardware.graphics.allocator-service.minigbm \ |
| android.hardware.graphics.mapper@4.0-impl.minigbm \ |
| mapper.minigbm |