Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c12e205e authored by Tom Cherry's avatar Tom Cherry
Browse files

Fix /init -> /system/bin/init symlink creation race

A symlink for TARGET_ROOT_OUT as a post install command of a package
that is also installed to TARGET_ROOT_OUT.  We hijack init.rc which
satisfies this requirement for this symlink.

Bug: 120402274
Bug: 120460755
Bug: 120509320
Bug: 120554662
Test: symlink is created
Test: make bootimage && ls -la $OUT/root/init
Change-Id: I6f1ac06ef152c36d7d7db4618d49a008338da39b
parent e1e71b9b
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -104,7 +104,6 @@ LOCAL_MODULE := init_system
LOCAL_REQUIRED_MODULES := \
   init_second_stage \

LOCAL_POST_INSTALL_CMD := ln -sf /system/bin/init $(TARGET_ROOT_OUT)/init
include $(BUILD_PHONY_PACKAGE)

include $(CLEAR_VARS)
+4 −0
Original line number Diff line number Diff line
@@ -9,6 +9,10 @@ LOCAL_SRC_FILES := $(LOCAL_MODULE)
LOCAL_MODULE_CLASS := ETC
LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)

# The init symlink must be a post install command of a file that is to TARGET_ROOT_OUT.
# Since init.rc is required for init and satisfies that requirement, we hijack it to create the symlink.
LOCAL_POST_INSTALL_CMD := ln -sf /system/bin/init $(TARGET_ROOT_OUT)/init

include $(BUILD_PREBUILT)

#######################################