I wrote this to test my fix to support utime(2) system calls in the sdcard fuse filesystem for stingray, and decided to finish sprucing it up and make it part of toolbox. In an effort to keep it small, it doesn't accept dates a la touch, but just a time_t value. Change-Id: I5dd011cd2e34d0cc605d6f40e46b96a8c949f194
97 lines
1.7 KiB
Makefile
97 lines
1.7 KiB
Makefile
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 \
|
|
newfs_msdos \
|
|
netstat \
|
|
ioctl \
|
|
mv \
|
|
schedtop \
|
|
top \
|
|
iftop \
|
|
id \
|
|
uptime \
|
|
vmstat \
|
|
nandread \
|
|
ionice \
|
|
touch \
|
|
lsof
|
|
|
|
LOCAL_SRC_FILES:= \
|
|
dynarray.c \
|
|
toolbox.c \
|
|
$(patsubst %,%.c,$(TOOLS))
|
|
|
|
LOCAL_SHARED_LIBRARIES := libcutils libc libusbhost
|
|
|
|
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)
|