diff options
Diffstat (limited to 'toolbox/Android.mk')
-rw-r--r-- | toolbox/Android.mk | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/toolbox/Android.mk b/toolbox/Android.mk new file mode 100644 index 0000000..5a8dc0b --- /dev/null +++ b/toolbox/Android.mk @@ -0,0 +1,91 @@ +LOCAL_PATH:= $(call my-dir) +include $(CLEAR_VARS) + +TOOLS := \ + ls \ + mount \ + cat \ + ps \ + kill \ + ln \ + insmod \ + rmmod \ + lsmod \ + ifconfig \ + setconsole \ + rm \ + mkdir \ + rmdir \ + reboot \ + getevent \ + sendevent \ + date \ + wipe \ + sync \ + umount \ + start \ + stop \ + notify \ + cmp \ + dmesg \ + route \ + hd \ + dd \ + df \ + getprop \ + setprop \ + watchprops \ + log \ + sleep \ + renice \ + printenv \ + smd \ + chmod \ + chown \ + mkdosfs \ + netstat \ + ioctl \ + mv \ + schedtop \ + top \ + iftop \ + id \ + vmstat + +LOCAL_SRC_FILES:= \ + toolbox.c \ + $(patsubst %,%.c,$(TOOLS)) + +LOCAL_SHARED_LIBRARIES := libcutils libc + +LOCAL_MODULE:= toolbox + +# Including this will define $(intermediates). +# +include $(BUILD_EXECUTABLE) + +$(LOCAL_PATH)/toolbox.c: $(intermediates)/tools.h + +TOOLS_H := $(intermediates)/tools.h +$(TOOLS_H): PRIVATE_TOOLS := $(TOOLS) +$(TOOLS_H): PRIVATE_CUSTOM_TOOL = echo "/* file generated automatically */" > $@ ; for t in $(PRIVATE_TOOLS) ; do echo "TOOL($$t)" >> $@ ; done +$(TOOLS_H): $(LOCAL_PATH)/Android.mk +$(TOOLS_H): + $(transform-generated-source) + +# Make #!/system/bin/toolbox launchers for each tool. +# +SYMLINKS := $(addprefix $(TARGET_OUT)/bin/,$(TOOLS)) +$(SYMLINKS): TOOLBOX_BINARY := $(LOCAL_MODULE) +$(SYMLINKS): $(LOCAL_INSTALLED_MODULE) $(LOCAL_PATH)/Android.mk + @echo "Symlink: $@ -> $(TOOLBOX_BINARY)" + @mkdir -p $(dir $@) + @rm -rf $@ + $(hide) ln -sf $(TOOLBOX_BINARY) $@ + +ALL_DEFAULT_INSTALLED_MODULES += $(SYMLINKS) + +# We need this so that the installed files could be picked up based on the +# local module name +ALL_MODULES.$(LOCAL_MODULE).INSTALLED := \ + $(ALL_MODULES.$(LOCAL_MODULE).INSTALLED) $(SYMLINKS) |