Android.mk revision e3ebdf04cb13e8a0dd64d8fd18ecb6c22f0cf002
1# 2# Copyright (C) 2014 The Android Open Source Project 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License at 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15# 16 17LOCAL_PATH := $(call my-dir) 18 19# 20# To update: 21# 22 23# git remote add toybox https://github.com/gfto/toybox.git 24# git fetch toybox 25# git merge toybox/master 26# mm -j32 27# # (Make any necessary Android.mk changes and test the new toybox.) 28# git push aosp HEAD:master # Push directly, avoiding gerrit. 29# git push aosp HEAD:refs/for/master # Push to gerrit. 30# 31# # Now commit any necessary Android.mk changes like normal: 32# repo start post-sync . 33# git commit -a 34 35 36include $(CLEAR_VARS) 37 38LOCAL_SRC_FILES := \ 39 lib/args.c \ 40 lib/dirtree.c \ 41 lib/getmountlist.c \ 42 lib/help.c \ 43 lib/lib.c \ 44 lib/llist.c \ 45 lib/net.c \ 46 lib/portability.c \ 47 lib/xwrap.c \ 48 main.c \ 49 toys/lsb/dmesg.c \ 50 toys/lsb/hostname.c \ 51 toys/lsb/killall.c \ 52 toys/lsb/md5sum.c \ 53 toys/lsb/mknod.c \ 54 toys/lsb/mktemp.c \ 55 toys/lsb/mount.c \ 56 toys/lsb/pidof.c \ 57 toys/lsb/seq.c \ 58 toys/lsb/sync.c \ 59 toys/lsb/umount.c \ 60 toys/other/acpi.c \ 61 toys/other/blkid.c \ 62 toys/other/blockdev.c \ 63 toys/other/bzcat.c \ 64 toys/other/catv.c \ 65 toys/other/chroot.c \ 66 toys/other/chvt.c \ 67 toys/other/clear.c \ 68 toys/other/count.c \ 69 toys/other/dos2unix.c \ 70 toys/other/factor.c \ 71 toys/other/fallocate.c \ 72 toys/other/free.c \ 73 toys/other/freeramdisk.c \ 74 toys/other/fsfreeze.c \ 75 toys/other/help.c \ 76 toys/other/ifconfig.c \ 77 toys/other/inotifyd.c \ 78 toys/other/insmod.c \ 79 toys/other/losetup.c \ 80 toys/other/lsattr.c \ 81 toys/other/lsmod.c \ 82 toys/other/lspci.c \ 83 toys/other/lsusb.c \ 84 toys/other/makedevs.c \ 85 toys/other/mkswap.c \ 86 toys/other/modinfo.c \ 87 toys/other/mountpoint.c \ 88 toys/other/nbd_client.c \ 89 toys/other/netcat.c \ 90 toys/other/oneit.c \ 91 toys/other/partprobe.c \ 92 toys/other/pivot_root.c \ 93 toys/other/pmap.c \ 94 toys/other/printenv.c \ 95 toys/other/pwdx.c \ 96 toys/other/readahead.c \ 97 toys/other/readlink.c \ 98 toys/other/realpath.c \ 99 toys/other/rev.c \ 100 toys/other/rfkill.c \ 101 toys/other/rmmod.c \ 102 toys/other/setsid.c \ 103 toys/other/stat.c \ 104 toys/other/swapoff.c \ 105 toys/other/swapon.c \ 106 toys/other/switch_root.c \ 107 toys/other/sysctl.c \ 108 toys/other/tac.c \ 109 toys/other/taskset.c \ 110 toys/other/timeout.c \ 111 toys/other/truncate.c \ 112 toys/other/unshare.c \ 113 toys/other/usleep.c \ 114 toys/other/vconfig.c \ 115 toys/other/vmstat.c \ 116 toys/other/which.c \ 117 toys/other/yes.c \ 118 toys/posix/basename.c \ 119 toys/posix/cal.c \ 120 toys/posix/cat.c \ 121 toys/posix/chgrp.c \ 122 toys/posix/chmod.c \ 123 toys/posix/cksum.c \ 124 toys/posix/cmp.c \ 125 toys/posix/comm.c \ 126 toys/posix/cp.c \ 127 toys/posix/cpio.c \ 128 toys/posix/cut.c \ 129 toys/posix/date.c \ 130 toys/posix/df.c \ 131 toys/posix/dirname.c \ 132 toys/posix/du.c \ 133 toys/posix/echo.c \ 134 toys/posix/env.c \ 135 toys/posix/expand.c \ 136 toys/posix/false.c \ 137 toys/posix/find.c \ 138 toys/posix/grep.c \ 139 toys/posix/head.c \ 140 toys/posix/id.c \ 141 toys/posix/kill.c \ 142 toys/posix/link.c \ 143 toys/posix/ln.c \ 144 toys/posix/ls.c \ 145 toys/posix/mkdir.c \ 146 toys/posix/mkfifo.c \ 147 toys/posix/nice.c \ 148 toys/posix/nl.c \ 149 toys/posix/nohup.c \ 150 toys/posix/od.c \ 151 toys/posix/paste.c \ 152 toys/posix/patch.c \ 153 toys/posix/pwd.c \ 154 toys/posix/renice.c \ 155 toys/posix/rm.c \ 156 toys/posix/rmdir.c \ 157 toys/posix/sleep.c \ 158 toys/posix/sort.c \ 159 toys/posix/split.c \ 160 toys/posix/strings.c \ 161 toys/posix/tail.c \ 162 toys/posix/tee.c \ 163 toys/posix/time.c \ 164 toys/posix/touch.c \ 165 toys/posix/true.c \ 166 toys/posix/tty.c \ 167 toys/posix/uname.c \ 168 toys/posix/uniq.c \ 169 toys/posix/unlink.c \ 170 toys/posix/uudecode.c \ 171 toys/posix/uuencode.c \ 172 toys/posix/wc.c \ 173 toys/posix/xargs.c \ 174 175LOCAL_CFLAGS += \ 176 -Os \ 177 -Wno-char-subscripts \ 178 -Wno-sign-compare \ 179 -Wno-uninitialized \ 180 -Wno-unused-parameter \ 181 -funsigned-char -ffunction-sections -fdata-sections -fno-asynchronous-unwind-tables \ 182 183LOCAL_MODULE := toybox 184 185# dupes: cat chmod chown cmp cp date df dmesg du grep id ifconfig kill ls mkdir 186# mknod mkswap mount mv nc netcat nohup notify(inotifyd) printenv readlink renice rm rmdir 187# sleep swapoff swapon sync touch umount vmstat 188# obsolete?: cpio killall5 link unlink 189# non-Linux: count freeramdisk fstype nbd-client oneit vconfig 190# useless?: chvt fsfreeze install makedevs mkfifo mktemp partprobe pivot_root pwdx rev 191# rfkill switch_root tty unshare 192# prefer efs2progs instead?: blkid chattr lsattr 193 194ALL_TOOLS := \ 195 acpi \ 196 basename \ 197 blockdev \ 198 bzcat \ 199 cal \ 200 catv \ 201 chgrp \ 202 chroot \ 203 cksum \ 204 clear \ 205 comm \ 206 cut \ 207 dirname \ 208 dos2unix \ 209 echo \ 210 egrep \ 211 env \ 212 expand \ 213 factor \ 214 fallocate \ 215 false \ 216 fgrep \ 217 find \ 218 free \ 219 groups \ 220 head \ 221 hostname \ 222 insmod \ 223 killall \ 224 ln \ 225 logname \ 226 losetup \ 227 lsmod \ 228 lspci \ 229 lsusb \ 230 md5sum \ 231 modinfo \ 232 mountpoint \ 233 nice \ 234 nl \ 235 od \ 236 paste \ 237 patch \ 238 pidof \ 239 pmap \ 240 pwd \ 241 readahead \ 242 realpath \ 243 rmmod \ 244 seq \ 245 setsid \ 246 sha1sum \ 247 sort \ 248 split \ 249 stat \ 250 strings \ 251 sysctl \ 252 tac \ 253 tail \ 254 taskset \ 255 tee \ 256 time \ 257 timeout \ 258 true \ 259 truncate \ 260 uname \ 261 uniq \ 262 unix2dos \ 263 usleep \ 264 uudecode \ 265 uuencode \ 266 wc \ 267 which \ 268 whoami \ 269 xargs \ 270 yes \ 271 272# Install the symlinks. 273LOCAL_POST_INSTALL_CMD := $(hide) $(foreach t,$(ALL_TOOLS),ln -sf toybox $(TARGET_OUT)/bin/$(t);) 274 275include $(BUILD_EXECUTABLE) 276