From 48a92d715d828cba992382b4e66476be62a343b9 Mon Sep 17 00:00:00 2001 From: Neil Fuller Date: Thu, 24 Jan 2019 12:59:05 +0000 Subject: Move APEX symlink creation to alternative module Move APEX symlink creation to alternative module, one that is targeted at /system not /. Also added comments to reflect the tenuous connection between the module chosen and the symlink creation. Tested with: rm -rf out/target/product/taimen/system \ && make droid \ && ls -l out/target/product/taimen/system/usr Test: See above Bug: 122985829 Bug: 123333111 Change-Id: I841dd42827ac2e082505ebf039f40fd394514e54 --- rootdir/Android.mk | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) (limited to 'rootdir/Android.mk') diff --git a/rootdir/Android.mk b/rootdir/Android.mk index f1a38c799..dbf8b9e24 100644 --- a/rootdir/Android.mk +++ b/rootdir/Android.mk @@ -25,6 +25,26 @@ LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_TAGS := debug LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/init +# Start of runtime APEX compatibility. +# +# Meta-comment: +# The placing of this section is somewhat arbitrary. The LOCAL_POST_INSTALL_CMD +# entries need to be associated with something that goes into /system. +# init-debug.rc qualifies but it could be anything else in /system until soong +# supports creation of symlinks. http://b/123333111 +# +# Keeping the appearance of files/dirs having old locations for apps that have +# come to rely on them. + +# http://b/121248172 - create a link from /system/usr/icu to +# /apex/com.android.runtime/etc/icu so that apps can find the ICU .dat file. +# A symlink can't overwrite a directory and the /system/usr/icu directory once +# existed so the required structure must be created whatever we find. +LOCAL_POST_INSTALL_CMD = mkdir -p $(TARGET_OUT)/usr && rm -rf $(TARGET_OUT)/usr/icu +LOCAL_POST_INSTALL_CMD += ; ln -sf /apex/com.android.runtime/etc/icu $(TARGET_OUT)/usr/icu + +# End of runtime APEX compatibilty. + include $(BUILD_PREBUILT) ####################################### @@ -130,19 +150,6 @@ LOCAL_POST_INSTALL_CMD += ; ln -sf /vendor/odm/overlay $(TARGET_ROOT_OUT)/odm/ov LOCAL_POST_INSTALL_CMD += ; ln -sf /vendor/odm/priv-app $(TARGET_ROOT_OUT)/odm/priv-app LOCAL_POST_INSTALL_CMD += ; ln -sf /vendor/odm/usr $(TARGET_ROOT_OUT)/odm/usr -# Start of runtime APEX compatibility. -# Keeping the appearance of files/dirs having old locations for apps that have -# come to rely on them. - -# http://b/121248172 - create a link from /system/usr/icu to -# /apex/com.android.runtime/etc/icu so that apps can find the ICU .dat file. -# A symlink can't overwrite a directory and the /system/usr/icu directory once -# existed so the required structure must be created whatever we find. -LOCAL_POST_INSTALL_CMD += ; mkdir -p $(TARGET_OUT)/usr && rm -rf $(TARGET_OUT)/usr/icu -LOCAL_POST_INSTALL_CMD += ; ln -sf /apex/com.android.runtime/etc/icu $(TARGET_OUT)/usr/icu - -# End of runtime APEX compatibilty. - ifdef BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE LOCAL_POST_INSTALL_CMD += ; mkdir -p $(TARGET_ROOT_OUT)/cache else -- cgit v1.2.3