enforce fully treble and VNDK

This commit is contained in:
Ziyang Zhou
2021-09-19 22:28:30 +08:00
parent da4f44187e
commit 23d5244ae1
9 changed files with 120 additions and 29 deletions

View File

@@ -19,10 +19,6 @@ PRODUCT_MAKEFILES := \
$(LOCAL_DIR)/redroid_arm64.mk \
COMMON_LUNCH_CHOICES := \
redroid_x86_64-eng \
redroid_x86_64-userdebug \
redroid_x86_64-user \
redroid_arm64-eng \
redroid_arm64-userdebug \
redroid_arm64-user

View File

@@ -59,6 +59,7 @@ gpu_setup_host() {
setprop qemu.gles.vendor mesa
setprop ro.hardware.gralloc gbm
setprop ro.kernel.redroid.fps 30
}
gpu_setup_guest() {

View File

@@ -17,6 +17,15 @@
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.configstore</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>ISurfaceFlingerConfigs</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.drm</name>
<transport>hwbinder</transport>
@@ -32,6 +41,15 @@
<fqname>@1.2::ICryptoFactory/clearkey</fqname>
<fqname>@1.2::IDrmFactory/clearkey</fqname>
</hal>
<hal format="hidl">
<name>android.hardware.gatekeeper</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IGatekeeper</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.graphics.allocator</name>
<transport>hwbinder</transport>
@@ -59,6 +77,15 @@
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.health</name>
<transport>hwbinder</transport>
<version>2.0</version>
<interface>
<name>IHealth</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl" override="true">
<name>android.hardware.keymaster</name>
<transport>hwbinder</transport>
@@ -81,5 +108,4 @@
<instance>default</instance>
</interface>
</hal>
<kernel target-level="5"/>
</manifest>

View File

@@ -0,0 +1,25 @@
#
# Copyright 2019 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.
#
# Provides overrides to configure the Dalvik heap for a 6GB phone
PRODUCT_PROPERTY_OVERRIDES += \
dalvik.vm.heapstartsize=16m \
dalvik.vm.heapgrowthlimit=256m \
dalvik.vm.heapsize=512m \
dalvik.vm.heaptargetutilization=0.5 \
dalvik.vm.heapminfree=8m \
dalvik.vm.heapmaxfree=32m

View File

@@ -12,7 +12,30 @@
# See the License for the specific language governing permissions and
# limitations under the License.
$(call inherit-product-if-exists, product.mk)
#$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk)
# no kernel involved
PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := false
PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
PRODUCT_BUILD_CACHE_IMAGE := false
PRODUCT_BUILD_ODM_IMAGE := false
PRODUCT_BUILD_PRODUCT_IMAGE := false
PRODUCT_BUILD_PRODUCT_SERVICES_IMAGE := false
PRODUCT_BUILD_RAMDISK_IMAGE := false
PRODUCT_BUILD_SUPER_PARTITION := false
PRODUCT_BUILD_SYSTEM_OTHER_IMAGE := false
PRODUCT_BUILD_USERDATA_IMAGE := false
PRODUCT_BUILD_VBMETA_IMAGE := false
PRODUCT_BUILD_VENDOR_IMAGE := true
ifeq ($(BUILD_VENDOR_ONLY), true)
PRODUCT_BUILD_SYSTEM_IMAGE := false
else
PRODUCT_BUILD_SYSTEM_IMAGE := true
endif
PRODUCT_SHIPPING_API_LEVEL := 29
PRODUCT_SOONG_NAMESPACES += external/mesa3d
@@ -37,8 +60,9 @@ PRODUCT_PACKAGES += \
libEGL_swiftshader \
libGLESv1_CM_swiftshader \
libGLESv2_swiftshader \
libGLES_mesa \
vulkan.pastel \
libGLES_mesa \
vulkan.radv \
ipconfigstore \
PRODUCT_PROPERTY_OVERRIDES += \
@@ -56,7 +80,7 @@ PRODUCT_PACKAGES += \
android.hardware.wifi@1.0-service
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.wifi.xml:system/etc/permissions/android.hardware.wifi.xml \
frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
# required HIDL
@@ -65,6 +89,7 @@ PRODUCT_PACKAGES += \
android.hardware.audio@2.0-service \
android.hardware.audio@4.0-impl \
android.hardware.audio.effect@4.0-impl \
android.hardware.configstore@1.1-service \
android.hardware.drm@1.0-service \
android.hardware.drm@1.0-impl \
android.hardware.drm@1.2-service.clearkey \
@@ -95,11 +120,12 @@ PRODUCT_COPY_FILES += \
frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy_volumes.xml \
frameworks/av/services/audiopolicy/config/default_volume_tables.xml:$(TARGET_COPY_OUT_VENDOR)/etc/default_volume_tables.xml \
frameworks/av/services/audiopolicy/config/surround_sound_configuration_5_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/surround_sound_configuration_5_0.xml \
frameworks/native/data/etc/android.hardware.ethernet.xml:/system/etc/permissions/android.hardware.ethernet.xml \
$(LOCAL_PATH)/init.redroid.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.redroid.rc \
frameworks/native/data/etc/android.hardware.ethernet.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.ethernet.xml \
$(LOCAL_PATH)/gpu_config.sh:$(TARGET_COPY_OUT_VENDOR)/bin/gpu_config.sh \
$(LOCAL_PATH)/init.redroid.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.redroid.rc \
# Extend heap size we use for dalvik/art runtime
$(call inherit-product, frameworks/native/build/tablet-7in-hdpi-1024-dalvik-heap.mk)
$(call inherit-product, device/redroid/phone-xhdpi-6144-dalvik-heap.mk)
$(call inherit-product-if-exists, product.mk)

View File

@@ -1,16 +1,24 @@
include device/generic/arm64/BoardConfig.mk
# arm64 emulator specific definitions
TARGET_ARCH := arm64
TARGET_ARCH_VARIANT := armv8-a
TARGET_CPU_VARIANT := generic
TARGET_CPU_ABI := arm64-v8a
# want all fonts
SMALLER_FONT_FOOTPRINT := false
MINIMAL_FONT_FOOTPRINT := false
TARGET_2ND_ARCH := arm
TARGET_2ND_CPU_ABI := armeabi-v7a
TARGET_2ND_CPU_ABI2 := armeabi
TARGET_2ND_ARCH_VARIANT := armv7-a-neon
TARGET_2ND_CPU_VARIANT := generic
# use seperate vendor partition
TARGET_COPY_OUT_VENDOR := vendor
include build/make/target/board/BoardConfigGsiCommon.mk
TARGET_USERIMAGES_SPARSE_EXT_DISABLED := true
BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE := 16777216
BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 16777216
BOARD_GPU_DRIVERS := virgl radeonsi
DEVICE_MANIFEST_FILE := device/redroid/manifest.xml
PRODUCT_ENFORCE_VINTF_MANIFEST := true
# ~ 1.3G
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 1388314624

View File

@@ -1,13 +1,20 @@
include device/generic/x86_64/BoardConfig.mk
TARGET_CPU_ABI := x86_64
TARGET_ARCH := x86_64
TARGET_ARCH_VARIANT := x86_64
# want all fonts
SMALLER_FONT_FOOTPRINT := false
MINIMAL_FONT_FOOTPRINT := false
TARGET_2ND_CPU_ABI := x86
TARGET_2ND_ARCH := x86
TARGET_2ND_ARCH_VARIANT := x86_64
# use seperate vendor partition
TARGET_COPY_OUT_VENDOR := vendor
include build/make/target/board/BoardConfigGsiCommon.mk
TARGET_USERIMAGES_SPARSE_EXT_DISABLED := true
BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE := ext4
BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE := 16777216
BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 16777216
BOARD_GPU_DRIVERS := i915 i965 r300g r600g virgl iris radeonsi
DEVICE_MANIFEST_FILE := device/redroid/manifest.xml
PRODUCT_ENFORCE_VINTF_MANIFEST := true

2
vendorsetup.sh Executable file
View File

@@ -0,0 +1,2 @@
# use hacked LLVM
export LLVM_PREBUILTS_VERSION="clang-r353983c"