summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--etc/Android.mk15
-rw-r--r--etc/init.rc1
-rwxr-xr-xetc/init.recovery.mksh.rc2
-rw-r--r--prebuilt/Android.mk12
-rwxr-xr-xprebuilt/mkshrc_twrp21
5 files changed, 51 insertions, 0 deletions
diff --git a/etc/Android.mk b/etc/Android.mk
index cda0f372e..4aeb251dc 100644
--- a/etc/Android.mk
+++ b/etc/Android.mk
@@ -88,3 +88,18 @@ ifeq ($(TWRP_INCLUDE_LOGCAT), true)
include $(BUILD_PREBUILT)
endif
endif
+
+ifeq ($(TW_USE_TOOLBOX), true)
+ include $(CLEAR_VARS)
+ LOCAL_MODULE := init.recovery.mksh.rc
+ LOCAL_MODULE_TAGS := eng
+ LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
+
+ # Cannot send to TARGET_RECOVERY_ROOT_OUT since build system wipes init*.rc
+ # during ramdisk creation and only allows init.recovery.*.rc files to be copied
+ # from TARGET_ROOT_OUT thereafter
+ LOCAL_MODULE_PATH := $(TARGET_ROOT_OUT)
+
+ LOCAL_SRC_FILES := $(LOCAL_MODULE)
+ include $(BUILD_PREBUILT)
+endif
diff --git a/etc/init.rc b/etc/init.rc
index bcd519b03..348471d4f 100644
--- a/etc/init.rc
+++ b/etc/init.rc
@@ -1,4 +1,5 @@
import /init.recovery.logd.rc
+import /init.recovery.mksh.rc
import /init.recovery.usb.rc
import /init.recovery.service.rc
import /init.recovery.vold_decrypt.rc
diff --git a/etc/init.recovery.mksh.rc b/etc/init.recovery.mksh.rc
new file mode 100755
index 000000000..3afd946f3
--- /dev/null
+++ b/etc/init.recovery.mksh.rc
@@ -0,0 +1,2 @@
+on init
+ export ENV /etc/mkshrc
diff --git a/prebuilt/Android.mk b/prebuilt/Android.mk
index 235b77c86..933326292 100644
--- a/prebuilt/Android.mk
+++ b/prebuilt/Android.mk
@@ -491,6 +491,18 @@ ifeq ($(TW_INCLUDE_DUMLOCK), true)
include $(BUILD_PREBUILT)
endif
+ifeq ($(TW_USE_TOOLBOX), true)
+ include $(CLEAR_VARS)
+ LOCAL_MODULE := mkshrc_twrp
+ LOCAL_MODULE_TAGS := eng
+ LOCAL_MODULE_CLASS := ETC
+ LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/etc
+ LOCAL_SRC_FILES := $(LOCAL_MODULE)
+ LOCAL_POST_INSTALL_CMD := \
+ $(hide) mv $(TARGET_RECOVERY_ROOT_OUT)/etc/mkshrc_twrp $(TARGET_RECOVERY_ROOT_OUT)/etc/mkshrc
+ include $(BUILD_PREBUILT)
+endif
+
#TWRP App "placeholder"
include $(CLEAR_VARS)
LOCAL_MODULE := me.twrp.twrpapp.apk
diff --git a/prebuilt/mkshrc_twrp b/prebuilt/mkshrc_twrp
new file mode 100755
index 000000000..c103d6c56
--- /dev/null
+++ b/prebuilt/mkshrc_twrp
@@ -0,0 +1,21 @@
+# Copyright (c) 2010, 2012, 2013, 2014
+# Thorsten Glaser <tg@mirbsd.org>
+# This file is provided under the same terms as mksh.
+#-
+# Minimal /system/etc/mkshrc for Android
+#
+# Support: https://launchpad.net/mksh
+
+: ${HOSTNAME:=$(getprop ro.product.device)}
+: ${HOSTNAME:=android}
+: ${TMPDIR:=/tmp}
+export HOSTNAME TMPDIR
+
+if (( USER_ID )); then PS1='$'; else PS1='#'; fi
+PS4='[$EPOCHREALTIME] '; PS1='${|
+ local e=$?
+
+ (( e )) && REPLY+="$e|"
+
+ return $e
+}$HOSTNAME:${PWD:-?} '"$PS1 "