Changes for kernel and Busybox
[tomato.git] / release / src / router / busybox / libbb / Config.src
blobee1b66a458f452825cd546fdecf4704edb463e60
2 # For a description of the syntax of this configuration file,
3 # see scripts/kbuild/config-language.txt.
6 menu "Busybox Library Tuning"
8 INSERT
10 config PASSWORD_MINLEN
11         int "Minimum password length"
12         default 6
13         range 5 32
14         help
15           Minimum allowable password length.
17 config MD5_SMALL
18         int "MD5: Trade bytes for speed (0:fast, 3:slow)"
19         default 1
20         range 0 3
21         help
22           Trade binary size versus speed for the md5sum algorithm.
23           Approximate values running uClibc and hashing
24           linux-2.4.4.tar.bz2 were:
25                             user times (sec)  text size (386)
26           0 (fastest)         1.1                6144
27           1                   1.4                5392
28           2                   3.0                5088
29           3 (smallest)        5.1                4912
31 config FEATURE_FAST_TOP
32         bool "Faster /proc scanning code (+100 bytes)"
33         default y
34         help
35           This option makes top (and ps) ~20% faster (or 20% less CPU hungry),
36           but code size is slightly bigger.
38 config FEATURE_ETC_NETWORKS
39         bool "Support for /etc/networks"
40         default n
41         help
42           Enable support for network names in /etc/networks. This is
43           a rarely used feature which allows you to use names
44           instead of IP/mask pairs in route command.
46 config FEATURE_USE_TERMIOS
47         bool "Use termios to manipulate the screen"
48         default y
49         depends on MORE || TOP || POWERTOP
50         help
51           This option allows utilities such as 'more' and 'top' to determine
52           the size of the screen. If you leave this disabled, your utilities
53           that display things on the screen will be especially primitive and
54           will be unable to determine the current screen size, and will be
55           unable to move the cursor.
57 config FEATURE_EDITING
58         bool "Command line editing"
59         default y
60         help
61           Enable line editing (mainly for shell command line).
63 config FEATURE_EDITING_MAX_LEN
64         int "Maximum length of input"
65         range 128 8192
66         default 1024
67         depends on FEATURE_EDITING
68         help
69           Line editing code uses on-stack buffers for storage.
70           You may want to decrease this parameter if your target machine
71           benefits from smaller stack usage.
73 config FEATURE_EDITING_VI
74         bool "vi-style line editing commands"
75         default n
76         depends on FEATURE_EDITING
77         help
78           Enable vi-style line editing. In shells, this mode can be
79           turned on and off with "set -o vi" and "set +o vi".
81 config FEATURE_EDITING_HISTORY
82         int "History size"
83         # Don't allow way too big values here, code uses fixed "char *history[N]" struct member
84         range 0 9999
85         default 255
86         depends on FEATURE_EDITING
87         help
88           Specify command history size (0 - disable).
90 config FEATURE_EDITING_SAVEHISTORY
91         bool "History saving"
92         default y
93         depends on FEATURE_EDITING
94         help
95           Enable history saving in shells.
97 config FEATURE_EDITING_SAVE_ON_EXIT
98         bool "Save history on shell exit, not after every command"
99         default n
100         depends on FEATURE_EDITING_SAVEHISTORY
101         help
102           Save history on shell exit, not after every command.
104 config FEATURE_REVERSE_SEARCH
105         bool "Reverse history search"
106         default y
107         depends on FEATURE_EDITING_SAVEHISTORY
108         help
109           Enable readline-like Ctrl-R combination for reverse history search.
110           Increases code by about 0.5k.
112 config FEATURE_TAB_COMPLETION
113         bool "Tab completion"
114         default y
115         depends on FEATURE_EDITING
116         help
117           Enable tab completion.
119 config FEATURE_USERNAME_COMPLETION
120         bool "Username completion"
121         default n
122         depends on FEATURE_TAB_COMPLETION
123         help
124           Enable username completion.
126 config FEATURE_EDITING_FANCY_PROMPT
127         bool "Fancy shell prompts"
128         default y
129         depends on FEATURE_EDITING
130         help
131           Setting this option allows for prompts to use things like \w and
132           \$ and escape codes.
134 config FEATURE_EDITING_ASK_TERMINAL
135         bool "Query cursor position from terminal"
136         default n
137         depends on FEATURE_EDITING
138         help
139           Allow usage of "ESC [ 6 n" sequence. Terminal answers back with
140           current cursor position. This information is used to make line
141           editing more robust in some cases.
142           If you are not sure whether your terminals respond to this code
143           correctly, or want to save on code size (about 400 bytes),
144           then do not turn this option on.
146 config FEATURE_NON_POSIX_CP
147         bool "Non-POSIX, but safer, copying to special nodes"
148         default y
149         help
150           With this option, "cp file symlink" will delete symlink
151           and create a regular file. This does not conform to POSIX,
152           but prevents a symlink attack.
153           Similarly, "cp file device" will not send file's data
154           to the device. (To do that, use "cat file >device")
156 config FEATURE_VERBOSE_CP_MESSAGE
157         bool "Give more precise messages when copy fails (cp, mv etc)"
158         default n
159         help
160           Error messages with this feature enabled:
161             $ cp file /does_not_exist/file
162             cp: cannot create '/does_not_exist/file': Path does not exist
163             $ cp file /vmlinuz/file
164             cp: cannot stat '/vmlinuz/file': Path has non-directory component
165           If this feature is not enabled, they will be, respectively:
166             cp: cannot create '/does_not_exist/file': No such file or directory
167             cp: cannot stat '/vmlinuz/file': Not a directory
168           This will cost you ~60 bytes.
170 config FEATURE_COPYBUF_KB
171         int "Copy buffer size, in kilobytes"
172         range 1 1024
173         default 4
174         help
175           Size of buffer used by cp, mv, install, wget etc.
176           Buffers which are 4 kb or less will be allocated on stack.
177           Bigger buffers will be allocated with mmap, with fallback to 4 kb
178           stack buffer if mmap fails.
180 config FEATURE_SKIP_ROOTFS
181         bool "Skip rootfs in mount table"
182         default y
183         help
184           Ignore rootfs entry in mount table.
186           In Linux, kernel has a special filesystem, rootfs, which is initially
187           mounted on /. It contains initramfs data, if kernel is configured
188           to have one. Usually, another file system is mounted over / early
189           in boot process, and therefore most tools which manipulate
190           mount table, such as df, will skip rootfs entry.
192           However, some systems do not mount anything on /.
193           If you need to configure busybox for one of these systems,
194           you may find it useful to turn this option off to make df show
195           initramfs statistics.
197           Otherwise, choose Y.
199 config MONOTONIC_SYSCALL
200         bool "Use clock_gettime(CLOCK_MONOTONIC) syscall"
201         default n
202         select PLATFORM_LINUX
203         help
204           Use clock_gettime(CLOCK_MONOTONIC) syscall for measuring
205           time intervals (time, ping, traceroute etc need this).
206           Probably requires Linux 2.6+. If not selected, gettimeofday
207           will be used instead (which gives wrong results if date/time
208           is reset).
210 config IOCTL_HEX2STR_ERROR
211         bool "Use ioctl names rather than hex values in error messages"
212         default y
213         help
214           Use ioctl names rather than hex values in error messages
215           (e.g. VT_DISALLOCATE rather than 0x5608). If disabled this
216           saves about 1400 bytes.
218 config FEATURE_HWIB
219         bool "Support infiniband HW"
220         default y
221         help
222           Support for printing infiniband addresses in
223           network applets.
225 endmenu