platform_build/target/product/gsi_common.mk
SzuWei Lin 323be83a66 Enable mainline checking for all GSI targets
There are some makefile inherit from aosp_$arch*.mk. This patch
change to only enable mainline checking on excat GSI targets,
such as aosp_$arch or aosp_$arch_(a|ab), and does not apply on
the child targets.

This patch also add some more whitelist items to gsi_common.mk

Bug: 123613261
Test: aosp_arm64-userdebug build pass
Test: remove some whitelist items and aosp_arm64-userdebug build fail
Test: sdk_phone_arm64-eng build pass
Test: gsi_arm64-userdebug build pass
Change-Id: I1772a55ab823a0312b9f215f0d2c3b0c727c8e4b
2019-02-01 15:30:28 +08:00

99 lines
3.3 KiB
Makefile

#
# Copyright (C) 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.
#
$(call inherit-product, $(SRC_TARGET_DIR)/product/mainline_system.mk)
# GSI includes all AOSP product packages and placed under /system/product
$(call inherit-product, $(SRC_TARGET_DIR)/product/handheld_product.mk)
$(call inherit-product, $(SRC_TARGET_DIR)/product/telephony_product.mk)
# Default AOSP sounds
$(call inherit-product-if-exists, frameworks/base/data/sounds/AllAudio.mk)
# Additional settings used in all AOSP builds
PRODUCT_PROPERTY_OVERRIDES := \
ro.config.ringtone=Ring_Synth_04.ogg \
ro.config.notification_sound=pixiedust.ogg
# The mainline checking whitelist, should be clean up
PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST := \
system/app/messaging/messaging.apk \
system/app/PhotoTable/PhotoTable.apk \
system/app/WAPPushManager/WAPPushManager.apk \
system/bin/healthd \
system/etc/init/healthd.rc \
system/etc/seccomp_policy/crash_dump.%.policy \
system/etc/seccomp_policy/mediacodec.policy \
system/etc/vintf/manifest/manifest_healthd.xml \
system/lib/libframesequence.so \
system/lib/libgiftranscode.so \
system/lib64/libframesequence.so \
system/lib64/libgiftranscode.so \
system/priv-app/Dialer/Dialer.apk \
# Some GSI builds enable dexpreopt, whitelist these preopt files
PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST += %.odex %.vdex %.art
# Exclude GSI specific files
PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST += \
system/etc/init/config/skip_mount.cfg \
system/etc/init/init.gsi.rc \
# Exclude all files under system/product and system/product_services
PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST += \
system/product/% \
system/product_services/%
# Split selinux policy
PRODUCT_FULL_TREBLE_OVERRIDE := true
# Enable dynamic partition size
PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
# Enable A/B update
AB_OTA_UPDATER := true
AB_OTA_PARTITIONS := system
# Needed by Pi newly launched device to pass VtsTrebleSysProp on GSI
PRODUCT_COMPATIBLE_PROPERTY_OVERRIDE := true
# GSI specific tasks on boot
PRODUCT_COPY_FILES += \
build/make/target/product/gsi/skip_mount.cfg:system/etc/init/config/skip_mount.cfg \
build/make/target/product/gsi/init.gsi.rc:system/etc/init/init.gsi.rc \
# Support addtional P vendor interface
PRODUCT_EXTRA_VNDK_VERSIONS := 28
# Default AOSP packages
PRODUCT_PACKAGES += \
messaging \
# Default AOSP packages
PRODUCT_PACKAGES += \
PhotoTable \
WAPPushManager \
# Telephony:
# Provide a APN configuration to GSI product
PRODUCT_COPY_FILES += \
device/sample/etc/apns-full-conf.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/apns-conf.xml
# NFC:
# Provide a libnfc-nci.conf to GSI product
PRODUCT_COPY_FILES += \
device/generic/common/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_PRODUCT)/etc/libnfc-nci.conf