Files
device_xiaomi_miuicamera-venus/extract-files.py
Arian 1a7b7446ba miuicamera-venus: Patch algo jni lib to use correct Surface::connect method
In android 15 QPR1, Google has removed a public method of the Surface class.
Our jni lib used that method and relies on the offset remaining the same, so
patch the lib to load it with the smaller offset.
6a5fdc1d5f

Change-Id: I97e7ca9f24adad3ede69b599f8d44fdc96646048
Signed-off-by: ralph950412 <ralph950412@gmail.com>
2025-01-22 13:51:26 +01:00

55 lines
1.4 KiB
Python

#!/usr/bin/env -S PYTHONPATH=../../../tools/extract-utils python3
#
# SPDX-FileCopyrightText: 2024 The LineageOS Project
# SPDX-License-Identifier: Apache-2.0
#
from extract_utils.fixups_blob import (
blob_fixup,
blob_fixups_user_type,
)
from extract_utils.fixups_lib import (
lib_fixups,
lib_fixups_user_type,
)
from extract_utils.main import (
ExtractUtils,
ExtractUtilsModule,
)
namespace_imports = [
'device/xiaomi/miuicamera-venus',
]
def lib_fixup_system_suffix(lib: str, partition: str, *args, **kwargs):
return f'{lib}_{partition}' if partition == 'system' else None
lib_fixups: lib_fixups_user_type = {
**lib_fixups,
'vendor.xiaomi.hardware.campostproc@1.0': lib_fixup_system_suffix,
}
blob_fixups: blob_fixups_user_type = {
'system/lib64/libcamera_algoup_jni.xiaomi.so': blob_fixup()
.add_needed('libgui_shim_miuicamera.so')
.sig_replace('08 AD 40 F9', '08 A9 40 F9'),
'system/lib64/libcamera_mianode_jni.xiaomi.so': blob_fixup()
.add_needed('libgui_shim_miuicamera.so'),
'system/lib64/libmicampostproc_client.so': blob_fixup()
.remove_needed('libhidltransport.so'),
} # fmt: skip
module = ExtractUtilsModule(
'miuicamera-venus',
'xiaomi',
blob_fixups=blob_fixups,
lib_fixups=lib_fixups,
namespace_imports=namespace_imports,
)
if __name__ == '__main__':
utils = ExtractUtils.device(module)
utils.run()