diff --git a/shims/Android.bp b/shims/Android.bp new file mode 100644 index 0000000..284856f --- /dev/null +++ b/shims/Android.bp @@ -0,0 +1,20 @@ +cc_library_shared { + name: "libsurfacecomposerclient_shim", + srcs: ["surfacecomposerclient_shim.cpp"], + shared_libs: [ + "libgui", + "libbinder", + "libutils", + "liblog", + ], + cflags: ["-Wno-unused-parameter"], + system_ext_specific: true, +} + +cc_library_shared { + name: "libaudio_shim", + srcs: ["audio_shim.cpp"], + shared_libs: ["liblog"], + cflags: ["-Wno-unused-parameter"], + system_ext_specific: true, +} diff --git a/shims/audio_shim.cpp b/shims/audio_shim.cpp new file mode 100644 index 0000000..4c74a2f --- /dev/null +++ b/shims/audio_shim.cpp @@ -0,0 +1,7 @@ +#include + +// Dummy implementation for unresolved audio symbol +extern "C" int32_t _ZN7android11AudioSystem24setDeviceConnectionStateE24audio_policy_dev_state_tRKNS_5media5audio6common9AudioPortE14audio_format_t( + int32_t state, void* port, int32_t format) { + return 0; +} diff --git a/shims/surfacecomposerclient_shim.cpp b/shims/surfacecomposerclient_shim.cpp new file mode 100644 index 0000000..b86b7e6 --- /dev/null +++ b/shims/surfacecomposerclient_shim.cpp @@ -0,0 +1,11 @@ +#include + +// Dummy implementation for missing createVirtualDisplay +extern "C" void _ZN7android21SurfaceComposerClient20createVirtualDisplayERKNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEEbS9_f() { + // Empty dummy function +} + +// Dummy vtable implementation +#if defined(__arm__) || defined(__aarch64__) +void* _ZTVN7android21SurfaceComposerClient11TransactionE __attribute__((weak)) = NULL; +#endif