forked from openkylin/platform_build
Normalize building generic system image with treble-common.mk
Move the common part from make file of generic AOSP system images into treble_common.mk, and update the content of common part. The common part inclueds: - HAL interfaces - VNDK libs - VNDK-SP libs - Some other modules supporting HAL interfaces - Some Treble default configuations Bug: 37927875 Test: boot to home screen with the generic system image Change-Id: I4202454d57970cef713f7d6437191094df0009e9 Merged-In: I4202454d57970cef713f7d6437191094df0009e9
This commit is contained in:
parent
fb3424166b
commit
76ada93856
|
@ -16,90 +16,10 @@
|
|||
|
||||
# PRODUCT_PROPERTY_OVERRIDES cannot be used here because sysprops will be at
|
||||
# /vendor/[build|default].prop when build split is on. In order to have sysprops
|
||||
# on the generic system image, place them in build/make/target/board/generic_arm_nonab/
|
||||
# on the generic system image, place them in build/make/target/board/generic_arm64_a/
|
||||
# system.prop.
|
||||
|
||||
PRODUCT_COPY_FILES := \
|
||||
device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml
|
||||
|
||||
#split selinux policy
|
||||
PRODUCT_FULL_TREBLE_OVERRIDE := true
|
||||
|
||||
# Some of HAL interface libraries are automatically added by the dependencies from
|
||||
# the framework. However, we list them all here to make it explicit and prevent
|
||||
# possible mistake.
|
||||
PRODUCT_PACKAGES := \
|
||||
android.dvr.composer@1.0 \
|
||||
android.hardware.audio@2.0 \
|
||||
android.hardware.audio.common@2.0 \
|
||||
android.hardware.audio.common@2.0-util \
|
||||
android.hardware.audio.effect@2.0 \
|
||||
android.hardware.biometrics.fingerprint@2.1 \
|
||||
android.hardware.bluetooth@1.0 \
|
||||
android.hardware.boot@1.0 \
|
||||
android.hardware.broadcastradio@1.0 \
|
||||
android.hardware.broadcastradio@1.1 \
|
||||
android.hardware.camera.common@1.0 \
|
||||
android.hardware.camera.device@1.0 \
|
||||
android.hardware.camera.device@3.2 \
|
||||
android.hardware.camera.provider@2.4 \
|
||||
android.hardware.configstore@1.0 \
|
||||
android.hardware.contexthub@1.0 \
|
||||
android.hardware.drm@1.0 \
|
||||
android.hardware.gatekeeper@1.0 \
|
||||
android.hardware.gnss@1.0 \
|
||||
android.hardware.graphics.allocator@2.0 \
|
||||
android.hardware.graphics.common@1.0 \
|
||||
android.hardware.graphics.composer@2.1 \
|
||||
android.hardware.graphics.mapper@2.0 \
|
||||
android.hardware.ir@1.0 \
|
||||
android.hardware.keymaster@3.0 \
|
||||
android.hardware.light@2.0 \
|
||||
android.hardware.media@1.0 \
|
||||
android.hardware.media.omx@1.0 \
|
||||
android.hardware.media.omx@1.0-utils \
|
||||
android.hardware.memtrack@1.0 \
|
||||
android.hardware.nfc@1.0 \
|
||||
android.hardware.oemlock@1.0 \
|
||||
android.hardware.power@1.0 \
|
||||
android.hardware.radio@1.0 \
|
||||
android.hardware.radio.deprecated@1.0 \
|
||||
android.hardware.sensors@1.0 \
|
||||
android.hardware.soundtrigger@2.0 \
|
||||
android.hardware.thermal@1.0 \
|
||||
android.hardware.tv.cec@1.0 \
|
||||
android.hardware.tv.input@1.0 \
|
||||
android.hardware.usb@1.0 \
|
||||
android.hardware.vibrator@1.0 \
|
||||
android.hardware.vr@1.0 \
|
||||
android.hardware.weaver@1.0 \
|
||||
android.hardware.wifi@1.0 \
|
||||
android.hardware.wifi.supplicant@1.0 \
|
||||
android.hidl.allocator@1.0 \
|
||||
android.hidl.base@1.0 \
|
||||
android.hidl.manager@1.0 \
|
||||
android.hidl.memory@1.0 \
|
||||
|
||||
PRODUCT_PACKAGES += \
|
||||
libdynamic_sensor_ext \
|
||||
libaudioroute \
|
||||
libxml2 \
|
||||
libtinyalsa \
|
||||
libtinycompress \
|
||||
cplay \
|
||||
libion \
|
||||
|
||||
# WiFi
|
||||
# Note: Wifi HAL (android.hardware.wifi@1.0-service, wpa_supplicant,
|
||||
# and wpa_supplicant.conf) is not here. They are at vendor.img
|
||||
PRODUCT_PACKAGES += \
|
||||
libwpa_client \
|
||||
hostapd \
|
||||
hostapd_cli \
|
||||
wificond \
|
||||
wifilogd \
|
||||
|
||||
PRODUCT_SYSTEM_VERITY_PARTITION := /dev/block/bootdevice/by-name/system
|
||||
include build/make/target/product/treble_common.mk
|
||||
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
||||
|
|
|
@ -19,88 +19,7 @@
|
|||
# on the generic system image, place them in build/make/target/board/generic_arm64_ab/
|
||||
# system.prop.
|
||||
|
||||
PRODUCT_COPY_FILES := \
|
||||
device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml
|
||||
|
||||
#split selinux policy
|
||||
PRODUCT_FULL_TREBLE_OVERRIDE := true
|
||||
|
||||
# Some of HAL interface libraries are automatically added by the dependencies from
|
||||
# the framework. However, we list them all here to make it explicit and prevent
|
||||
# possible mistake.
|
||||
PRODUCT_PACKAGES := \
|
||||
android.frameworks.vr.composer@1.0 \
|
||||
android.hardware.audio@2.0 \
|
||||
android.hardware.audio.common@2.0 \
|
||||
android.hardware.audio.common@2.0-util \
|
||||
android.hardware.audio.effect@2.0 \
|
||||
android.hardware.biometrics.fingerprint@2.1 \
|
||||
android.hardware.bluetooth@1.0 \
|
||||
android.hardware.boot@1.0 \
|
||||
android.hardware.broadcastradio@1.0 \
|
||||
android.hardware.broadcastradio@1.1 \
|
||||
android.hardware.camera.common@1.0 \
|
||||
android.hardware.camera.device@1.0 \
|
||||
android.hardware.camera.device@3.2 \
|
||||
android.hardware.camera.provider@2.4 \
|
||||
android.hardware.configstore@1.0 \
|
||||
android.hardware.contexthub@1.0 \
|
||||
android.hardware.drm@1.0 \
|
||||
android.hardware.gatekeeper@1.0 \
|
||||
android.hardware.gnss@1.0 \
|
||||
android.hardware.graphics.allocator@2.0 \
|
||||
android.hardware.graphics.common@1.0 \
|
||||
android.hardware.graphics.composer@2.1 \
|
||||
android.hardware.graphics.mapper@2.0 \
|
||||
android.hardware.ir@1.0 \
|
||||
android.hardware.keymaster@3.0 \
|
||||
android.hardware.light@2.0 \
|
||||
android.hardware.media@1.0 \
|
||||
android.hardware.media.omx@1.0 \
|
||||
android.hardware.media.omx@1.0-utils \
|
||||
android.hardware.memtrack@1.0 \
|
||||
android.hardware.nfc@1.0 \
|
||||
android.hardware.power@1.0 \
|
||||
android.hardware.radio@1.0 \
|
||||
android.hardware.radio.deprecated@1.0 \
|
||||
android.hardware.sensors@1.0 \
|
||||
android.hardware.soundtrigger@2.0 \
|
||||
android.hardware.thermal@1.0 \
|
||||
android.hardware.tv.cec@1.0 \
|
||||
android.hardware.tv.input@1.0 \
|
||||
android.hardware.usb@1.0 \
|
||||
android.hardware.vibrator@1.0 \
|
||||
android.hardware.vr@1.0 \
|
||||
android.hardware.wifi@1.0 \
|
||||
android.hardware.wifi.supplicant@1.0 \
|
||||
android.hidl.allocator@1.0 \
|
||||
android.hidl.base@1.0 \
|
||||
android.hidl.manager@1.0 \
|
||||
android.hidl.memory@1.0 \
|
||||
|
||||
PRODUCT_PACKAGES += \
|
||||
libdynamic_sensor_ext \
|
||||
libaudioroute \
|
||||
libxml2 \
|
||||
libtinyalsa \
|
||||
libtinycompress \
|
||||
cplay \
|
||||
libion \
|
||||
|
||||
# WiFi
|
||||
# Note: Wifi HAL (android.hardware.wifi@1.0-service, wpa_supplicant,
|
||||
# and wpa_supplicant.conf) is not here. They are at vendor.img
|
||||
PRODUCT_PACKAGES += \
|
||||
libwpa_client \
|
||||
hostapd \
|
||||
hostapd_cli \
|
||||
wificond \
|
||||
wifilogd \
|
||||
|
||||
# TODO(jiyong) move ims to vendor partition
|
||||
#PRODUCT_PACKAGES += ims
|
||||
|
||||
PRODUCT_SYSTEM_VERITY_PARTITION := /dev/block/bootdevice/by-name/system
|
||||
include build/make/target/product/treble_common.mk
|
||||
|
||||
AB_OTA_UPDATER := true
|
||||
AB_OTA_PARTITIONS := system
|
||||
|
|
|
@ -19,88 +19,7 @@
|
|||
# on the generic system image, place them in build/make/target/board/generic_arm_a/
|
||||
# system.prop.
|
||||
|
||||
PRODUCT_COPY_FILES := \
|
||||
device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml
|
||||
|
||||
#split selinux policy
|
||||
PRODUCT_FULL_TREBLE_OVERRIDE := true
|
||||
|
||||
# Some of HAL interface libraries are automatically added by the dependencies from
|
||||
# the framework. However, we list them all here to make it explicit and prevent
|
||||
# possible mistake.
|
||||
PRODUCT_PACKAGES := \
|
||||
android.dvr.composer@1.0 \
|
||||
android.hardware.audio@2.0 \
|
||||
android.hardware.audio.common@2.0 \
|
||||
android.hardware.audio.common@2.0-util \
|
||||
android.hardware.audio.effect@2.0 \
|
||||
android.hardware.biometrics.fingerprint@2.1 \
|
||||
android.hardware.bluetooth@1.0 \
|
||||
android.hardware.boot@1.0 \
|
||||
android.hardware.broadcastradio@1.0 \
|
||||
android.hardware.broadcastradio@1.1 \
|
||||
android.hardware.camera.common@1.0 \
|
||||
android.hardware.camera.device@1.0 \
|
||||
android.hardware.camera.device@3.2 \
|
||||
android.hardware.camera.provider@2.4 \
|
||||
android.hardware.configstore@1.0 \
|
||||
android.hardware.contexthub@1.0 \
|
||||
android.hardware.drm@1.0 \
|
||||
android.hardware.gatekeeper@1.0 \
|
||||
android.hardware.gnss@1.0 \
|
||||
android.hardware.graphics.allocator@2.0 \
|
||||
android.hardware.graphics.common@1.0 \
|
||||
android.hardware.graphics.composer@2.1 \
|
||||
android.hardware.graphics.mapper@2.0 \
|
||||
android.hardware.ir@1.0 \
|
||||
android.hardware.keymaster@3.0 \
|
||||
android.hardware.light@2.0 \
|
||||
android.hardware.media@1.0 \
|
||||
android.hardware.media.omx@1.0 \
|
||||
android.hardware.media.omx@1.0-utils \
|
||||
android.hardware.memtrack@1.0 \
|
||||
android.hardware.nfc@1.0 \
|
||||
android.hardware.oemlock@1.0 \
|
||||
android.hardware.power@1.0 \
|
||||
android.hardware.radio@1.0 \
|
||||
android.hardware.radio.deprecated@1.0 \
|
||||
android.hardware.sensors@1.0 \
|
||||
android.hardware.soundtrigger@2.0 \
|
||||
android.hardware.thermal@1.0 \
|
||||
android.hardware.tv.cec@1.0 \
|
||||
android.hardware.tv.input@1.0 \
|
||||
android.hardware.usb@1.0 \
|
||||
android.hardware.usb@1.1 \
|
||||
android.hardware.vibrator@1.0 \
|
||||
android.hardware.vr@1.0 \
|
||||
android.hardware.weaver@1.0 \
|
||||
android.hardware.wifi@1.0 \
|
||||
android.hardware.wifi.supplicant@1.0 \
|
||||
android.hidl.allocator@1.0 \
|
||||
android.hidl.base@1.0 \
|
||||
android.hidl.manager@1.0 \
|
||||
android.hidl.memory@1.0 \
|
||||
|
||||
PRODUCT_PACKAGES += \
|
||||
libdynamic_sensor_ext \
|
||||
libaudioroute \
|
||||
libxml2 \
|
||||
libtinyalsa \
|
||||
libtinycompress \
|
||||
cplay \
|
||||
libion \
|
||||
|
||||
# WiFi
|
||||
# Note: Wifi HAL (android.hardware.wifi@1.0-service, wpa_supplicant,
|
||||
# and wpa_supplicant.conf) is not here. They are at vendor.img
|
||||
PRODUCT_PACKAGES += \
|
||||
libwpa_client \
|
||||
hostapd \
|
||||
hostapd_cli \
|
||||
wificond \
|
||||
wifilogd \
|
||||
|
||||
PRODUCT_SYSTEM_VERITY_PARTITION := /dev/block/bootdevice/by-name/system
|
||||
include build/make/target/product/treble_common.mk
|
||||
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/verity.mk)
|
||||
|
|
|
@ -0,0 +1,183 @@
|
|||
#
|
||||
# Copyright (C) 2017 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.
|
||||
#
|
||||
|
||||
# Split selinux policy
|
||||
PRODUCT_FULL_TREBLE_OVERRIDE := true
|
||||
|
||||
# HAL interfaces:
|
||||
# Some of HAL interface libraries are automatically added by the dependencies
|
||||
# from the framework. However, we list them all here to make it explicit and
|
||||
# prevent possible mistake.
|
||||
PRODUCT_PACKAGES := \
|
||||
android.frameworks.schedulerservice@1.0 \
|
||||
android.frameworks.sensorservice@1.0 \
|
||||
android.frameworks.vr.composer@1.0 \
|
||||
android.hardware.audio@2.0 \
|
||||
android.hardware.audio.common@2.0 \
|
||||
android.hardware.audio.common@2.0-util \
|
||||
android.hardware.audio.effect@2.0 \
|
||||
android.hardware.biometrics.fingerprint@2.1 \
|
||||
android.hardware.bluetooth@1.0 \
|
||||
android.hardware.boot@1.0 \
|
||||
android.hardware.broadcastradio@1.0 \
|
||||
android.hardware.broadcastradio@1.1 \
|
||||
android.hardware.camera.common@1.0 \
|
||||
android.hardware.camera.device@1.0 \
|
||||
android.hardware.camera.device@3.2 \
|
||||
android.hardware.camera.provider@2.4 \
|
||||
android.hardware.configstore-utils \
|
||||
android.hardware.configstore@1.0 \
|
||||
android.hardware.contexthub@1.0 \
|
||||
android.hardware.drm@1.0 \
|
||||
android.hardware.dumpstate@1.0 \
|
||||
android.hardware.gatekeeper@1.0 \
|
||||
android.hardware.gnss@1.0 \
|
||||
android.hardware.graphics.allocator@2.0 \
|
||||
android.hardware.graphics.bufferqueue@1.0 \
|
||||
android.hardware.graphics.common@1.0 \
|
||||
android.hardware.graphics.composer@2.1 \
|
||||
android.hardware.graphics.mapper@2.0 \
|
||||
android.hardware.health@1.0 \
|
||||
android.hardware.ir@1.0 \
|
||||
android.hardware.keymaster@3.0 \
|
||||
android.hardware.light@2.0 \
|
||||
android.hardware.media@1.0 \
|
||||
android.hardware.media.omx@1.0 \
|
||||
android.hardware.memtrack@1.0 \
|
||||
android.hardware.nfc@1.0 \
|
||||
android.hardware.oemlock@1.0 \
|
||||
android.hardware.power@1.0 \
|
||||
android.hardware.radio@1.0 \
|
||||
android.hardware.radio.deprecated@1.0 \
|
||||
android.hardware.sensors@1.0 \
|
||||
android.hardware.soundtrigger@2.0 \
|
||||
android.hardware.thermal@1.0 \
|
||||
android.hardware.tv.cec@1.0 \
|
||||
android.hardware.tv.input@1.0 \
|
||||
android.hardware.usb@1.0 \
|
||||
android.hardware.usb@1.1 \
|
||||
android.hardware.vibrator@1.0 \
|
||||
android.hardware.vr@1.0 \
|
||||
android.hardware.weaver@1.0 \
|
||||
android.hardware.wifi@1.0 \
|
||||
android.hardware.wifi.supplicant@1.0 \
|
||||
android.hidl.allocator@1.0 \
|
||||
android.hidl.base@1.0 \
|
||||
android.hidl.manager@1.0 \
|
||||
android.hidl.memory@1.0 \
|
||||
android.hidl.token@1.0 \
|
||||
android.system.wifi.keystore@1.0 \
|
||||
|
||||
# VNDK:
|
||||
# Some VNDK shared objects are automatically included indirectly.
|
||||
# We list them all here to make it explicit and prevent possible mistakes.
|
||||
# An example of one such mistake was libcurl, which is included in A/B
|
||||
# devices because of update_engine, but not in non-A/B devices.
|
||||
PRODUCT_PACKAGES += \
|
||||
libaudioroute \
|
||||
libaudioutils \
|
||||
libbinder \
|
||||
libcamera_metadata \
|
||||
libcap \
|
||||
libcrypto \
|
||||
libcrypto_utils \
|
||||
libcups \
|
||||
libcurl \
|
||||
libdiskconfig \
|
||||
libdumpstateutil \
|
||||
libevent \
|
||||
libexif \
|
||||
libexpat \
|
||||
libfmq \
|
||||
libgatekeeper \
|
||||
libgui \
|
||||
libhardware_legacy \
|
||||
libhidlmemory \
|
||||
libicui18n \
|
||||
libicuuc \
|
||||
libjpeg \
|
||||
libkeymaster1 \
|
||||
libkeymaster_messages \
|
||||
libldacBT_abr \
|
||||
libldacBT_enc \
|
||||
liblz4 \
|
||||
libmdnssd \
|
||||
libmemtrack \
|
||||
libmemunreachable \
|
||||
libmetricslogger \
|
||||
libminijail \
|
||||
libnetutils \
|
||||
libnl \
|
||||
libopus \
|
||||
libpagemap \
|
||||
libpcap \
|
||||
libpcre2 \
|
||||
libpcrecpp \
|
||||
libpdfium \
|
||||
libpiex \
|
||||
libpower \
|
||||
libprocessgroup \
|
||||
libprocinfo \
|
||||
libprotobuf-cpp-full \
|
||||
libprotobuf-cpp-lite \
|
||||
libradio_metadata \
|
||||
libsoftkeymasterdevice \
|
||||
libsonic \
|
||||
libsonivox \
|
||||
libspeexresampler \
|
||||
libsqlite \
|
||||
libssl \
|
||||
libsuspend \
|
||||
libsysutils \
|
||||
libtinyalsa \
|
||||
libtinyxml2 \
|
||||
libui \
|
||||
libusbhost \
|
||||
libvixl-arm \
|
||||
libvixl-arm64 \
|
||||
libvorbisidec \
|
||||
libwebrtc_audio_preprocessing \
|
||||
libxml2 \
|
||||
libziparchive \
|
||||
|
||||
# VNDK-SP:
|
||||
PRODUCT_PACKAGES += \
|
||||
vndk-sp \
|
||||
|
||||
PRODUCT_SYSTEM_VERITY_PARTITION := /dev/block/bootdevice/by-name/system
|
||||
|
||||
# Wifi:
|
||||
# Wifi HAL (android.hardware.wifi@1.0-service, wpa_supplicant,
|
||||
# and wpa_supplicant.conf) is not here. They are in vendor.img
|
||||
PRODUCT_PACKAGES += \
|
||||
wificond \
|
||||
|
||||
# Audio:
|
||||
USE_XML_AUDIO_POLICY_CONF := 1
|
||||
# The following policy XML files are used as fallback for
|
||||
# vendors/devices not using XML to configure audio policy.
|
||||
PRODUCT_COPY_FILES += \
|
||||
frameworks/av/services/audiopolicy/config/audio_policy_configuration.xml:system/etc/audio_policy_configuration.xml \
|
||||
frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:system/etc/a2dp_audio_policy_configuration.xml \
|
||||
frameworks/av/services/audiopolicy/config/usb_audio_policy_configuration.xml:system/etc/usb_audio_policy_configuration.xml \
|
||||
frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:system/etc/r_submix_audio_policy_configuration.xml \
|
||||
frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:system/etc/audio_policy_volumes.xml \
|
||||
frameworks/av/services/audiopolicy/config/default_volume_tables.xml:system/etc/default_volume_tables.xml \
|
||||
|
||||
# May need to review why the followings are needed in generic system image.
|
||||
PRODUCT_COPY_FILES := \
|
||||
device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml
|
||||
|
Loading…
Reference in New Issue