sm8450-common: Sync extract scripts with templates

Change-Id: I98a36854c5a0c0390592911bb2558b34eff77efc
This commit is contained in:
Michael Bestas 2024-08-27 22:05:28 +03:00 committed by Arian
parent 566a47edfa
commit 05e15b74f1
2 changed files with 49 additions and 28 deletions

View file

@ -1,8 +1,7 @@
#!/bin/bash #!/bin/bash
# #
# Copyright (C) 2016 The CyanogenMod Project # SPDX-FileCopyrightText: 2016 The CyanogenMod Project
# Copyright (C) 2017-2023 The LineageOS Project # SPDX-FileCopyrightText: 2017-2024 The LineageOS Project
#
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
@ -15,6 +14,10 @@ if [[ ! -d "${MY_DIR}" ]]; then MY_DIR="${PWD}"; fi
ANDROID_ROOT="${MY_DIR}/../../.." ANDROID_ROOT="${MY_DIR}/../../.."
export TARGET_ENABLE_CHECKELF="true" export TARGET_ENABLE_CHECKELF="true"
# If XML files don't have comments before the XML header, use this flag
# Can still be used with broken XML files by using blob_fixup
export TARGET_DISABLE_XML_FIXING=true
HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh" HELPER="${ANDROID_ROOT}/tools/extract-utils/extract_utils.sh"
if [ ! -f "${HELPER}" ]; then if [ ! -f "${HELPER}" ]; then
echo "Unable to find helper script at ${HELPER}" echo "Unable to find helper script at ${HELPER}"
@ -30,6 +33,7 @@ ONLY_FIRMWARE=
ONLY_TARGET= ONLY_TARGET=
KANG= KANG=
SECTION= SECTION=
CARRIER_SKIP_FILES=()
while [ "${#}" -gt 0 ]; do while [ "${#}" -gt 0 ]; do
case "${1}" in case "${1}" in
@ -49,7 +53,8 @@ while [ "${#}" -gt 0 ]; do
KANG="--kang" KANG="--kang"
;; ;;
-s | --section) -s | --section)
SECTION="${2}"; shift SECTION="${2}"
shift
CLEAN_VENDOR=false CLEAN_VENDOR=false
;; ;;
*) *)
@ -66,33 +71,50 @@ fi
function blob_fixup() { function blob_fixup() {
case "${1}" in case "${1}" in
system_ext/lib64/libwfdservice.so) system_ext/lib64/libwfdservice.so)
[ "$2" = "" ] && return 0
"${PATCHELF_0_17_2}" --replace-needed "android.media.audio.common.types-V2-cpp.so" "android.media.audio.common.types-V3-cpp.so" "${2}" "${PATCHELF_0_17_2}" --replace-needed "android.media.audio.common.types-V2-cpp.so" "android.media.audio.common.types-V3-cpp.so" "${2}"
;; ;;
vendor/bin/hw/android.hardware.security.keymint-service-qti|vendor/lib64/libqtikeymint.so) vendor/bin/hw/android.hardware.security.keymint-service-qti|vendor/lib64/libqtikeymint.so)
[ "$2" = "" ] && return 0
"${PATCHELF_0_17_2}" --replace-needed "android.hardware.security.keymint-V1-ndk_platform.so" "android.hardware.security.keymint-V1-ndk.so" "${2}" "${PATCHELF_0_17_2}" --replace-needed "android.hardware.security.keymint-V1-ndk_platform.so" "android.hardware.security.keymint-V1-ndk.so" "${2}"
"${PATCHELF_0_17_2}" --replace-needed "android.hardware.security.secureclock-V1-ndk_platform.so" "android.hardware.security.secureclock-V1-ndk.so" "${2}" "${PATCHELF_0_17_2}" --replace-needed "android.hardware.security.secureclock-V1-ndk_platform.so" "android.hardware.security.secureclock-V1-ndk.so" "${2}"
"${PATCHELF_0_17_2}" --replace-needed "android.hardware.security.sharedsecret-V1-ndk_platform.so" "android.hardware.security.sharedsecret-V1-ndk.so" "${2}" "${PATCHELF_0_17_2}" --replace-needed "android.hardware.security.sharedsecret-V1-ndk_platform.so" "android.hardware.security.sharedsecret-V1-ndk.so" "${2}"
grep -q "android.hardware.security.rkp-V1-ndk.so" "${2}" || "${PATCHELF_0_17_2}" --add-needed "android.hardware.security.rkp-V1-ndk.so" "${2}" grep -q "android.hardware.security.rkp-V1-ndk.so" "${2}" || "${PATCHELF_0_17_2}" --add-needed "android.hardware.security.rkp-V1-ndk.so" "${2}"
;; ;;
vendor/bin/qcc-trd) vendor/bin/qcc-trd)
[ "$2" = "" ] && return 0
"${PATCHELF_0_17_2}" --replace-needed "libgrpc++_unsecure.so" "libgrpc++_unsecure_prebuilt.so" "${2}" "${PATCHELF_0_17_2}" --replace-needed "libgrpc++_unsecure.so" "libgrpc++_unsecure_prebuilt.so" "${2}"
;; ;;
vendor/etc/media_codecs_c2_audio.xml) vendor/etc/media_codecs_c2_audio.xml)
[ "$2" = "" ] && return 0
sed -i '/media_codecs_dolby_audio/d' "${2}" sed -i '/media_codecs_dolby_audio/d' "${2}"
;; ;;
vendor/etc/media_codecs_cape.xml|vendor/etc/media_codecs_diwali_v0.xml|vendor/etc/media_codecs_diwali_v1.xml|vendor/etc/media_codecs_diwali_v2.xml|vendor/etc/media_codecs_taro.xml|vendor/etc/media_codecs_ukee.xml) vendor/etc/media_codecs_cape.xml|vendor/etc/media_codecs_diwali_v0.xml|vendor/etc/media_codecs_diwali_v1.xml|vendor/etc/media_codecs_diwali_v2.xml|vendor/etc/media_codecs_taro.xml|vendor/etc/media_codecs_ukee.xml)
[ "$2" = "" ] && return 0
sed -i -E '/media_codecs_(google_audio|google_c2|google_telephony|vendor_audio)/d' "${2}" sed -i -E '/media_codecs_(google_audio|google_c2|google_telephony|vendor_audio)/d' "${2}"
;; ;;
vendor/etc/qcril_database/upgrade/config/6.0_config.sql) vendor/etc/qcril_database/upgrade/config/6.0_config.sql)
[ "$2" = "" ] && return 0
sed -i '/persist.vendor.radio.redir_party_num/ s/true/false/g' "${2}" sed -i '/persist.vendor.radio.redir_party_num/ s/true/false/g' "${2}"
;; ;;
vendor/etc/vintf/manifest/c2_manifest_vendor.xml) vendor/etc/vintf/manifest/c2_manifest_vendor.xml)
[ "$2" = "" ] && return 0
sed -i '/dolby/d' "${2}" sed -i '/dolby/d' "${2}"
;; ;;
vendor/lib64/libgrpc++_unsecure_prebuilt.so) vendor/lib64/libgrpc++_unsecure_prebuilt.so)
[ "$2" = "" ] && return 0
"${PATCHELF_0_17_2}" --set-soname "libgrpc++_unsecure_prebuilt.so" "${2}" "${PATCHELF_0_17_2}" --set-soname "libgrpc++_unsecure_prebuilt.so" "${2}"
;; ;;
*)
return 1
;;
esac esac
return 0
}
function blob_fixup_dry() {
blob_fixup "$1" ""
} }
if [ -z "${ONLY_FIRMWARE}" ] && [ -z "${ONLY_TARGET}" ]; then if [ -z "${ONLY_FIRMWARE}" ] && [ -z "${ONLY_TARGET}" ]; then

View file

@ -1,8 +1,7 @@
#!/bin/bash #!/bin/bash
# #
# Copyright (C) 2016 The CyanogenMod Project # SPDX-FileCopyrightText: 2016 The CyanogenMod Project
# Copyright (C) 2017-2023 The LineageOS Project # SPDX-FileCopyrightText: 2017-2024 The LineageOS Project
#
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #