From 0c7edece9453db4f6c7be3058e64881b9805f94e Mon Sep 17 00:00:00 2001 From: Victor Chang Date: Mon, 13 May 2019 16:14:03 +0100 Subject: [PATCH] Allow linking to libicuuc.so and libicui18n.so from executable in /data Executable in /data/ runs in default linker namespace, not classloader namespace. In Q, we moved libicuuc.so and libicui18n into the runtime namespace, and allow linking from runtime namespace and classloader namespace. This change further allows linking from default namespace, and tries to fix the regression temporarily. Bug: 130788466 Test: The app issue is fixed after this CL Change-Id: Ifae52b554124514e433cfe78875643a7450fbabd --- rootdir/etc/ld.config.legacy.txt | 3 +++ rootdir/etc/ld.config.txt | 9 +++++++++ rootdir/etc/ld.config.vndk_lite.txt | 9 +++++++++ 3 files changed, 21 insertions(+) diff --git a/rootdir/etc/ld.config.legacy.txt b/rootdir/etc/ld.config.legacy.txt index 4b074782b..f6b5e9582 100644 --- a/rootdir/etc/ld.config.legacy.txt +++ b/rootdir/etc/ld.config.legacy.txt @@ -56,6 +56,9 @@ namespace.default.asan.links = runtime,resolv namespace.default.link.runtime.shared_libs = libandroidicu.so namespace.default.link.runtime.shared_libs += libdexfile_external.so namespace.default.link.runtime.shared_libs += libdexfiled_external.so +# libicuuc.so and libicui18n.so are kept for app compat reason. http://b/130788466 +namespace.default.link.runtime.shared_libs += libicui18n.so +namespace.default.link.runtime.shared_libs += libicuuc.so namespace.default.link.runtime.shared_libs += libnativebridge.so namespace.default.link.runtime.shared_libs += libnativehelper.so namespace.default.link.runtime.shared_libs += libnativeloader.so diff --git a/rootdir/etc/ld.config.txt b/rootdir/etc/ld.config.txt index f4710d85d..22c8be205 100644 --- a/rootdir/etc/ld.config.txt +++ b/rootdir/etc/ld.config.txt @@ -135,6 +135,9 @@ namespace.default.links = runtime,resolv namespace.default.link.runtime.shared_libs = libandroidicu.so namespace.default.link.runtime.shared_libs += libdexfile_external.so namespace.default.link.runtime.shared_libs += libdexfiled_external.so +# libicuuc.so and libicui18n.so are kept for app compat reason. http://b/130788466 +namespace.default.link.runtime.shared_libs += libicui18n.so +namespace.default.link.runtime.shared_libs += libicuuc.so namespace.default.link.runtime.shared_libs += libnativebridge.so namespace.default.link.runtime.shared_libs += libnativehelper.so namespace.default.link.runtime.shared_libs += libnativeloader.so @@ -512,6 +515,9 @@ namespace.system.asan.search.paths += /%PRODUCT_SERVICES%/${LIB} namespace.system.links = runtime namespace.system.link.runtime.shared_libs = libdexfile_external.so namespace.system.link.runtime.shared_libs += libdexfiled_external.so +# libicuuc.so and libicui18n.so are kept for app compat reason. http://b/130788466 +namespace.system.link.runtime.shared_libs += libicui18n.so +namespace.system.link.runtime.shared_libs += libicuuc.so namespace.system.link.runtime.shared_libs += libnativebridge.so namespace.system.link.runtime.shared_libs += libnativehelper.so namespace.system.link.runtime.shared_libs += libnativeloader.so @@ -592,6 +598,9 @@ namespace.default.links = runtime,resolv namespace.default.link.runtime.shared_libs = libandroidicu.so namespace.default.link.runtime.shared_libs += libdexfile_external.so namespace.default.link.runtime.shared_libs += libdexfiled_external.so +# libicuuc.so and libicui18n.so are kept for app compat reason. http://b/130788466 +namespace.default.link.runtime.shared_libs += libicui18n.so +namespace.default.link.runtime.shared_libs += libicuuc.so namespace.default.link.runtime.shared_libs += libnativebridge.so namespace.default.link.runtime.shared_libs += libnativehelper.so namespace.default.link.runtime.shared_libs += libnativeloader.so diff --git a/rootdir/etc/ld.config.vndk_lite.txt b/rootdir/etc/ld.config.vndk_lite.txt index 4ce7f52ad..d616582d6 100644 --- a/rootdir/etc/ld.config.vndk_lite.txt +++ b/rootdir/etc/ld.config.vndk_lite.txt @@ -75,6 +75,9 @@ namespace.default.links = runtime,resolv namespace.default.link.runtime.shared_libs = libandroidicu.so namespace.default.link.runtime.shared_libs += libdexfile_external.so namespace.default.link.runtime.shared_libs += libdexfiled_external.so +# libicuuc.so and libicui18n.so are kept for app compat reason. http://b/130788466 +namespace.default.link.runtime.shared_libs += libicui18n.so +namespace.default.link.runtime.shared_libs += libicuuc.so namespace.default.link.runtime.shared_libs += libnativebridge.so namespace.default.link.runtime.shared_libs += libnativehelper.so namespace.default.link.runtime.shared_libs += libnativeloader.so @@ -363,6 +366,9 @@ namespace.default.asan.search.paths += /system/${LIB}/vndk%VNDK_VER% namespace.default.links = runtime namespace.default.link.runtime.shared_libs = libdexfile_external.so namespace.default.link.runtime.shared_libs += libdexfiled_external.so +# libicuuc.so and libicui18n.so are kept for app compat reason. http://b/130788466 +namespace.default.link.runtime.shared_libs += libicui18n.so +namespace.default.link.runtime.shared_libs += libicuuc.so namespace.default.link.runtime.shared_libs += libnativebridge.so namespace.default.link.runtime.shared_libs += libnativehelper.so namespace.default.link.runtime.shared_libs += libnativeloader.so @@ -413,6 +419,9 @@ namespace.default.links = runtime,resolv namespace.default.link.runtime.shared_libs = libandroidicu.so namespace.default.link.runtime.shared_libs += libdexfile_external.so namespace.default.link.runtime.shared_libs += libdexfiled_external.so +# libicuuc.so and libicui18n.so are kept for app compat reason. http://b/130788466 +namespace.default.link.runtime.shared_libs += libicui18n.so +namespace.default.link.runtime.shared_libs += libicuuc.so namespace.default.link.runtime.shared_libs += libnativebridge.so namespace.default.link.runtime.shared_libs += libnativehelper.so namespace.default.link.runtime.shared_libs += libnativeloader.so