aboutsummaryrefslogtreecommitdiffstats
path: root/Android.mk
diff options
context:
space:
mode:
authorDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2021-01-10 23:54:55 +0100
committerDenis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>2021-02-28 17:28:37 +0100
commit6b9691756a104d8c7daf23a24528bfb0d83d81ed (patch)
tree913a536551a7790cd9115f23a2d523325f74d077 /Android.mk
parent56ff64110d57570454a4a308419190cae74b133e (diff)
downloadhardware_replicant_libsamsung-ipc-6b9691756a104d8c7daf23a24528bfb0d83d81ed.tar.gz
hardware_replicant_libsamsung-ipc-6b9691756a104d8c7daf23a24528bfb0d83d81ed.tar.bz2
hardware_replicant_libsamsung-ipc-6b9691756a104d8c7daf23a24528bfb0d83d81ed.zip
Android.mk: Add support for Android 11
If we configure Replicant 11, libsamsung-ipc and libsamsung-ril to have both libraries in /system/lib/, tools work fine on the Galaxy SIII (GT-I9300): # find -name libsamsung-ril.so 2>/dev/null ./system/lib/libsamsung-ril.so # find -name libsamsung-ipc.so 2>/dev/null ./system/lib/libsamsung-ipc.so # find -name nv_data-md5 2>/dev/null ./system/bin/nv_data-md5 # nv_data-md5 Usage: nv_data-md5 [nv_data.bin] And libsamsung-ril tries to load libsamsung-ipc from the right location in /system/lib/, but it fails due to the vendor and system separation: 01-14 15:50:57.739 1475 1475 E RILD : dlopen failed: dlopen failed: library "/system/lib/libsamsung-ril.so" needed or dlopened by "/system/vendor/bin/hw/rild" is not accessible for the namespace "(default)" Adding LOCAL_PROPRIETARY_MODULE fixes that. Note that the name of that property can be misleading here: libsamsung-ipc is free software and shall remain free software. Instead we need to understand LOCAL_PROPRIETARY_MODULE as a way to tell the Android build system that libsamsung-ipc is not part of the base Android code but instead that it is code that is specific to a device, set of devices and/or Android distribution. LOCAL_MODULE_RELATIVE_PATH cannot be used instead: even if the binaies end up in /vendor/bin/hw/, and that the libraries ends up in /vendor/lib/hw/, for some reasons the libraries can't be found: i9300:/ # /system/vendor/bin/hw/nv_data-md5 CANNOT LINK EXECUTABLE "/system/vendor/bin/hw/nv_data-md5": library "libsamsung-ipc.so" not found: needed by main executable And most importantly, rild has the same issue than before: E RILD : dlopen failed: dlopen failed: library "libsamsung-ipc.so" not found: needed by /system/vendor/lib/hw/libsamsung-ril.so in namespace (default) Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Diffstat (limited to 'Android.mk')
-rw-r--r--Android.mk6
1 files changed, 6 insertions, 0 deletions
diff --git a/Android.mk b/Android.mk
index adaf0d4..554c59a 100644
--- a/Android.mk
+++ b/Android.mk
@@ -122,6 +122,7 @@ libsamsung_ipc_local_shared_libraries := \
# Static library version of libsamsung-ipc #
############################################
include $(CLEAR_VARS)
+include $(LOCAL_PATH)/android_versions.mk
LOCAL_MODULE := libsamsung-ipc
LOCAL_MODULE_TAGS := optional
@@ -140,6 +141,7 @@ include $(BUILD_STATIC_LIBRARY)
# Shared library version of libsamsung-ipc #
############################################
include $(CLEAR_VARS)
+include $(LOCAL_PATH)/android_versions.mk
LOCAL_MODULE := libsamsung-ipc
LOCAL_MODULE_TAGS := optional
@@ -158,6 +160,7 @@ include $(BUILD_SHARED_LIBRARY)
# ipc-modem tool #
##################
include $(CLEAR_VARS)
+include $(LOCAL_PATH)/android_versions.mk
LOCAL_MODULE := ipc-modem
LOCAL_MODULE_TAGS := optional
@@ -173,6 +176,7 @@ include $(BUILD_EXECUTABLE)
# ipc-test tool #
#################
include $(CLEAR_VARS)
+include $(LOCAL_PATH)/android_versions.mk
LOCAL_MODULE := ipc-test
LOCAL_MODULE_TAGS := optional
@@ -189,6 +193,7 @@ include $(BUILD_EXECUTABLE)
# nv_data-imei tool #
#####################
include $(CLEAR_VARS)
+include $(LOCAL_PATH)/android_versions.mk
LOCAL_MODULE := nv_data-imei
LOCAL_MODULE_TAGS := optional
@@ -205,6 +210,7 @@ include $(BUILD_EXECUTABLE)
# nv_data-md5 tool #
####################
include $(CLEAR_VARS)
+include $(LOCAL_PATH)/android_versions.mk
LOCAL_MODULE := nv_data-md5
LOCAL_MODULE_TAGS := optional