summaryrefslogtreecommitdiffstats
path: root/toolbox
diff options
context:
space:
mode:
authorEthan Yonker <dees_troy@teamw.in>2016-08-25 22:32:21 +0200
committerEthan Yonker <dees_troy@teamw.in>2016-08-25 22:36:13 +0200
commitf117962eb25bde75e981c3bff91ba708a55df65e (patch)
tree4d8565830b460a940ad33701e953d0371a0e5355 /toolbox
parentUpdate to 7.0 (diff)
downloadandroid_bootable_recovery-f117962eb25bde75e981c3bff91ba708a55df65e.tar
android_bootable_recovery-f117962eb25bde75e981c3bff91ba708a55df65e.tar.gz
android_bootable_recovery-f117962eb25bde75e981c3bff91ba708a55df65e.tar.bz2
android_bootable_recovery-f117962eb25bde75e981c3bff91ba708a55df65e.tar.lz
android_bootable_recovery-f117962eb25bde75e981c3bff91ba708a55df65e.tar.xz
android_bootable_recovery-f117962eb25bde75e981c3bff91ba708a55df65e.tar.zst
android_bootable_recovery-f117962eb25bde75e981c3bff91ba708a55df65e.zip
Diffstat (limited to '')
-rw-r--r--toolbox/Android.mk17
-rw-r--r--toolbox/start.c21
-rw-r--r--toolbox/stop.c19
3 files changed, 54 insertions, 3 deletions
diff --git a/toolbox/Android.mk b/toolbox/Android.mk
index c721bbd41..4c3e433c2 100644
--- a/toolbox/Android.mk
+++ b/toolbox/Android.mk
@@ -2,9 +2,13 @@ TWRP_TOOLBOX_PATH := $(call my-dir)
LOCAL_PATH := system/core/toolbox
include $(CLEAR_VARS)
-OUR_TOOLS := \
- start \
- stop \
+OUR_TOOLS :=
+
+ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 24; echo $$?),0)
+ OUR_TOOLS := \
+ start \
+ stop
+endif
ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 23; echo $$?),0)
OUR_TOOLS += \
@@ -227,6 +231,13 @@ ifeq ($(shell test $(PLATFORM_SDK_VERSION) -gt 22; echo $$?),0)
LOCAL_SRC_FILES += ../../../$(TWRP_TOOLBOX_PATH)/ls.c
endif
endif
+ifeq ($(shell test $(PLATFORM_SDK_VERSION) -gt 23; echo $$?),0)
+ # Rule for making start and stop in N trees
+ LOCAL_SRC_FILES += \
+ ../../../$(TWRP_TOOLBOX_PATH)/start.c \
+ ../../../$(TWRP_TOOLBOX_PATH)/stop.c
+ OUR_TOOLS += start stop
+endif
LOCAL_MODULE := toolbox_recovery
LOCAL_MODULE_STEM := toolbox
diff --git a/toolbox/start.c b/toolbox/start.c
new file mode 100644
index 000000000..6c8a3f2b0
--- /dev/null
+++ b/toolbox/start.c
@@ -0,0 +1,21 @@
+
+#include <string.h>
+#include <stdio.h>
+#include <stdlib.h>
+
+#include <cutils/properties.h>
+
+int start_main(int argc, char *argv[])
+{
+ if(argc > 1) {
+ property_set("ctl.start", argv[1]);
+ } else {
+ /* defaults to starting the common services stopped by stop.c */
+ property_set("ctl.start", "netd");
+ property_set("ctl.start", "surfaceflinger");
+ property_set("ctl.start", "zygote");
+ property_set("ctl.start", "zygote_secondary");
+ }
+
+ return 0;
+}
diff --git a/toolbox/stop.c b/toolbox/stop.c
new file mode 100644
index 000000000..5e3ce3c8c
--- /dev/null
+++ b/toolbox/stop.c
@@ -0,0 +1,19 @@
+#include <stdio.h>
+#include <string.h>
+
+#include <cutils/properties.h>
+
+int stop_main(int argc, char *argv[])
+{
+ if(argc > 1) {
+ property_set("ctl.stop", argv[1]);
+ } else{
+ /* defaults to stopping the common services */
+ property_set("ctl.stop", "zygote_secondary");
+ property_set("ctl.stop", "zygote");
+ property_set("ctl.stop", "surfaceflinger");
+ property_set("ctl.stop", "netd");
+ }
+
+ return 0;
+}