diff --git a/extract-files.py b/extract-files.py index 9e4d847..da3a87e 100755 --- a/extract-files.py +++ b/extract-files.py @@ -8,11 +8,52 @@ from extract_utils.fixups_blob import ( blob_fixup, blob_fixups_user_type, ) +from extract_utils.fixups_lib import ( + lib_fixup_remove, + lib_fixup_remove_arch_suffix, + lib_fixup_vendorcompat, + lib_fixups_user_type, + libs_clang_rt_ubsan, + libs_proto_3_9_1, +) from extract_utils.main import ( ExtractUtils, ExtractUtilsModule, ) + +namespace_imports = [ + 'device/oneplus/dre', + 'hardware/oplus', + 'hardware/qcom-caf/sm8350', + 'hardware/qcom-caf/wlan', + 'vendor/qcom/opensource/commonsys-intf/display', + 'vendor/qcom/opensource/commonsys/display', + 'vendor/qcom/opensource/dataservices', + 'vendor/qcom/opensource/display', +] + + +def lib_fixup_vendor_suffix(lib: str, partition: str, *args, **kwargs): + return f'{lib}_vendor' if partition in ['odm', 'vendor'] else None + + +lib_fixups: lib_fixups_user_type = { + libs_clang_rt_ubsan: lib_fixup_remove_arch_suffix, + libs_proto_3_9_1: lib_fixup_vendorcompat, + ( + 'com.qualcomm.qti.dpm.api@1.0', + 'libmmosal', + 'vendor.qti.diaghal@1.0', + 'vendor.qti.hardware.wifidisplaysession@1.0', + 'vendor.qti.imsrtpservice@3.0', + ): lib_fixup_vendor_suffix, + ( + 'libOmxCore', + 'libwpa_client', + ): lib_fixup_remove, +} + blob_fixups: blob_fixups_user_type = { 'odm/etc/init/android.hardware.drm@1.3-service.widevine.rc': blob_fixup() .regex_replace('writepid /dev/cpuset/foreground/tasks', 'task_profiles ProcessCapacityHigh'), @@ -49,6 +90,9 @@ module = ExtractUtilsModule( 'dre', 'oneplus', blob_fixups=blob_fixups, + lib_fixups=lib_fixups, + namespace_imports=namespace_imports, + check_elf=True, ) if __name__ == '__main__': diff --git a/proprietary-files.txt b/proprietary-files.txt index a349660..e02a06c 100644 --- a/proprietary-files.txt +++ b/proprietary-files.txt @@ -932,7 +932,7 @@ system_ext/lib64/vendor.qti.hardware.dpmservice@1.0.so system_ext/priv-app/dpmserviceapp/dpmserviceapp.apk vendor/bin/dpmQmiMgr vendor/etc/init/dpmQmiMgr.rc -vendor/lib64/com.qualcomm.qti.dpm.api@1.0.so;MODULE_SUFFIX=-vendor +vendor/lib64/com.qualcomm.qti.dpm.api@1.0.so;MODULE_SUFFIX=_vendor vendor/lib64/libdpmqmihal.so # DRM @@ -1177,7 +1177,7 @@ vendor/lib64/vendor.qti.ims.rcsconfig@1.1.so vendor/lib64/vendor.qti.ims.rcsconfig@2.0.so vendor/lib64/vendor.qti.ims.rcsconfig@2.1.so vendor/lib64/vendor.qti.imsrtpservice@3.0-service-Impl.so -vendor/lib64/vendor.qti.imsrtpservice@3.0.so;MODULE_SUFFIX=-vendor +vendor/lib64/vendor.qti.imsrtpservice@3.0.so;MODULE_SUFFIX=_vendor # IO prefetcher vendor/bin/hw/vendor.qti.hardware.iop@2.0-service @@ -1695,7 +1695,7 @@ vendor/lib64/vendor.qti.hardware.sensorscalibrate@1.0.so # Snapdragon Computer Vision Engine vendor/lib/libfastcvdsp_stub.so --vendor/lib/libfastcvopt.so +vendor/lib/libfastcvopt.so vendor/lib/libscveCommon.so vendor/lib/libscveCommon_stub.so vendor/lib/libscveObjectSegmentation.so @@ -1703,7 +1703,7 @@ vendor/lib/libscveObjectSegmentation_stub.so vendor/lib/libscveObjectTracker.so vendor/lib/libscveObjectTracker_stub.so vendor/lib64/libfastcvdsp_stub.so --vendor/lib64/libfastcvopt.so +vendor/lib64/libfastcvopt.so vendor/lib64/libscveCommon.so vendor/lib64/libscveCommon_stub.so vendor/lib64/libscveObjectSegmentation.so @@ -1721,8 +1721,8 @@ vendor/lib64/vendor.qti.hardware.soter@1.0.so vendor/bin/thermal-engine vendor/etc/init/init_thermal-engine.rc vendor/etc/thermal-engine.conf --vendor/lib/libthermalclient.so --vendor/lib64/libthermalclient.so +vendor/lib/libthermalclient.so +vendor/lib64/libthermalclient.so # Time services vendor/app/TimeService/TimeService.apk @@ -1906,5 +1906,5 @@ vendor/lib/libwfduibcsinkinterface_proprietary.so vendor/lib/libwfduibcsrc_proprietary.so vendor/lib/libwfduibcsrcinterface_proprietary.so vendor/lib/libwfdutils_proprietary.so -vendor/lib/vendor.qti.hardware.wifidisplaysession@1.0.so;MODULE_SUFFIX=-vendor +vendor/lib/vendor.qti.hardware.wifidisplaysession@1.0.so;MODULE_SUFFIX=_vendor vendor/lib/vendor.qti.hardware.wifidisplaysessionl@1.0-halimpl.so