Erik Andersen | e49d5ec | 2000-02-08 19:58:47 +0000 | [diff] [blame] | 1 | /* vi: set sw=4 ts=4: */ |
Erik Andersen | 9e73725 | 2000-01-06 01:16:13 +0000 | [diff] [blame] | 2 | // This file defines the feature set to be compiled into busybox. |
3 | // When you turn things off here, they won't be compiled in at all. | ||||
4 | // | ||||
5 | //// This file is parsed by sed. You MUST use single line comments. | ||||
6 | // i.e. //#define BB_BLAH | ||||
7 | // | ||||
8 | // | ||||
9 | // BusyBox Applications | ||||
Erik Andersen | e272915 | 2000-02-18 21:34:17 +0000 | [diff] [blame] | 10 | //#define BB_BASENAME |
Eric Andersen | cc8ed39 | 1999-10-05 16:24:54 +0000 | [diff] [blame] | 11 | #define BB_CAT |
Eric Andersen | 1b61f41 | 1999-10-13 18:56:42 +0000 | [diff] [blame] | 12 | #define BB_CHMOD_CHOWN_CHGRP |
Eric Andersen | 2b69c40 | 1999-10-05 22:58:32 +0000 | [diff] [blame] | 13 | #define BB_CHROOT |
Erik Andersen | 3163821 | 2000-01-15 22:28:50 +0000 | [diff] [blame] | 14 | #define BB_CHVT |
Eric Andersen | 2b69c40 | 1999-10-05 22:58:32 +0000 | [diff] [blame] | 15 | #define BB_CLEAR |
Erik Andersen | 79ac30d | 2000-02-07 05:53:48 +0000 | [diff] [blame] | 16 | #define BB_CP_MV |
Eric Andersen | 4bea32a | 1999-10-06 00:30:51 +0000 | [diff] [blame] | 17 | #define BB_DATE |
Eric Andersen | 9d3aba7 | 1999-10-06 09:04:55 +0000 | [diff] [blame] | 18 | #define BB_DD |
Erik Andersen | 3163821 | 2000-01-15 22:28:50 +0000 | [diff] [blame] | 19 | #define BB_DEALLOCVT |
Eric Andersen | 17d49ef | 1999-10-06 20:25:32 +0000 | [diff] [blame] | 20 | #define BB_DF |
Erik Andersen | fb002d0 | 2000-03-05 08:07:00 +0000 | [diff] [blame] | 21 | #define BB_DIRNAME |
Eric Andersen | 9d3aba7 | 1999-10-06 09:04:55 +0000 | [diff] [blame] | 22 | #define BB_DMESG |
Eric Andersen | d73dc5b | 1999-11-10 23:13:02 +0000 | [diff] [blame] | 23 | //#define BB_DUTMP |
John Beppu | 7a98606 | 1999-12-09 18:29:29 +0000 | [diff] [blame] | 24 | #define BB_DU |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 25 | #define BB_ECHO |
26 | //#define BB_FBSET | ||||
Eric Andersen | d73dc5b | 1999-11-10 23:13:02 +0000 | [diff] [blame] | 27 | //#define BB_FDFLUSH |
Eric Andersen | 2f6c04f | 1999-11-01 23:59:44 +0000 | [diff] [blame] | 28 | #define BB_FIND |
Eric Andersen | abc0f4f | 1999-12-08 23:19:36 +0000 | [diff] [blame] | 29 | #define BB_FREE |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 30 | //#define BB_FREERAMDISK |
31 | //#define BB_FSCK_MINIX | ||||
32 | //#define BB_GREP | ||||
Erik Andersen | 3163821 | 2000-01-15 22:28:50 +0000 | [diff] [blame] | 33 | #define BB_GUNZIP |
34 | #define BB_GZIP | ||||
Eric Andersen | d73dc5b | 1999-11-10 23:13:02 +0000 | [diff] [blame] | 35 | //#define BB_HALT |
John Beppu | 3157b1f | 1999-12-10 07:42:50 +0000 | [diff] [blame] | 36 | #define BB_HEAD |
Erik Andersen | 3163821 | 2000-01-15 22:28:50 +0000 | [diff] [blame] | 37 | //#define BB_HOSTID |
Eric Andersen | 485b955 | 1999-12-07 23:14:59 +0000 | [diff] [blame] | 38 | #define BB_HOSTNAME |
Eric Andersen | 2c10301 | 1999-10-13 22:56:11 +0000 | [diff] [blame] | 39 | #define BB_INIT |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 40 | // Don't bother turning BB_INSMOD on. It doesn't work. |
Erik Andersen | d387d01 | 1999-12-21 02:55:11 +0000 | [diff] [blame] | 41 | //#define BB_INSMOD |
Eric Andersen | d23f9ba | 1999-10-20 19:18:15 +0000 | [diff] [blame] | 42 | #define BB_KILL |
Erik Andersen | 6273f65 | 2000-03-17 01:12:41 +0000 | [diff] [blame] | 43 | #define BB_KILLALL |
Eric Andersen | 2cb5507 | 1999-12-10 08:25:07 +0000 | [diff] [blame] | 44 | #define BB_KLOGD |
Eric Andersen | d73dc5b | 1999-11-10 23:13:02 +0000 | [diff] [blame] | 45 | //#define BB_LENGTH |
Eric Andersen | f6be944 | 1999-10-13 21:12:06 +0000 | [diff] [blame] | 46 | #define BB_LN |
Erik Andersen | a899108 | 1999-12-29 03:34:00 +0000 | [diff] [blame] | 47 | //#define BB_LOADACM |
Erik Andersen | 3cd5d25 | 1999-12-15 08:20:08 +0000 | [diff] [blame] | 48 | //#define BB_LOADFONT |
49 | //#define BB_LOADKMAP | ||||
Erik Andersen | 7dc1607 | 2000-01-04 01:10:25 +0000 | [diff] [blame] | 50 | //#define BB_LOGGER |
Erik Andersen | 3163821 | 2000-01-15 22:28:50 +0000 | [diff] [blame] | 51 | #define BB_LOGNAME |
Eric Andersen | 9d3aba7 | 1999-10-06 09:04:55 +0000 | [diff] [blame] | 52 | #define BB_LS |
Erik Andersen | 54969a1 | 2000-03-08 06:42:34 +0000 | [diff] [blame] | 53 | //#define BB_LSMOD |
Eric Andersen | d73dc5b | 1999-11-10 23:13:02 +0000 | [diff] [blame] | 54 | //#define BB_MAKEDEVS |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 55 | //#define BB_MKFS_MINIX |
Eric Andersen | d73dc5b | 1999-11-10 23:13:02 +0000 | [diff] [blame] | 56 | //#define BB_MATH |
Eric Andersen | f6be944 | 1999-10-13 21:12:06 +0000 | [diff] [blame] | 57 | #define BB_MKDIR |
Eric Andersen | 19db07b | 1999-12-11 08:41:28 +0000 | [diff] [blame] | 58 | //#define BB_MKFIFO |
Eric Andersen | b0e9a70 | 1999-10-18 22:28:26 +0000 | [diff] [blame] | 59 | #define BB_MKNOD |
Eric Andersen | 3e0fbae | 1999-10-19 06:02:44 +0000 | [diff] [blame] | 60 | #define BB_MKSWAP |
Eric Andersen | a9c95ea | 1999-11-15 17:33:30 +0000 | [diff] [blame] | 61 | //#define BB_MNC |
Eric Andersen | 4bea32a | 1999-10-06 00:30:51 +0000 | [diff] [blame] | 62 | #define BB_MORE |
Eric Andersen | 596e546 | 1999-10-07 08:30:23 +0000 | [diff] [blame] | 63 | #define BB_MOUNT |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 64 | //#define BB_NFSMOUNT |
Eric Andersen | d73dc5b | 1999-11-10 23:13:02 +0000 | [diff] [blame] | 65 | //#define BB_MT |
John Beppu | b332e77 | 2000-01-29 12:59:01 +0000 | [diff] [blame] | 66 | #define BB_NSLOOKUP |
Eric Andersen | 485b955 | 1999-12-07 23:14:59 +0000 | [diff] [blame] | 67 | #define BB_PING |
Eric Andersen | 2cb5507 | 1999-12-10 08:25:07 +0000 | [diff] [blame] | 68 | #define BB_POWEROFF |
Eric Andersen | d73dc5b | 1999-11-10 23:13:02 +0000 | [diff] [blame] | 69 | //#define BB_PRINTF |
Eric Andersen | ef8b6c7 | 1999-10-20 08:05:35 +0000 | [diff] [blame] | 70 | #define BB_PS |
Eric Andersen | 2ce1edc | 1999-10-12 15:42:48 +0000 | [diff] [blame] | 71 | #define BB_PWD |
Eric Andersen | 3cf52d1 | 1999-10-12 22:26:06 +0000 | [diff] [blame] | 72 | #define BB_REBOOT |
Eric Andersen | bed30e9 | 1999-10-18 19:02:32 +0000 | [diff] [blame] | 73 | #define BB_RM |
Eric Andersen | f6be944 | 1999-10-13 21:12:06 +0000 | [diff] [blame] | 74 | #define BB_RMDIR |
Erik Andersen | d387d01 | 1999-12-21 02:55:11 +0000 | [diff] [blame] | 75 | //#define BB_RMMOD |
Eric Andersen | c1525e8 | 1999-10-29 00:07:31 +0000 | [diff] [blame] | 76 | #define BB_SED |
Erik Andersen | 3163821 | 2000-01-15 22:28:50 +0000 | [diff] [blame] | 77 | //#define BB_SFDISK |
Erik Andersen | 3522eb1 | 2000-03-12 23:49:18 +0000 | [diff] [blame] | 78 | #define BB_SH |
Eric Andersen | 3cf52d1 | 1999-10-12 22:26:06 +0000 | [diff] [blame] | 79 | #define BB_SLEEP |
John Beppu | 019513a | 1999-12-22 17:57:31 +0000 | [diff] [blame] | 80 | #define BB_SORT |
Eric Andersen | 8759006 | 1999-10-18 21:22:59 +0000 | [diff] [blame] | 81 | #define BB_SWAPONOFF |
Eric Andersen | bed30e9 | 1999-10-18 19:02:32 +0000 | [diff] [blame] | 82 | #define BB_SYNC |
Erik Andersen | 05df239 | 2000-01-13 04:43:48 +0000 | [diff] [blame] | 83 | #define BB_SYSLOGD |
Eric Andersen | abc0f4f | 1999-12-08 23:19:36 +0000 | [diff] [blame] | 84 | #define BB_TAIL |
John Beppu | 059f152 | 1999-12-10 05:27:16 +0000 | [diff] [blame] | 85 | #define BB_TAR |
86 | #define BB_TEE | ||||
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 87 | #define BB_TEST |
Erik Andersen | f7c49ef | 2000-02-22 17:17:45 +0000 | [diff] [blame] | 88 | // Don't turn BB_TELNET on. It doesn't work. |
89 | #define BB_TELNET | ||||
Eric Andersen | 596e546 | 1999-10-07 08:30:23 +0000 | [diff] [blame] | 90 | #define BB_TOUCH |
Erik Andersen | fb002d0 | 2000-03-05 08:07:00 +0000 | [diff] [blame] | 91 | #define BB_TR |
Eric Andersen | b6a44b8 | 1999-11-13 04:47:09 +0000 | [diff] [blame] | 92 | #define BB_TRUE_FALSE |
Erik Andersen | 3163821 | 2000-01-15 22:28:50 +0000 | [diff] [blame] | 93 | #define BB_TTY |
Erik Andersen | 66be5e7 | 2000-03-05 07:52:05 +0000 | [diff] [blame] | 94 | #define BB_UPTIME |
Erik Andersen | 05df239 | 2000-01-13 04:43:48 +0000 | [diff] [blame] | 95 | #define BB_WC |
Erik Andersen | 3163821 | 2000-01-15 22:28:50 +0000 | [diff] [blame] | 96 | #define BB_WHOAMI |
Eric Andersen | f811e07 | 1999-10-09 00:25:00 +0000 | [diff] [blame] | 97 | #define BB_UMOUNT |
John Beppu | abb4772 | 2000-01-06 00:48:21 +0000 | [diff] [blame] | 98 | #define BB_UNIQ |
Eric Andersen | 0460ff2 | 1999-10-25 23:32:44 +0000 | [diff] [blame] | 99 | #define BB_UNAME |
Erik Andersen | 3163821 | 2000-01-15 22:28:50 +0000 | [diff] [blame] | 100 | #define BB_UPDATE |
101 | #define BB_YES | ||||
Erik Andersen | 9e73725 | 2000-01-06 01:16:13 +0000 | [diff] [blame] | 102 | // End of Applications List |
Eric Andersen | 6a76e65 | 1999-11-19 05:31:45 +0000 | [diff] [blame] | 103 | // |
Eric Andersen | e1850dd | 1999-11-19 05:42:32 +0000 | [diff] [blame] | 104 | // |
105 | // | ||||
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 106 | // --------------------------------------------------------- |
Eric Andersen | e1850dd | 1999-11-19 05:42:32 +0000 | [diff] [blame] | 107 | // This is where feature definitions go. Generally speaking, |
108 | // turning this stuff off makes things a bit smaller (and less | ||||
109 | // pretty/useful). | ||||
110 | // | ||||
111 | // | ||||
Erik Andersen | 246cc6d | 2000-03-07 07:41:42 +0000 | [diff] [blame] | 112 | // Turn this on to use Erik's very cool devps, devmtab, |
113 | // etc. kernel drivers, thereby eliminating the need for | ||||
114 | // the /proc filesystem and thereby saving lots and lots | ||||
115 | // memory for more important things. | ||||
116 | // You can't use this and USE_PROCFS at the same time... | ||||
Erik Andersen | 269bba2 | 2000-03-08 14:50:47 +0000 | [diff] [blame] | 117 | //#define BB_FEATURE_USE_DEVPS_PATCH |
Erik Andersen | 246cc6d | 2000-03-07 07:41:42 +0000 | [diff] [blame] | 118 | // |
Erik Andersen | 9e73725 | 2000-01-06 01:16:13 +0000 | [diff] [blame] | 119 | // enable features that use the /proc filesystem (apps that |
120 | // break without this will tell you on compile)... | ||||
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 121 | // You can't use this and BB_FEATURE_USE_DEVPS_PATCH |
122 | // at the same time... | ||||
Eric Andersen | 0ecb54a | 1999-12-05 23:24:55 +0000 | [diff] [blame] | 123 | #define BB_FEATURE_USE_PROCFS |
Erik Andersen | b7cc49d | 2000-01-13 06:38:14 +0000 | [diff] [blame] | 124 | // |
Eric Andersen | 5d44d1f | 1999-11-22 06:01:01 +0000 | [diff] [blame] | 125 | // Use termios to manipulate the screen ('more' is prettier with this on) |
Eric Andersen | 6a76e65 | 1999-11-19 05:31:45 +0000 | [diff] [blame] | 126 | #define BB_FEATURE_USE_TERMIOS |
Erik Andersen | b7cc49d | 2000-01-13 06:38:14 +0000 | [diff] [blame] | 127 | // |
Erik Andersen | 9e73725 | 2000-01-06 01:16:13 +0000 | [diff] [blame] | 128 | // calculate terminal & column widths (for more and ls) |
Eric Andersen | 6a76e65 | 1999-11-19 05:31:45 +0000 | [diff] [blame] | 129 | #define BB_FEATURE_AUTOWIDTH |
Erik Andersen | b7cc49d | 2000-01-13 06:38:14 +0000 | [diff] [blame] | 130 | // |
Erik Andersen | 9e73725 | 2000-01-06 01:16:13 +0000 | [diff] [blame] | 131 | // show username/groupnames (bypasses libc6 NSS) for ls |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 132 | #define BB_FEATURE_LS_USERNAME |
Erik Andersen | b7cc49d | 2000-01-13 06:38:14 +0000 | [diff] [blame] | 133 | // |
Erik Andersen | 9e73725 | 2000-01-06 01:16:13 +0000 | [diff] [blame] | 134 | // show file timestamps in ls |
Eric Andersen | e1850dd | 1999-11-19 05:42:32 +0000 | [diff] [blame] | 135 | #define BB_FEATURE_LS_TIMESTAMPS |
Erik Andersen | b7cc49d | 2000-01-13 06:38:14 +0000 | [diff] [blame] | 136 | // |
Eric Andersen | e1850dd | 1999-11-19 05:42:32 +0000 | [diff] [blame] | 137 | // enable ls -p and -F |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 138 | #define BB_FEATURE_LS_FILETYPES |
Erik Andersen | b7cc49d | 2000-01-13 06:38:14 +0000 | [diff] [blame] | 139 | // |
Erik Andersen | 9e73725 | 2000-01-06 01:16:13 +0000 | [diff] [blame] | 140 | // Change ping implementation -- simplified, featureless, but really small. |
Eric Andersen | 19db07b | 1999-12-11 08:41:28 +0000 | [diff] [blame] | 141 | //#define BB_SIMPLE_PING |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 142 | // |
Erik Andersen | 9e73725 | 2000-01-06 01:16:13 +0000 | [diff] [blame] | 143 | // Make init use a simplified /etc/inittab file (recommended). |
144 | #define BB_FEATURE_USE_INITTAB | ||||
Erik Andersen | b7cc49d | 2000-01-13 06:38:14 +0000 | [diff] [blame] | 145 | // |
Erik Andersen | 9e73725 | 2000-01-06 01:16:13 +0000 | [diff] [blame] | 146 | //Enable init being called as /linuxrc |
Erik Andersen | fac10d7 | 2000-02-07 05:29:42 +0000 | [diff] [blame] | 147 | //#define BB_FEATURE_LINUXRC |
Erik Andersen | 9e73725 | 2000-01-06 01:16:13 +0000 | [diff] [blame] | 148 | // |
Erik Andersen | 3fe39dc | 2000-01-25 18:13:53 +0000 | [diff] [blame] | 149 | //Simple tail implementation (2k vs 6k for the full one). Still |
150 | //provides 'tail -f' support -- but for only one file at a time. | ||||
151 | #define BB_FEATURE_SIMPLE_TAIL | ||||
152 | // | ||||
Erik Andersen | b7cc49d | 2000-01-13 06:38:14 +0000 | [diff] [blame] | 153 | // Enable support for loop devices in mount |
154 | #define BB_FEATURE_MOUNT_LOOP | ||||
155 | // | ||||
Erik Andersen | fac10d7 | 2000-02-07 05:29:42 +0000 | [diff] [blame] | 156 | // Enable support for a real /etc/mtab file instead of /proc/mounts |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 157 | //#define BB_FEATURE_MOUNT_MTAB_SUPPORT |
Erik Andersen | fac10d7 | 2000-02-07 05:29:42 +0000 | [diff] [blame] | 158 | // |
159 | // | ||||
160 | // Enable support for remounting filesystems | ||||
161 | #define BB_FEATURE_REMOUNT | ||||
162 | // | ||||
Erik Andersen | 05100cd | 2000-01-16 01:30:52 +0000 | [diff] [blame] | 163 | // Enable support for creation of tar files. |
Erik Andersen | 6acaa40 | 2000-03-26 14:03:20 +0000 | [diff] [blame] | 164 | #define BB_FEATURE_TAR_CREATE |
Erik Andersen | 05100cd | 2000-01-16 01:30:52 +0000 | [diff] [blame] | 165 | // |
Erik Andersen | 029011b | 2000-03-04 21:19:32 +0000 | [diff] [blame] | 166 | //// Enable reverse sort |
167 | //#define BB_FEATURE_SORT_REVERSE | ||||
168 | // | ||||
Erik Andersen | de55287 | 2000-01-23 01:34:05 +0000 | [diff] [blame] | 169 | // Allow init to permenently chroot, and umount the old root fs |
Erik Andersen | fac10d7 | 2000-02-07 05:29:42 +0000 | [diff] [blame] | 170 | // just like an initrd does. Requires a kernel patch by Werner Almesberger. |
Erik Andersen | de55287 | 2000-01-23 01:34:05 +0000 | [diff] [blame] | 171 | // ftp://icaftp.epfl.ch/pub/people/almesber/misc/umount-root-*.tar.gz |
Erik Andersen | 246cc6d | 2000-03-07 07:41:42 +0000 | [diff] [blame] | 172 | //#define BB_FEATURE_INIT_CHROOT |
Erik Andersen | de55287 | 2000-01-23 01:34:05 +0000 | [diff] [blame] | 173 | // |
Erik Andersen | 06249f2 | 2000-03-07 07:48:53 +0000 | [diff] [blame] | 174 | //Make sure nothing is printed to the console on boot |
Erik Andersen | ea6b67d | 2000-03-07 07:47:10 +0000 | [diff] [blame] | 175 | #define BB_FEATURE_EXTRA_QUIET |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 176 | // |
177 | // Enable full regular expressions. This adds about | ||||
178 | // 4k. When this is off, things that would normally | ||||
179 | // use regualr expressions (like grep) will just use | ||||
180 | // normal strings. | ||||
181 | #define BB_FEATURE_FULL_REGULAR_EXPRESSIONS | ||||
182 | // | ||||
183 | // | ||||
184 | // Enable command line editing in the shell | ||||
185 | #define BB_FEATURE_SH_COMMAND_EDITING | ||||
186 | // | ||||
187 | // | ||||
Erik Andersen | 298854f | 2000-03-23 01:09:18 +0000 | [diff] [blame] | 188 | //Turn on extra fbset options |
189 | //#define BB_FEATURE_FBSET_FANCY | ||||
190 | // | ||||
191 | // | ||||
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 192 | // End of Features List |
193 | // | ||||
194 | // | ||||
195 | // | ||||
196 | // | ||||
197 | // | ||||
198 | // | ||||
199 | //--------------------------------------------------- | ||||
200 | // Nothing beyond this point should ever be touched by | ||||
201 | // mere mortals so leave this stuff alone. | ||||
202 | #ifdef BB_FEATURE_MOUNT_MTAB_SUPPORT | ||||
203 | #define BB_MTAB | ||||
204 | #endif | ||||
205 | // | ||||
Erik Andersen | 6273f65 | 2000-03-17 01:12:41 +0000 | [diff] [blame] | 206 | #if defined BB_FEATURE_FULL_REGULAR_EXPRESSIONS && (defined BB_SED || defined BB_GREP ) |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 207 | #define BB_REGEXP |
208 | #endif | ||||
209 | // | ||||
Erik Andersen | 6273f65 | 2000-03-17 01:12:41 +0000 | [diff] [blame] | 210 | #if defined BB_FEATURE_SH_COMMAND_EDITING && defined BB_SH |
Erik Andersen | d75af99 | 2000-03-16 08:09:09 +0000 | [diff] [blame] | 211 | #define BB_CMDEDIT |
212 | #endif | ||||
213 | // | ||||
Erik Andersen | 6273f65 | 2000-03-17 01:12:41 +0000 | [diff] [blame] | 214 | #ifdef BB_KILLALL |
215 | #ifndef BB_KILL | ||||
216 | #define BB_KILL | ||||
217 | #endif | ||||
218 | #endif | ||||
219 | // | ||||
220 | #ifdef BB_FEATURE_LINUXRC | ||||
221 | #ifndef BB_INIT | ||||
222 | #define BB_INIT | ||||
223 | #endif | ||||
224 | #endif | ||||
225 | // |