ingres: Import proprietary-files.txt and extract utils from existing tree
diff --git a/extract-files.py b/extract-files.py
new file mode 100755
index 0000000..5454caa
--- /dev/null
+++ b/extract-files.py
@@ -0,0 +1,77 @@
+#!/usr/bin/env -S PYTHONPATH=../../../tools/extract-utils python3
+#
+# SPDX-FileCopyrightText: 2025 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,
+)
+from extract_utils.main import (
+ ExtractUtils,
+ ExtractUtilsModule,
+)
+
+namespace_imports = [
+ 'device/xiaomi/sm8450-common',
+ 'hardware/qcom-caf/sm8450',
+ 'hardware/xiaomi',
+ 'vendor/qcom/opensource/commonsys-intf/display',
+ 'vendor/xiaomi/sm8450-common',
+]
+
+blob_fixups: blob_fixups_user_type = {
+ (
+ 'vendor/etc/camera/ingres_enhance_motiontuning.xml',
+ 'vendor/etc/camera/ingres_motiontuning.xml',
+ ): blob_fixup().regex_replace('xml=version', 'xml version'),
+ (
+ 'vendor/etc/camera/pureShot_parameter.xml',
+ 'vendor/etc/camera/pureView_parameter.xml',
+ ): blob_fixup().regex_replace(r'=([0-9]+)>', r'="\1">'),
+ (
+ 'vendor/lib64/hw/com.qti.chi.override.so',
+ 'vendor/lib64/libcamxcommonutils.so',
+ 'vendor/lib64/libmialgoengine.so',
+ ): blob_fixup().add_needed('libprocessgroup_shim.so'),
+ (
+ 'vendor/lib64/libTrueSight.so',
+ 'vendor/lib64/libmorpho_ubwc.so',
+ ): blob_fixup()
+ .clear_symbol_version('AHardwareBuffer_allocate')
+ .clear_symbol_version('AHardwareBuffer_describe')
+ .clear_symbol_version('AHardwareBuffer_isSupported')
+ .clear_symbol_version('AHardwareBuffer_lock')
+ .clear_symbol_version('AHardwareBuffer_lockPlanes')
+ .clear_symbol_version('AHardwareBuffer_release')
+ .clear_symbol_version('AHardwareBuffer_unlock'),
+ 'vendor/lib64/libcamximageformatutils.so': blob_fixup().replace_needed(
+ 'vendor.qti.hardware.display.config-V2-ndk_platform.so',
+ 'vendor.qti.hardware.display.config-V2-ndk.so',
+ ),
+ 'vendor/lib64/libmialgo_pureShot.so': blob_fixup()
+ .clear_symbol_version('remote_handle64_close')
+ .clear_symbol_version('remote_handle64_invoke')
+ .clear_symbol_version('remote_handle64_open')
+ .clear_symbol_version('remote_register_buf_attr'),
+}
+
+module = ExtractUtilsModule(
+ 'ingres',
+ 'xiaomi',
+ blob_fixups=blob_fixups,
+ lib_fixups=lib_fixups,
+ namespace_imports=namespace_imports,
+ check_elf=True,
+ add_firmware_proprietary_file=False,
+)
+
+if __name__ == '__main__':
+ utils = ExtractUtils.device_with_common(
+ module, 'sm8450-common', module.vendor
+ )
+ utils.run()