summaryrefslogtreecommitdiffstats
path: root/rootdir/Android.mk
diff options
context:
space:
mode:
authorJiyong Park <jiyong@google.com>2018-05-29 16:41:30 +0900
committerJiyong Park <jiyong@google.com>2018-06-10 08:32:24 +0900
commit011ee12b1def041d71621da7740bf5784a5e6488 (patch)
tree5ff7a6883fd51d6a5e0a245cb085c6f3239282ad /rootdir/Android.mk
parent7881135fa938fde4286a38b2304787ac070e6423 (diff)
downloadsystem_core-011ee12b1def041d71621da7740bf5784a5e6488.tar.gz
system_core-011ee12b1def041d71621da7740bf5784a5e6488.tar.bz2
system_core-011ee12b1def041d71621da7740bf5784a5e6488.zip
Shared libs are supported in recovery mode
adbd has been built as a static executable since the same binary was copied to the recovery partition where shared library is not supported. However, since we now support shared library in the recovery partition, adbd is built as a dynamic executable. In addition, the dependency from adbd to libdebuggerd_handler is removed as debuggerd is handled by the dynamic linker. A few more modules in /system/core are marked as recovery_available: true as they are transitive dependencies of the dynamic linker. This change also includes ld.config.recovery.txt which is the linker config file for the recovery mode. It is installed to /etc/ld.config.txt and contains linker namespace config for the dynamic binaries under /sbin. Bug: 63673171 Test: `adb reboot recovery; adb devices` shows the device ID Test: Select 'mount /system' in the recovery mode, then `adb shell`. $ lsof -p `pidof adbd` shows that libm.so, libc.so, etc. are loaded from the /lib directory. Change-Id: I363d5a787863f1677ee40afb5d5841321ddaae77
Diffstat (limited to 'rootdir/Android.mk')
-rw-r--r--rootdir/Android.mk10
1 files changed, 10 insertions, 0 deletions
diff --git a/rootdir/Android.mk b/rootdir/Android.mk
index 3c9e5f3c5..70b6a3e2c 100644
--- a/rootdir/Android.mk
+++ b/rootdir/Android.mk
@@ -306,6 +306,16 @@ _enforce_vndk_at_runtime :=
_enforce_vndk_lite_at_runtime :=
#######################################
+# ld.config.txt for recovery
+include $(CLEAR_VARS)
+LOCAL_MODULE := ld.config.recovery.txt
+LOCAL_MODULE_CLASS := ETC
+LOCAL_SRC_FILES := etc/ld.config.recovery.txt
+LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/etc
+LOCAL_MODULE_STEM := ld.config.txt
+include $(BUILD_PREBUILT)
+
+#######################################
# llndk.libraries.txt
include $(CLEAR_VARS)
LOCAL_MODULE := llndk.libraries.txt