android_device_tecno_LG8n/device.mk
Shirayuki39 fd37a4aa71 LG8n: build some libs
Signed-off-by: Shirayuki39 <lorddemecrius83@proton.me>
2024-07-17 07:50:37 +08:00

434 lines
17 KiB
Makefile

#
# Copyright (C) 2023 The LineageOS Project
#
# SPDX-License-Identifier: Apache-2.0
#
# A/B
$(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota/launch_with_vendor_ramdisk.mk)
AB_OTA_UPDATER := true
AB_OTA_PARTITIONS := \
boot \
odm_dlkm \
product \
system \
system_ext \
vbmeta \
vbmeta_system \
vbmeta_vendor \
vendor \
vendor_boot \
vendor_dlkm
AB_OTA_POSTINSTALL_CONFIG += \
RUN_POSTINSTALL_system=true \
POSTINSTALL_PATH_system=system/bin/otapreopt_script \
FILESYSTEM_TYPE_system=$(BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE) \
POSTINSTALL_OPTIONAL_system=true
AB_OTA_POSTINSTALL_CONFIG += \
RUN_POSTINSTALL_vendor=true \
POSTINSTALL_PATH_vendor=bin/checkpoint_gc \
FILESYSTEM_TYPE_vendor=$(BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE) \
POSTINSTALL_OPTIONAL_vendor=true
PRODUCT_PACKAGES += \
update_engine \
update_engine_sideload \
update_verifier \
otapreopt_script \
checkpoint_gc
# Allow userspace reboots
$(call inherit-product, $(SRC_TARGET_DIR)/product/userspace_reboot.mk)
# AAPT
PRODUCT_AAPT_CONFIG := normal
PRODUCT_AAPT_PREF_CONFIG := xxhdpi
# Audio
PRODUCT_PACKAGES += \
android.hardware.audio.service \
android.hardware.audio.effect@7.0-impl \
android.hardware.audio@7.0-impl \
android.hardware.soundtrigger@2.3-impl
PRODUCT_PACKAGES += \
audio.primary.default \
audio.r_submix.default \
audio.usb.default \
audio_policy.stub
PRODUCT_PACKAGES += \
libalsautils \
libaudiofoundation.vendor \
libdynproc \
libhapticgenerator
PRODUCT_COPY_FILES += \
$(call find-copy-subdir-files,*,$(LOCAL_PATH)/configs/audio/,$(TARGET_COPY_OUT_VENDOR)/etc)
PRODUCT_COPY_FILES += \
frameworks/av/services/audiopolicy/config/a2dp_in_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_in_audio_policy_configuration.xml \
frameworks/av/services/audiopolicy/config/bluetooth_audio_policy_configuration_7_0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/bluetooth_audio_policy_configuration.xml \
frameworks/av/services/audiopolicy/config/r_submix_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/r_submix_audio_policy_configuration.xml
# Bluetooth
PRODUCT_PACKAGES += \
android.hardware.bluetooth.audio-impl \
android.hardware.bluetooth@1.1.vendor \
audio.bluetooth.default \
libbluetooth_audio_session
# Boot control HAL
PRODUCT_PACKAGES += \
android.hardware.boot@1.2-service \
android.hardware.boot@1.2-impl:64 \
android.hardware.boot@1.2-impl.recovery
# Camera
PRODUCT_PACKAGES += \
android.hardware.camera.common@1.0.vendor \
android.hardware.camera.device@3.6.vendor \
android.hardware.camera.provider@2.6.vendor
PRODUCT_PACKAGES += \
libdng_sdk.vendor
# CAS
PRODUCT_PACKAGES += \
android.hardware.cas@1.2-service-lazy
# Codec2 modules
PRODUCT_PACKAGES += \
com.android.media.swcodec \
libsfplugin_ccodec
# Disable SF configstore
PRODUCT_PACKAGES += \
disable_configstore
# Cgroup
PRODUCT_COPY_FILES += \
system/core/libprocessgroup/profiles/cgroups_30.json:$(TARGET_COPY_OUT_VENDOR)/etc/cgroups.json \
$(LOCAL_PATH)/configs/task_profiles.json:$(TARGET_COPY_OUT_VENDOR)/etc/task_profiles.json
# Dalvik configs
$(call inherit-product, frameworks/native/build/phone-xhdpi-6144-dalvik-heap.mk)
# DebugFS
PRODUCT_SET_DEBUGFS_RESTRICTIONS := true
# Display
PRODUCT_PACKAGES += \
android.hardware.graphics.composer@2.3-service \
android.hardware.memtrack-service.mediatek-mali
PRODUCT_PACKAGES += \
android.hardware.graphics.allocator@4.0.vendor \
libdrm.vendor \
libutils-v32
# DRM
PRODUCT_PACKAGES += \
android.hardware.drm@1.4-service.clearkey
PRODUCT_PACKAGES += \
android.hardware.drm@1.4.vendor
# Dynamic partitions
PRODUCT_USE_DYNAMIC_PARTITIONS := true
# Dex
PRODUCT_DEXPREOPT_SPEED_APPS += \
Settings \
SystemUI \
SystemUIGoogle
# Enforce generic ramdisk allow list
$(call inherit-product, $(SRC_TARGET_DIR)/product/generic_ramdisk.mk)
# FastbootD
PRODUCT_PACKAGES += \
android.hardware.fastboot@1.1-impl-mock \
fastbootd
# Fingerprint
PRODUCT_PACKAGES += \
android.hardware.biometrics.fingerprint@2.1.vendor:64
# Gatekeeper
PRODUCT_PACKAGES += \
android.hardware.gatekeeper@1.0-impl \
android.hardware.gatekeeper@1.0-service
# GNSS
PRODUCT_PACKAGES += \
android.hardware.gnss.measurement_corrections@1.1.vendor \
android.hardware.gnss.visibility_control@1.0.vendor \
android.hardware.gnss@1.1.vendor \
android.hardware.gnss@2.1.vendor \
android.hardware.gnss-V1-ndk.vendor
# Health
PRODUCT_PACKAGES += \
android.hardware.health@2.1-service \
android.hardware.health@2.1-impl \
android.hardware.health@2.1-impl.recovery
# HIDL
PRODUCT_PACKAGES += \
android.hidl.allocator@1.0.vendor \
libhidltransport \
libhidltransport.vendor \
libhwbinder.vendor
# IMS
PRODUCT_BOOT_JARS += \
mediatek-common \
mediatek-framework \
mediatek-ims-base \
mediatek-ims-common \
mediatek-telecom-common \
mediatek-telephony-base \
mediatek-telephony-common
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/privapp-permissions-com.mediatek.ims.xml:$(TARGET_COPY_OUT_SYSTEM)/etc/permissions/privapp-permissions-com.mediatek.ims.xml
# Init files
PRODUCT_PACKAGES += \
fstab.mt6789 \
fstab.mt6789.vendor_ramdisk \
init_connectivity.rc \
init.aee.rc \
init.cgroup.rc \
init.connectivity.common.rc \
init.connectivity.rc \
init.insmod.sh \
init.insmod.mt6789.cfg \
init.modem.rc \
init.mt6789.rc \
init.mt6789.usb.rc \
init.mtkgki.rc \
init.project.rc \
init.recovery.usb.rc \
init.sensor_2_0.rc \
ueventd.mt6789.rc
# Include GSI keys
$(call inherit-product, $(SRC_TARGET_DIR)/product/developer_gsi_keys.mk)
# Keylayout
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/keylayout/mtk-tpd.kl:$(TARGET_COPY_OUT_VENDOR)/usr/keylayout/mtk-tpd.kl
# Keymaster
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.keystore.app_attest_key.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.keystore.app_attest_key.xml
# Keymint
PRODUCT_PACKAGES += \
android.hardware.security.keymint-V1-ndk_platform.vendor \
android.hardware.security.secureclock-V1-ndk_platform.vendor \
android.hardware.security.sharedsecret-V1-ndk_platform.vendor \
libcppbor_external.vendor:64
# Lights
PRODUCT_PACKAGES += \
android.hardware.light-V1-ndk.vendor
# Media
PRODUCT_PACKAGES += \
libcodec2_hidl@1.1.vendor \
libcodec2_hidl@1.2.vendor \
libavservices_minijail_vendor \
libstagefright_softomx_plugin.vendor \
libsfplugin_ccodec_utils.vendor \
libcodec2_soft_common.vendor \
libflatbuffers-cpp.vendor
PRODUCT_COPY_FILES += \
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
frameworks/av/media/libstagefright/data/media_codecs_google_video_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video_le.xml
PRODUCT_COPY_FILES += \
$(call find-copy-subdir-files,*,$(LOCAL_PATH)/configs/seccomp,$(TARGET_COPY_OUT_VENDOR)/etc/seccomp_policy) \
$(call find-copy-subdir-files,*,$(LOCAL_PATH)/configs/media,$(TARGET_COPY_OUT_VENDOR)/etc)
# Misc
PRODUCT_PACKAGES += \
libchrome.vendor \
libtextclassifier_hash.vendor
# MTK In-call service
PRODUCT_PACKAGES += \
MtkInCallService
# Neural networks
PRODUCT_PACKAGES += \
android.hardware.neuralnetworks@1.0.vendor \
android.hardware.neuralnetworks@1.3.vendor
# NFC
PRODUCT_PACKAGES += \
android.hardware.nfc@1.2.vendor \
com.android.nfc_extras \
NfcNci \
SecureElement \
Tag
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/nfc/libnfc-nci.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nci.conf \
$(LOCAL_PATH)/configs/nfc/libnfc-nxp.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-nxp.conf \
$(LOCAL_PATH)/configs/nfc/libnfc-slm.conf:$(TARGET_COPY_OUT_VENDOR)/etc/libnfc-slm.conf \
$(LOCAL_PATH)/configs/nfc/libnfc-nxp_RF.conf:$(TARGET_COPY_OUT_VENDOR)/libnfc-nxp_RF.conf
# Overlays
PRODUCT_PACKAGES += \
CarrierConfigOverlay \
FrameworksResOverlay \
SettingsResOverlay \
TelephonyOverlay
# Permissions
PRODUCT_COPY_FILES += \
frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml \
frameworks/native/data/etc/android.hardware.bluetooth.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth.xml \
frameworks/native/data/etc/android.hardware.bluetooth_le.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.bluetooth_le.xml \
frameworks/native/data/etc/android.hardware.camera.flash-autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.flash-autofocus.xml \
frameworks/native/data/etc/android.hardware.camera.front.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.front.xml \
frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
frameworks/native/data/etc/android.hardware.camera.raw.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.raw.xml \
frameworks/native/data/etc/android.hardware.camera.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.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.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml \
frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml \
frameworks/native/data/etc/android.hardware.nfc.hce.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hce.xml \
frameworks/native/data/etc/android.hardware.nfc.hcef.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.hcef.xml \
frameworks/native/data/etc/android.hardware.nfc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.nfc.xml \
frameworks/native/data/etc/android.hardware.opengles.aep.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.opengles.aep.xml \
frameworks/native/data/etc/android.hardware.sensor.accelerometer.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.accelerometer.xml \
frameworks/native/data/etc/android.hardware.sensor.compass.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.compass.xml \
frameworks/native/data/etc/android.hardware.sensor.gyroscope.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.gyroscope.xml \
frameworks/native/data/etc/android.hardware.sensor.light.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.light.xml \
frameworks/native/data/etc/android.hardware.sensor.proximity.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.proximity.xml \
frameworks/native/data/etc/android.hardware.sensor.stepcounter.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepcounter.xml \
frameworks/native/data/etc/android.hardware.sensor.stepdetector.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.sensor.stepdetector.xml \
frameworks/native/data/etc/android.hardware.se.omapi.uicc.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.se.omapi.uicc.xml \
frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
frameworks/native/data/etc/android.hardware.telephony.ims.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.ims.xml \
frameworks/native/data/etc/android.hardware.touchscreen.multitouch.distinct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.distinct.xml \
frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \
frameworks/native/data/etc/android.hardware.touchscreen.multitouch.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.xml \
frameworks/native/data/etc/android.hardware.touchscreen.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.xml \
frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml \
frameworks/native/data/etc/android.hardware.usb.host.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.host.xml \
frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute.xml \
frameworks/native/data/etc/android.hardware.vulkan.level-1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level.xml \
frameworks/native/data/etc/android.hardware.vulkan.version-1_1.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version.xml \
frameworks/native/data/etc/android.hardware.wifi.direct.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.direct.xml \
frameworks/native/data/etc/android.hardware.wifi.passpoint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.passpoint.xml \
frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
frameworks/native/data/etc/android.software.ipsec_tunnels.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.ipsec_tunnels.xml \
frameworks/native/data/etc/android.software.midi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.midi.xml \
frameworks/native/data/etc/android.software.opengles.deqp.level-2020-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.opengles.deqp.level.xml \
frameworks/native/data/etc/android.software.verified_boot.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.verified_boot.xml \
frameworks/native/data/etc/android.software.vulkan.deqp.level-2020-03-01.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.vulkan.deqp.level.xml \
frameworks/native/data/etc/com.nxp.mifare.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/com.nxp.mifare.xml \
frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml
# Power
PRODUCT_PACKAGES += \
android.hardware.power-service-mediatek \
android.hardware.power-V2-ndk.vendor \
android.hardware.power@1.2.vendor \
libmtkperf_client_vendor \
vendor.mediatek.hardware.mtkpower@1.0.vendor \
vendor.mediatek.hardware.mtkpower@1.1.vendor \
vendor.mediatek.hardware.mtkpower@1.2.vendor
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/perf/power_app_cfg.xml:$(TARGET_COPY_OUT_VENDOR)/etc/power_app_cfg.xml \
$(LOCAL_PATH)/configs/perf/powercontable.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powercontable.xml \
$(LOCAL_PATH)/configs/perf/powerscntbl.xml:$(TARGET_COPY_OUT_VENDOR)/etc/powerscntbl.xml
# Project ID Quota
$(call inherit-product, $(SRC_TARGET_DIR)/product/emulated_storage.mk)
# PowerOffAlarm
PRODUCT_PACKAGES += \
PowerOffAlarm
# Properties
include $(LOCAL_PATH)/vendor_logtag.mk
# Public Libraries
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt
# Radio
PRODUCT_PACKAGES += \
android.hardware.radio.config@1.3.vendor \
android.hardware.radio@1.6.vendor
# Secure Element
PRODUCT_PACKAGES += \
android.hardware.secure_element@1.2.vendor
# Sensors
PRODUCT_PACKAGES += \
libsensorndkbridge \
android.hardware.sensors@1.0.vendor \
android.hardware.sensors@2.1.vendor \
android.frameworks.sensorservice@1.0.vendor \
android.hardware.sensors@2.1-service.multihal \
android.hardware.sensors@2.0-ScopedWakelock.vendor
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/configs/sensors/hals.conf:$(TARGET_COPY_OUT_VENDOR)/etc/sensors/hals.conf
# Shipping API level
PRODUCT_SHIPPING_API_LEVEL := 31
# Soong namespaces
PRODUCT_SOONG_NAMESPACES += \
$(LOCAL_PATH) \
hardware/mediatek \
hardware/transsion
# Thermal
PRODUCT_PACKAGES += \
android.hardware.thermal@2.0.vendor
# Updatable APEXes
$(call inherit-product, $(SRC_TARGET_DIR)/product/updatable_apex.mk)
# USB
PRODUCT_PACKAGES += \
android.hardware.usb-service.transsion
# VNDK
PRODUCT_PACKAGES += \
libutils-v31 \
libhidlbase-v31 \
libbinder-v31
# Wi-Fi
PRODUCT_PACKAGES += \
wpa_supplicant \
hostapd \
android.hardware.wifi@1.0-service-lazy
PRODUCT_PACKAGES += \
android.hardware.tetheroffload.config@1.0.vendor \
android.hardware.tetheroffload.control@1.0.vendor \
android.hardware.tetheroffload.control@1.1.vendor
PRODUCT_COPY_FILES += \
$(call find-copy-subdir-files,*,$(LOCAL_PATH)/configs/wifi/,$(TARGET_COPY_OUT_VENDOR)/etc/wifi)
# Inherit the proprietary files
$(call inherit-product, vendor/tecno/LG8n/LG8n-vendor.mk)