5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
1 |
#
|
2 |
# For a description of the syntax of this configuration file,
|
|
15495
by Kartik Agaram
restore documentation on the build config language |
3 |
# see docs/Kconfig-language.txt.
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
4 |
#
|
5 |
||
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
6 |
mainmenu "Configuration" |
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
7 |
|
8 |
config HAVE_DOT_CONFIG
|
|
9 |
bool
|
|
10 |
default y
|
|
11 |
||
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
12 |
menu "Settings" |
5331
by Mike Frysinger
rearrange the menu a little to split general settings from applet selection |
13 |
|
6365
by Denis Vlasenko
build system overhaul |
14 |
config DESKTOP
|
16113
by Denys Vlasenko
build system: fix compiler warnings |
15 |
bool "Enable compatibility for full-blown desktop systems (8kb)" |
11557
by Denys Vlasenko
make DESKTOP=y the default |
16 |
default y
|
6348
by Denis Vlasenko
g[un]zip: add support for -v (verbose). |
17 |
help
|
14777
by Denys Vlasenko
config: deindent all help texts |
18 |
Enable applet options and features which are not essential.
|
19 |
Many applet options have dedicated config options to (de)select them
|
|
20 |
under that applet; this options enables those options which have no
|
|
21 |
individual config item for them.
|
|
22 |
||
23 |
Select this if you plan to use busybox on full-blown desktop machine
|
|
24 |
with common Linux distro, which needs higher level of command-line
|
|
25 |
compatibility.
|
|
26 |
||
27 |
If you are preparing your build to be used on an embedded box
|
|
28 |
where you have tighter control over the entire set of userspace
|
|
29 |
tools, you can unselect this option for smaller code size.
|
|
6348
by Denis Vlasenko
g[un]zip: add support for -v (verbose). |
30 |
|
9298
by Denis Vlasenko
grep: option to use GNU regex matching instead of POSIX one. |
31 |
config EXTRA_COMPAT
|
32 |
bool "Provide compatible behavior for rare corner cases (bigger code)" |
|
33 |
default n
|
|
34 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
35 |
This option makes grep, sed etc handle rare corner cases
|
36 |
(embedded NUL bytes and such). This makes code bigger and uses
|
|
37 |
some GNU extensions in libc. You probably only need this option
|
|
38 |
if you plan to run busybox on desktop.
|
|
9298
by Denis Vlasenko
grep: option to use GNU regex matching instead of POSIX one. |
39 |
|
14867
by Denys Vlasenko
config: FEDORA_COMPAT option (so far only tweaks uname) |
40 |
config FEDORA_COMPAT
|
41 |
bool "Building for Fedora distribution" |
|
42 |
default n
|
|
43 |
help
|
|
44 |
This option makes some tools behave like they do on Fedora.
|
|
45 |
||
46 |
At the time of this writing (2017-08) this only affects uname:
|
|
47 |
normally, uname -p (processor) and uname -i (platform)
|
|
48 |
are shown as "unknown", but with this option uname -p
|
|
49 |
shows the same string as uname -m (machine type),
|
|
50 |
and so does uname -i unless machine type is i486/i586/i686 -
|
|
51 |
then uname -i shows "i386".
|
|
52 |
||
10620
by Denys Vlasenko
menuconfig tweaks |
53 |
config INCLUDE_SUSv2
|
54 |
bool "Enable obsolete features removed before SUSv3" |
|
55 |
default y
|
|
56 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
57 |
This option will enable backwards compatibility with SuSv2,
|
58 |
specifically, old-style numeric options ('command -1 <file>')
|
|
59 |
will be supported in head, tail, and fold. (Note: should
|
|
60 |
affect renice too.)
|
|
10620
by Denys Vlasenko
menuconfig tweaks |
61 |
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
62 |
config LONG_OPTS
|
63 |
bool "Support --long-options" |
|
64 |
default y
|
|
10488
by Denys Vlasenko
add USE_PORTABLE_CODE option and use it in find applet |
65 |
help
|
14777
by Denys Vlasenko
config: deindent all help texts |
66 |
Enable this if you want busybox applets to use the gnu --long-option
|
67 |
style, in addition to single character -a -b -c style options.
|
|
10488
by Denys Vlasenko
add USE_PORTABLE_CODE option and use it in find applet |
68 |
|
6365
by Denis Vlasenko
build system overhaul |
69 |
config SHOW_USAGE
|
12579
by Bernhard Reutner-Fischer
Config: clarify {SHOW,VERBOSE,COMPRESS}_USAGE |
70 |
bool "Show applet usage messages" |
5440
by Bernhard Reutner-Fischer
- add option to suppress the terse usage messages. Saves 6.8k for defconfig: |
71 |
default y
|
72 |
help
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
73 |
Enabling this option, applets will show terse help messages
|
14777
by Denys Vlasenko
config: deindent all help texts |
74 |
when invoked with wrong arguments.
|
75 |
If you do not want to show any (helpful) usage message when
|
|
76 |
issuing wrong command syntax, you can say 'N' here,
|
|
77 |
saving approximately 7k.
|
|
5440
by Bernhard Reutner-Fischer
- add option to suppress the terse usage messages. Saves 6.8k for defconfig: |
78 |
|
6365
by Denis Vlasenko
build system overhaul |
79 |
config FEATURE_VERBOSE_USAGE
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
80 |
bool "Show verbose applet usage messages" |
11395
by Denys Vlasenko
remove defconfig. Now "make defconfig" simply uses defaults from Config.in |
81 |
default y
|
11392
by Denys Vlasenko
Remove requirement that include/applets.h must be sorted |
82 |
depends on SHOW_USAGE
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
83 |
help
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
84 |
All applets will show verbose help messages when invoked with --help.
|
85 |
This will add a lot of text to the binary.
|
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
86 |
|
6365
by Denis Vlasenko
build system overhaul |
87 |
config FEATURE_COMPRESS_USAGE
|
5575
by Rob Landley
Patch from Dennis Vlasenko to add the option to compress help text. |
88 |
bool "Store applet usage messages in compressed form" |
89 |
default y
|
|
6365
by Denis Vlasenko
build system overhaul |
90 |
depends on SHOW_USAGE
|
5575
by Rob Landley
Patch from Dennis Vlasenko to add the option to compress help text. |
91 |
help
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
92 |
Store usage messages in .bz2 compressed form, uncompress them
|
93 |
on-the-fly when "APPLET --help" is run.
|
|
5575
by Rob Landley
Patch from Dennis Vlasenko to add the option to compress help text. |
94 |
|
14777
by Denys Vlasenko
config: deindent all help texts |
95 |
If you have a really tiny busybox with few applets enabled (and
|
96 |
bunzip2 isn't one of them), the overhead of the decompressor might
|
|
97 |
be noticeable. Also, if you run executables directly from ROM
|
|
98 |
and have very little memory, this might not be a win. Otherwise,
|
|
99 |
you probably want this.
|
|
5905
by Rob Landley
Attempt at fixing bug 815 by upgrading bb_spawn() so that builtins are at |
100 |
|
14736
by Denys Vlasenko
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu |
101 |
config LFS
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
102 |
bool "Support files > 2 GB" |
14736
by Denys Vlasenko
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu |
103 |
default y
|
104 |
help
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
105 |
If you need to work with large files, enable this option.
|
106 |
This will have no effect if your kernel or your C
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
107 |
library lacks large file support for large files. Some of the
|
108 |
programs that can benefit from large file support include dd, gzip,
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
109 |
cp, mount, tar.
|
14736
by Denys Vlasenko
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu |
110 |
|
17597
by Uwe Kleine-König
build system: Make it possible to build with 64bit time_t |
111 |
config TIME64
|
112 |
bool "Support 64bit wide time types" |
|
113 |
default y
|
|
114 |
depends on LFS
|
|
115 |
help
|
|
116 |
Make times later than 2038 representable for several libc syscalls
|
|
17599
by Denys Vlasenko
build system: fix "Config.in:117 error: Overlong line" |
117 |
(stat, clk_gettime etc.). Note this switch is specific to glibc
|
118 |
and has no effect on platforms that already use 64bit wide time types
|
|
119 |
(i.e. all 64bit archs and some selected 32bit archs (currently riscv
|
|
120 |
and x32)).
|
|
17597
by Uwe Kleine-König
build system: Make it possible to build with 64bit time_t |
121 |
|
13292
by Bartosz Golaszewski
Kbuild: move CONFIG_PAM to general configuration |
122 |
config PAM
|
14405
by Denys Vlasenko
Big cleanup in config help and description |
123 |
bool "Support PAM (Pluggable Authentication Modules)" |
13292
by Bartosz Golaszewski
Kbuild: move CONFIG_PAM to general configuration |
124 |
default n
|
125 |
help
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
126 |
Use PAM in some applets (currently login and httpd) instead
|
14777
by Denys Vlasenko
config: deindent all help texts |
127 |
of direct access to password database.
|
13292
by Bartosz Golaszewski
Kbuild: move CONFIG_PAM to general configuration |
128 |
|
6365
by Denis Vlasenko
build system overhaul |
129 |
config FEATURE_DEVPTS
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
130 |
bool "Use the devpts filesystem for Unix98 PTYs" |
5905
by Rob Landley
Attempt at fixing bug 815 by upgrading bb_spawn() so that builtins are at |
131 |
default y
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
132 |
help
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
133 |
Enable if you want to use Unix98 PTY support. If enabled,
|
14777
by Denys Vlasenko
config: deindent all help texts |
134 |
busybox will use /dev/ptmx for the master side of the pseudoterminal
|
135 |
and /dev/pts/<number> for the slave side. Otherwise, BSD style
|
|
136 |
/dev/ttyp<number> will be used. To use this option, you should have
|
|
137 |
devpts mounted.
|
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
138 |
|
12080
by Denys Vlasenko
move utmp.h include to libbb.h |
139 |
config FEATURE_UTMP
|
140 |
bool "Support utmp file" |
|
141 |
default y
|
|
142 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
143 |
The file /var/run/utmp is used to track who is currently logged in.
|
144 |
With this option on, certain applets (getty, login, telnetd etc)
|
|
145 |
will create and delete entries there.
|
|
146 |
"who" applet requires this option.
|
|
12080
by Denys Vlasenko
move utmp.h include to libbb.h |
147 |
|
11201
by Denys Vlasenko
Move utmp/wtmp support to "General configuration" section |
148 |
config FEATURE_WTMP
|
149 |
bool "Support wtmp file" |
|
11395
by Denys Vlasenko
remove defconfig. Now "make defconfig" simply uses defaults from Config.in |
150 |
default y
|
12080
by Denys Vlasenko
move utmp.h include to libbb.h |
151 |
depends on FEATURE_UTMP
|
11201
by Denys Vlasenko
Move utmp/wtmp support to "General configuration" section |
152 |
help
|
14777
by Denys Vlasenko
config: deindent all help texts |
153 |
The file /var/run/wtmp is used to track when users have logged into
|
154 |
and logged out of the system.
|
|
155 |
With this option on, certain applets (getty, login, telnetd etc)
|
|
156 |
will append new entries there.
|
|
157 |
"last" applet requires this option.
|
|
11201
by Denys Vlasenko
Move utmp/wtmp support to "General configuration" section |
158 |
|
7291
by Denis Vlasenko
make pidfile writing configurable. |
159 |
config FEATURE_PIDFILE
|
160 |
bool "Support writing pidfiles" |
|
11395
by Denys Vlasenko
remove defconfig. Now "make defconfig" simply uses defaults from Config.in |
161 |
default y
|
7291
by Denis Vlasenko
make pidfile writing configurable. |
162 |
help
|
14777
by Denys Vlasenko
config: deindent all help texts |
163 |
This option makes some applets (e.g. crond, syslogd, inetd) write
|
164 |
a pidfile at the configured PID_FILE_PATH. It has no effect
|
|
165 |
on applets which require pidfiles to run.
|
|
12881
by Anthony G. Basile
CONFIG_PID_FILE_PATH: new configuration option for pidfile paths |
166 |
|
167 |
config PID_FILE_PATH
|
|
14736
by Denys Vlasenko
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu |
168 |
string "Directory for pidfiles" |
12881
by Anthony G. Basile
CONFIG_PID_FILE_PATH: new configuration option for pidfile paths |
169 |
default "/var/run" |
16398
by James Byrne
config: PID_FILE_PATH required for FEATURE_CROND_SPECIAL_TIMES |
170 |
depends on FEATURE_PIDFILE || FEATURE_CROND_SPECIAL_TIMES |
12881
by Anthony G. Basile
CONFIG_PID_FILE_PATH: new configuration option for pidfile paths |
171 |
help
|
14777
by Denys Vlasenko
config: deindent all help texts |
172 |
This is the default path where pidfiles are created. Applets which
|
173 |
allow you to set the pidfile path on the command line will override
|
|
174 |
this value. The option has no effect on applets that require you to
|
|
16398
by James Byrne
config: PID_FILE_PATH required for FEATURE_CROND_SPECIAL_TIMES |
175 |
specify a pidfile path. When crond has the 'Support special times'
|
176 |
option enabled, the 'crond.reboot' file is also stored here.
|
|
7291
by Denis Vlasenko
make pidfile writing configurable. |
177 |
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
178 |
config BUSYBOX
|
179 |
bool "Include busybox applet" |
|
180 |
default y
|
|
181 |
help
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
182 |
The busybox applet provides general help message and allows
|
183 |
the included applets to be listed. It also provides
|
|
184 |
optional --install command to create applet links. If you unselect
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
185 |
this option, running busybox without any arguments will give
|
186 |
just a cryptic error message:
|
|
187 |
||
188 |
$ busybox
|
|
189 |
busybox: applet not found
|
|
190 |
||
191 |
Running "busybox APPLET [ARGS...]" will still work, of course.
|
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
192 |
|
15687
by Ron Yorston
busybox: add '--show SCRIPT' option to display scripts |
193 |
config FEATURE_SHOW_SCRIPT
|
194 |
bool "Support --show SCRIPT" |
|
195 |
default y
|
|
196 |
depends on BUSYBOX
|
|
197 |
||
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
198 |
config FEATURE_INSTALLER
|
199 |
bool "Support --install [-s] to install applet links at runtime" |
|
200 |
default y
|
|
201 |
depends on BUSYBOX
|
|
202 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
203 |
Enable 'busybox --install [-s]' support. This will allow you to use
|
204 |
busybox at runtime to create hard links or symlinks for all the
|
|
205 |
applets that are compiled into busybox.
|
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
206 |
|
207 |
config INSTALL_NO_USR
|
|
208 |
bool "Don't use /usr" |
|
209 |
default n
|
|
210 |
help
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
211 |
Disable use of /usr. "busybox --install" and "make install"
|
14777
by Denys Vlasenko
config: deindent all help texts |
212 |
will install applets only to /bin and /sbin,
|
213 |
never to /usr/bin or /usr/sbin.
|
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
214 |
|
6365
by Denis Vlasenko
build system overhaul |
215 |
config FEATURE_SUID
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
216 |
bool "Drop SUID state for most applets" |
11395
by Denys Vlasenko
remove defconfig. Now "make defconfig" simply uses defaults from Config.in |
217 |
default y
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
218 |
help
|
14777
by Denys Vlasenko
config: deindent all help texts |
219 |
With this option you can install the busybox binary belonging
|
220 |
to root with the suid bit set, enabling some applets to perform
|
|
221 |
root-level operations even when run by ordinary users
|
|
222 |
(for example, mounting of user mounts in fstab needs this).
|
|
223 |
||
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
224 |
With this option enabled, busybox drops privileges for applets
|
14777
by Denys Vlasenko
config: deindent all help texts |
225 |
that don't need root access, before entering their main() function.
|
226 |
||
227 |
If you are really paranoid and don't want even initial busybox code
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
228 |
to run under root for every applet, build two busybox binaries with
|
14777
by Denys Vlasenko
config: deindent all help texts |
229 |
different applets in them (and the appropriate symlinks pointing
|
230 |
to each binary), and only set the suid bit on the one that needs it.
|
|
231 |
||
232 |
Some applets which require root rights (need suid bit on the binary
|
|
233 |
or to be run by root) and will refuse to execute otherwise:
|
|
234 |
crontab, login, passwd, su, vlock, wall.
|
|
235 |
||
236 |
The applets which will use root rights if they have them
|
|
237 |
(via suid bit, or because run by root), but would try to work
|
|
238 |
without root right nevertheless:
|
|
239 |
findfs, ping[6], traceroute[6], mount.
|
|
240 |
||
241 |
Note that if you DO NOT select this option, but DO make busybox
|
|
242 |
suid root, ALL applets will run under root, which is a huge
|
|
243 |
security hole (think "cp /some/file /etc/passwd").
|
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
244 |
|
6365
by Denis Vlasenko
build system overhaul |
245 |
config FEATURE_SUID_CONFIG
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
246 |
bool "Enable SUID configuration via /etc/busybox.conf" |
12339
by Denys Vlasenko
tweak config help text |
247 |
default y
|
6365
by Denis Vlasenko
build system overhaul |
248 |
depends on FEATURE_SUID
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
249 |
help
|
14777
by Denys Vlasenko
config: deindent all help texts |
250 |
Allow the SUID/SGID state of an applet to be determined at runtime
|
251 |
by checking /etc/busybox.conf. (This is sort of a poor man's sudo.)
|
|
252 |
The format of this file is as follows:
|
|
253 |
||
254 |
APPLET = [Ssx-][Ssx-][x-] [USER.GROUP]
|
|
255 |
||
256 |
s: USER or GROUP is allowed to execute APPLET.
|
|
257 |
APPLET will run under USER or GROUP
|
|
258 |
(regardless of who's running it).
|
|
259 |
S: USER or GROUP is NOT allowed to execute APPLET.
|
|
260 |
APPLET will run under USER or GROUP.
|
|
261 |
This option is not very sensical.
|
|
262 |
x: USER/GROUP/others are allowed to execute APPLET.
|
|
263 |
No UID/GID change will be done when it is run.
|
|
264 |
-: USER/GROUP/others are not allowed to execute APPLET.
|
|
265 |
||
266 |
An example might help:
|
|
267 |
||
268 |
|[SUID]
|
|
269 |
|su = ssx root.0 # applet su can be run by anyone and runs with
|
|
270 |
| # euid=0,egid=0
|
|
271 |
|su = ssx # exactly the same
|
|
272 |
|
|
|
273 |
|mount = sx- root.disk # applet mount can be run by root and members
|
|
274 |
| # of group disk (but not anyone else)
|
|
275 |
| # and runs with euid=0 (egid is not changed)
|
|
276 |
|
|
|
277 |
|cp = --- # disable applet cp for everyone
|
|
278 |
||
279 |
The file has to be owned by user root, group root and has to be
|
|
280 |
writeable only by root:
|
|
281 |
(chown 0.0 /etc/busybox.conf; chmod 600 /etc/busybox.conf)
|
|
282 |
The busybox executable has to be owned by user root, group
|
|
283 |
root and has to be setuid root for this to work:
|
|
284 |
(chown 0.0 /bin/busybox; chmod 4755 /bin/busybox)
|
|
285 |
||
286 |
Robert 'sandman' Griebl has more information here:
|
|
287 |
<url: http://www.softforge.de/bb/suid.html >.
|
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
288 |
|
6365
by Denis Vlasenko
build system overhaul |
289 |
config FEATURE_SUID_CONFIG_QUIET
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
290 |
bool "Suppress warning message if /etc/busybox.conf is not readable" |
5810
by Rob Landley
Add CONFIG_NITPICK. (And tweak a couple other help entries while I'm there.) |
291 |
default y
|
6365
by Denis Vlasenko
build system overhaul |
292 |
depends on FEATURE_SUID_CONFIG
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
293 |
help
|
14777
by Denys Vlasenko
config: deindent all help texts |
294 |
/etc/busybox.conf should be readable by the user needing the SUID,
|
295 |
check this option to avoid users to be notified about missing
|
|
296 |
permissions.
|
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
297 |
|
7403
by Denis Vlasenko
Rename two config options: |
298 |
config FEATURE_PREFER_APPLETS
|
6927
by Denis Vlasenko
Introduce FEATURE_EXEC_PREFER_APPLETS = "re-execute our own |
299 |
bool "exec prefers applets" |
300 |
default n
|
|
301 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
302 |
This is an experimental option which directs applets about to
|
303 |
call 'exec' to try and find an applicable busybox applet before
|
|
304 |
searching the PATH. This is typically done by exec'ing
|
|
305 |
/proc/self/exe.
|
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
306 |
|
14777
by Denys Vlasenko
config: deindent all help texts |
307 |
This may affect shell, find -exec, xargs and similar applets.
|
308 |
They will use applets even if /bin/APPLET -> busybox link
|
|
309 |
is missing (or is not a link to busybox). However, this causes
|
|
310 |
problems in chroot jails without mounted /proc and with ps/top
|
|
311 |
(command name can be shown as 'exe' for applets started this way).
|
|
6927
by Denis Vlasenko
Introduce FEATURE_EXEC_PREFER_APPLETS = "re-execute our own |
312 |
|
6365
by Denis Vlasenko
build system overhaul |
313 |
config BUSYBOX_EXEC_PATH
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
314 |
string "Path to busybox executable" |
5905
by Rob Landley
Attempt at fixing bug 815 by upgrading bb_spawn() so that builtins are at |
315 |
default "/proc/self/exe" |
316 |
help
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
317 |
When applets need to run other applets, busybox
|
14777
by Denys Vlasenko
config: deindent all help texts |
318 |
sometimes needs to exec() itself. When the /proc filesystem is
|
319 |
mounted, /proc/self/exe always points to the currently running
|
|
320 |
executable. If you haven't got /proc, set this to wherever you
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
321 |
want to run busybox from.
|
5905
by Rob Landley
Attempt at fixing bug 815 by upgrading bb_spawn() so that builtins are at |
322 |
|
14736
by Denys Vlasenko
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu |
323 |
config SELINUX
|
324 |
bool "Support NSA Security Enhanced Linux" |
|
325 |
default n
|
|
326 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
327 |
Enable support for SELinux in applets ls, ps, and id. Also provide
|
328 |
the option of compiling in SELinux applets.
|
|
14736
by Denys Vlasenko
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu |
329 |
|
14777
by Denys Vlasenko
config: deindent all help texts |
330 |
If you do not have a complete SELinux userland installed, this stuff
|
331 |
will not compile. Specifially, libselinux 1.28 or better is
|
|
332 |
directly required by busybox. If the installation is located in a
|
|
333 |
non-standard directory, provide it by invoking make as follows:
|
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
334 |
|
14736
by Denys Vlasenko
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu |
335 |
CFLAGS=-I<libselinux-include-path> \
|
336 |
LDFLAGS=-L<libselinux-lib-path> \
|
|
337 |
make
|
|
338 |
||
14777
by Denys Vlasenko
config: deindent all help texts |
339 |
Most people will leave this set to 'N'.
|
14736
by Denys Vlasenko
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu |
340 |
|
341 |
config FEATURE_CLEAN_UP
|
|
342 |
bool "Clean up all memory before exiting (usually not needed)" |
|
343 |
default n
|
|
344 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
345 |
As a size optimization, busybox normally exits without explicitly
|
346 |
freeing dynamically allocated memory or closing files. This saves
|
|
347 |
space since the OS will clean up for us, but it can confuse debuggers
|
|
348 |
like valgrind, which report tons of memory and resource leaks.
|
|
14736
by Denys Vlasenko
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu |
349 |
|
14777
by Denys Vlasenko
config: deindent all help texts |
350 |
Don't enable this unless you have a really good reason to clean
|
351 |
things up manually.
|
|
14736
by Denys Vlasenko
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu |
352 |
|
16266
by James Byrne
Optionally re-introduce bb_info_msg() |
353 |
config FEATURE_SYSLOG_INFO
|
354 |
bool "Support LOG_INFO level syslog messages" |
|
355 |
default y
|
|
356 |
depends on FEATURE_SYSLOG
|
|
357 |
help
|
|
358 |
Applets which send their output to syslog use either LOG_INFO or
|
|
359 |
LOG_ERR log levels, but by disabling this option all messages will
|
|
360 |
be logged at the LOG_ERR level, saving just under 200 bytes.
|
|
361 |
||
7656
by Denis Vlasenko
make FEATURE_HAVE_RPC auto-selectable by mount and inetd sub-features |
362 |
# These are auto-selected by other options
|
363 |
||
364 |
config FEATURE_SYSLOG
|
|
9570
by Denis Vlasenko
build system: tidying up CONFIG_xxx names (suggested by Rob) |
365 |
bool #No description makes it a hidden option |
7656
by Denis Vlasenko
make FEATURE_HAVE_RPC auto-selectable by mount and inetd sub-features |
366 |
default n
|
9570
by Denis Vlasenko
build system: tidying up CONFIG_xxx names (suggested by Rob) |
367 |
#help
|
14777
by Denys Vlasenko
config: deindent all help texts |
368 |
#This option is auto-selected when you select any applet which may
|
369 |
#send its output to syslog. You do not need to select it manually.
|
|
7656
by Denis Vlasenko
make FEATURE_HAVE_RPC auto-selectable by mount and inetd sub-features |
370 |
|
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
371 |
comment 'Build Options' |
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
372 |
|
6365
by Denis Vlasenko
build system overhaul |
373 |
config STATIC
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
374 |
bool "Build static binary (no shared libs)" |
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
375 |
default n
|
376 |
help
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
377 |
If you want to build a static binary, which does not use
|
378 |
or require any shared libraries, enable this option.
|
|
379 |
Static binaries are larger, but do not require functioning
|
|
380 |
dynamic libraries to be present, which is important if used
|
|
381 |
as a system rescue tool.
|
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
382 |
|
8892
by Denis Vlasenko
build system: add PIE build option |
383 |
config PIE
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
384 |
bool "Build position independent executable" |
8892
by Denis Vlasenko
build system: add PIE build option |
385 |
default n
|
386 |
depends on !STATIC |
|
387 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
388 |
Hardened code option. PIE binaries are loaded at a different
|
389 |
address at each invocation. This has some overhead,
|
|
390 |
particularly on x86-32 which is short on registers.
|
|
12167
by Gilles Espinasse
Add the help text for 'position independent executable' code build |
391 |
|
14777
by Denys Vlasenko
config: deindent all help texts |
392 |
Most people will leave this set to 'N'.
|
8892
by Denis Vlasenko
build system: add PIE build option |
393 |
|
8299
by Denis Vlasenko
hush: report [v]fork failures |
394 |
config NOMMU
|
395 |
bool "Force NOMMU build" |
|
396 |
default n
|
|
397 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
398 |
Busybox tries to detect whether architecture it is being
|
399 |
built against supports MMU or not. If this detection fails,
|
|
400 |
or if you want to build NOMMU version of busybox for testing,
|
|
401 |
you may force NOMMU build here.
|
|
8299
by Denis Vlasenko
hush: report [v]fork failures |
402 |
|
14777
by Denys Vlasenko
config: deindent all help texts |
403 |
Most people will leave this set to 'N'.
|
8299
by Denis Vlasenko
hush: report [v]fork failures |
404 |
|
9012
by Denis Vlasenko
fix breakage found by randomconfig |
405 |
# PIE can be made to work with BUILD_LIBBUSYBOX, but currently
|
406 |
# build system does not support that
|
|
6365
by Denis Vlasenko
build system overhaul |
407 |
config BUILD_LIBBUSYBOX
|
5112
by Bernhard Reutner-Fischer
- readd config option for libbusybox and ima-mode which were accidentally |
408 |
bool "Build shared libbusybox" |
5905
by Rob Landley
Attempt at fixing bug 815 by upgrading bb_spawn() so that builtins are at |
409 |
default n
|
9103
by Denis Vlasenko
build system: libbusybox cannot be static |
410 |
depends on !FEATURE_PREFER_APPLETS && !PIE && !STATIC |
5112
by Bernhard Reutner-Fischer
- readd config option for libbusybox and ima-mode which were accidentally |
411 |
help
|
14777
by Denys Vlasenko
config: deindent all help texts |
412 |
Build a shared library libbusybox.so.N.N.N which contains all
|
413 |
busybox code.
|
|
414 |
||
415 |
This feature allows every applet to be built as a really tiny
|
|
416 |
separate executable linked against the library:
|
|
417 |
|$ size 0_lib/l*
|
|
418 |
| text data bss dec hex filename
|
|
419 |
| 939 212 28 1179 49b 0_lib/last
|
|
420 |
| 939 212 28 1179 49b 0_lib/less
|
|
421 |
| 919138 8328 1556 929022 e2cfe 0_lib/libbusybox.so.1.N.M
|
|
422 |
||
423 |
This is useful on NOMMU systems which are not capable
|
|
424 |
of sharing executables, but are capable of sharing code
|
|
425 |
in dynamic libraries.
|
|
14729
by Denys Vlasenko
build system: FEATURE_LIBBUSYBOX_STATIC - try to pull libc/libm into libbusybox |
426 |
|
427 |
config FEATURE_LIBBUSYBOX_STATIC
|
|
428 |
bool "Pull in all external references into libbusybox" |
|
429 |
default n
|
|
430 |
depends on BUILD_LIBBUSYBOX
|
|
431 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
432 |
Make libbusybox library independent, not using or requiring
|
433 |
any other shared libraries.
|
|
5112
by Bernhard Reutner-Fischer
- readd config option for libbusybox and ima-mode which were accidentally |
434 |
|
8039
by Denis Vlasenko
reviving libbusybox, adding CONFIG_INDIVIDUAL part 4 |
435 |
config FEATURE_INDIVIDUAL
|
436 |
bool "Produce a binary for each applet, linked against libbusybox" |
|
437 |
default y
|
|
9103
by Denis Vlasenko
build system: libbusybox cannot be static |
438 |
depends on BUILD_LIBBUSYBOX
|
8039
by Denis Vlasenko
reviving libbusybox, adding CONFIG_INDIVIDUAL part 4 |
439 |
help
|
14777
by Denys Vlasenko
config: deindent all help texts |
440 |
If your CPU architecture doesn't allow for sharing text/rodata
|
441 |
sections of running binaries, but allows for runtime dynamic
|
|
442 |
libraries, this option will allow you to reduce memory footprint
|
|
443 |
when you have many different applets running at once.
|
|
444 |
||
445 |
If your CPU architecture allows for sharing text/rodata,
|
|
446 |
having single binary is more optimal.
|
|
447 |
||
448 |
Each applet will be a tiny program, dynamically linked
|
|
449 |
against libbusybox.so.N.N.N.
|
|
450 |
||
451 |
You need to have a working dynamic linker.
|
|
8039
by Denis Vlasenko
reviving libbusybox, adding CONFIG_INDIVIDUAL part 4 |
452 |
|
6365
by Denis Vlasenko
build system overhaul |
453 |
config FEATURE_SHARED_BUSYBOX
|
8038
by Denis Vlasenko
reviving libbusybox, adding CONFIG_INDIVIDUAL part 3 |
454 |
bool "Produce additional busybox binary linked against libbusybox" |
8039
by Denis Vlasenko
reviving libbusybox, adding CONFIG_INDIVIDUAL part 4 |
455 |
default y
|
9103
by Denis Vlasenko
build system: libbusybox cannot be static |
456 |
depends on BUILD_LIBBUSYBOX
|
5112
by Bernhard Reutner-Fischer
- readd config option for libbusybox and ima-mode which were accidentally |
457 |
help
|
14777
by Denys Vlasenko
config: deindent all help texts |
458 |
Build busybox, dynamically linked against libbusybox.so.N.N.N.
|
5112
by Bernhard Reutner-Fischer
- readd config option for libbusybox and ima-mode which were accidentally |
459 |
|
14777
by Denys Vlasenko
config: deindent all help texts |
460 |
You need to have a working dynamic linker.
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
461 |
|
8038
by Denis Vlasenko
reviving libbusybox, adding CONFIG_INDIVIDUAL part 3 |
462 |
### config BUILD_AT_ONCE
|
463 |
### bool "Compile all sources at once"
|
|
464 |
### default n
|
|
465 |
### help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
466 |
### Normally each source-file is compiled with one invocation of
|
467 |
### the compiler.
|
|
468 |
### If you set this option, all sources are compiled at once.
|
|
469 |
### This gives the compiler more opportunities to optimize which can
|
|
470 |
### result in smaller and/or faster binaries.
|
|
471 |
###
|
|
472 |
### Setting this option will consume alot of memory, e.g. if you
|
|
473 |
### enable all applets with all features, gcc uses more than 300MB
|
|
474 |
### RAM during compilation of busybox.
|
|
475 |
###
|
|
476 |
### This option is most likely only beneficial for newer compilers
|
|
477 |
### such as gcc-4.1 and above.
|
|
478 |
###
|
|
479 |
### Say 'N' unless you know what you are doing.
|
|
5112
by Bernhard Reutner-Fischer
- readd config option for libbusybox and ima-mode which were accidentally |
480 |
|
8881
by Denis Vlasenko
Reinstate CONFIG_CROSS_COMPILE_PREFIX |
481 |
config CROSS_COMPILER_PREFIX
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
482 |
string "Cross compiler prefix" |
8881
by Denis Vlasenko
Reinstate CONFIG_CROSS_COMPILE_PREFIX |
483 |
default "" |
484 |
help
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
485 |
If you want to build busybox with a cross compiler, then you
|
14777
by Denys Vlasenko
config: deindent all help texts |
486 |
will need to set this to the cross-compiler prefix, for example,
|
487 |
"i386-uclibc-".
|
|
488 |
||
489 |
Note that CROSS_COMPILE environment variable or
|
|
490 |
"make CROSS_COMPILE=xxx ..." will override this selection.
|
|
491 |
||
492 |
Native builds leave this empty.
|
|
8881
by Denis Vlasenko
Reinstate CONFIG_CROSS_COMPILE_PREFIX |
493 |
|
12689
by Rob Walker
Add SYSROOT, EXTRA_{LDFLAGS,LDLIBS} config opts; sample Android NDK config |
494 |
config SYSROOT
|
495 |
string "Path to sysroot" |
|
496 |
default "" |
|
497 |
help
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
498 |
If you want to build busybox with a cross compiler, then you
|
14777
by Denys Vlasenko
config: deindent all help texts |
499 |
might also need to specify where /usr/include and /usr/lib
|
500 |
will be found.
|
|
501 |
||
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
502 |
For example, busybox can be built against an installed
|
14777
by Denys Vlasenko
config: deindent all help texts |
503 |
Android NDK, platform version 9, for ARM ABI with
|
504 |
||
505 |
CONFIG_SYSROOT=/opt/android-ndk/platforms/android-9/arch-arm
|
|
506 |
||
507 |
Native builds leave this empty.
|
|
12689
by Rob Walker
Add SYSROOT, EXTRA_{LDFLAGS,LDLIBS} config opts; sample Android NDK config |
508 |
|
9725
by Bernhard Reutner-Fischer
- add CONFIG_EXTRA_CFLAGS (thanks to keesj) |
509 |
config EXTRA_CFLAGS
|
510 |
string "Additional CFLAGS" |
|
511 |
default "" |
|
512 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
513 |
Additional CFLAGS to pass to the compiler verbatim.
|
9725
by Bernhard Reutner-Fischer
- add CONFIG_EXTRA_CFLAGS (thanks to keesj) |
514 |
|
12689
by Rob Walker
Add SYSROOT, EXTRA_{LDFLAGS,LDLIBS} config opts; sample Android NDK config |
515 |
config EXTRA_LDFLAGS
|
516 |
string "Additional LDFLAGS" |
|
517 |
default "" |
|
518 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
519 |
Additional LDFLAGS to pass to the linker verbatim.
|
12689
by Rob Walker
Add SYSROOT, EXTRA_{LDFLAGS,LDLIBS} config opts; sample Android NDK config |
520 |
|
521 |
config EXTRA_LDLIBS
|
|
522 |
string "Additional LDLIBS" |
|
523 |
default "" |
|
524 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
525 |
Additional LDLIBS to pass to the linker with -l.
|
12689
by Rob Walker
Add SYSROOT, EXTRA_{LDFLAGS,LDLIBS} config opts; sample Android NDK config |
526 |
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
527 |
config USE_PORTABLE_CODE
|
528 |
bool "Avoid using GCC-specific code constructs" |
|
529 |
default n
|
|
530 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
531 |
Use this option if you are trying to compile busybox with
|
532 |
compiler other than gcc.
|
|
533 |
If you do use gcc, this option may needlessly increase code size.
|
|
14737
by Denys Vlasenko
config: reorder items in "Busybox Settings", improve help |
534 |
|
15397
by Denys Vlasenko
i386: make stack size optimization selectable, and allow i486 insns (bswap) |
535 |
config STACK_OPTIMIZATION_386
|
536 |
bool "Use -mpreferred-stack-boundary=2 on i386 arch" |
|
537 |
default y
|
|
538 |
help
|
|
539 |
This option makes for smaller code, but some libc versions
|
|
540 |
do not work with it (they use SSE instructions without
|
|
541 |
ensuring stack alignment).
|
|
542 |
||
16701
by Denys Vlasenko
build system: make -static-libgcc selectable in config |
543 |
config STATIC_LIBGCC
|
544 |
bool "Use -static-libgcc" |
|
545 |
default y
|
|
546 |
help
|
|
547 |
This option instructs gcc to link in a static version of its
|
|
548 |
support library, libgcc. This means that the binary will require
|
|
549 |
one fewer dynamic library at run time.
|
|
550 |
||
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
551 |
comment 'Installation Options ("make install" behavior)' |
552 |
||
553 |
choice
|
|
554 |
prompt "What kind of applet links to install" |
|
555 |
default INSTALL_APPLET_SYMLINKS
|
|
556 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
557 |
Choose what kind of links to applets are created by "make install".
|
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
558 |
|
559 |
config INSTALL_APPLET_SYMLINKS
|
|
560 |
bool "as soft-links" |
|
561 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
562 |
Install applets as soft-links to the busybox binary. This needs some
|
563 |
free inodes on the filesystem, but might help with filesystem
|
|
564 |
generators that can't cope with hard-links.
|
|
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
565 |
|
566 |
config INSTALL_APPLET_HARDLINKS
|
|
567 |
bool "as hard-links" |
|
568 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
569 |
Install applets as hard-links to the busybox binary. This might
|
570 |
count on a filesystem with few inodes.
|
|
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
571 |
|
572 |
config INSTALL_APPLET_SCRIPT_WRAPPERS
|
|
573 |
bool "as script wrappers" |
|
574 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
575 |
Install applets as script wrappers that call the busybox binary.
|
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
576 |
|
577 |
config INSTALL_APPLET_DONT
|
|
578 |
bool "not installed" |
|
579 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
580 |
Do not install applet links. Useful when you plan to use
|
581 |
busybox --install for installing links, or plan to use
|
|
582 |
a standalone shell and thus don't need applet links.
|
|
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
583 |
|
584 |
endchoice
|
|
585 |
||
586 |
choice
|
|
587 |
prompt "/bin/sh applet link" |
|
588 |
default INSTALL_SH_APPLET_SYMLINK
|
|
589 |
depends on INSTALL_APPLET_SCRIPT_WRAPPERS
|
|
590 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
591 |
Choose how you install /bin/sh applet link.
|
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
592 |
|
593 |
config INSTALL_SH_APPLET_SYMLINK
|
|
594 |
bool "as soft-link" |
|
595 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
596 |
Install /bin/sh applet as soft-link to the busybox binary.
|
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
597 |
|
598 |
config INSTALL_SH_APPLET_HARDLINK
|
|
599 |
bool "as hard-link" |
|
600 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
601 |
Install /bin/sh applet as hard-link to the busybox binary.
|
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
602 |
|
603 |
config INSTALL_SH_APPLET_SCRIPT_WRAPPER
|
|
604 |
bool "as script wrapper" |
|
605 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
606 |
Install /bin/sh applet as script wrapper that calls
|
607 |
the busybox binary.
|
|
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
608 |
|
609 |
endchoice
|
|
610 |
||
611 |
config PREFIX
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
612 |
string "Destination path for 'make install'" |
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
613 |
default "./_install" |
614 |
help
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
615 |
Where "make install" should install busybox binary and links.
|
14300
by Denys Vlasenko
Collapse three levers of menuconfig to two levels. |
616 |
|
617 |
comment 'Debugging Options' |
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
618 |
|
6365
by Denis Vlasenko
build system overhaul |
619 |
config DEBUG
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
620 |
bool "Build with debug information" |
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
621 |
default n
|
622 |
help
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
623 |
Say Y here to compile with debug information.
|
624 |
This increases the size of the binary considerably, and
|
|
625 |
should only be used when doing development.
|
|
626 |
||
627 |
This adds -g option to gcc command line.
|
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
628 |
|
14777
by Denys Vlasenko
config: deindent all help texts |
629 |
Most people should answer N.
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
630 |
|
8939
by Denis Vlasenko
Reinstate DEBUG_PESSIMIZE (by Christian Ionescu-Idbohrn) |
631 |
config DEBUG_PESSIMIZE
|
9157
by Denis Vlasenko
config help fixes |
632 |
bool "Disable compiler optimizations" |
8939
by Denis Vlasenko
Reinstate DEBUG_PESSIMIZE (by Christian Ionescu-Idbohrn) |
633 |
default n
|
634 |
depends on DEBUG
|
|
635 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
636 |
The compiler's optimization of source code can eliminate and reorder
|
637 |
code, resulting in an executable that's hard to understand when
|
|
638 |
stepping through it with a debugger. This switches it off, resulting
|
|
639 |
in a much bigger executable that more closely matches the source
|
|
640 |
code.
|
|
8939
by Denis Vlasenko
Reinstate DEBUG_PESSIMIZE (by Christian Ionescu-Idbohrn) |
641 |
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
642 |
This replaces -Os/-O2 with -O0 in gcc command line.
|
643 |
||
13868
by Mike Frysinger
build: add a sanitizer debug option |
644 |
config DEBUG_SANITIZE
|
645 |
bool "Enable runtime sanitizers (ASAN/LSAN/USAN/etc...)" |
|
646 |
default n
|
|
647 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
648 |
Say Y here if you want to enable runtime sanitizers. These help
|
649 |
catch bad memory accesses (e.g. buffer overflows), but will make
|
|
650 |
the executable larger and slow down runtime a bit.
|
|
651 |
||
652 |
This adds -fsanitize=foo options to gcc command line.
|
|
653 |
||
654 |
If you aren't developing/testing busybox, say N here.
|
|
13868
by Mike Frysinger
build: add a sanitizer debug option |
655 |
|
13377
by Bartosz Golaszewski
unit-tests: implement the unit-testing framework |
656 |
config UNIT_TEST
|
657 |
bool "Build unit tests" |
|
658 |
default n
|
|
659 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
660 |
Say Y here if you want to build unit tests (both the framework and
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
661 |
test cases) as an applet. This results in bigger code, so you
|
14777
by Denys Vlasenko
config: deindent all help texts |
662 |
probably don't want this option in production builds.
|
13377
by Bartosz Golaszewski
unit-tests: implement the unit-testing framework |
663 |
|
6986
by Denis Vlasenko
Make -Werror configurable |
664 |
config WERROR
|
665 |
bool "Abort compilation on any warning" |
|
5651
by Rob Landley
Split CONFIG_DEBUG from CONFIG_DEBUG_PESSIMIZE, and consolidate some Rules.mak |
666 |
default n
|
667 |
help
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
668 |
This adds -Werror to gcc command line.
|
6986
by Denis Vlasenko
Make -Werror configurable |
669 |
|
14777
by Denys Vlasenko
config: deindent all help texts |
670 |
Most people should answer N.
|
6986
by Denis Vlasenko
Make -Werror configurable |
671 |
|
16348
by James Byrne
libbb: reduce the overhead of single parameter bb_error_msg() calls |
672 |
config WARN_SIMPLE_MSG
|
673 |
bool "Warn about single parameter bb_xx_msg calls" |
|
674 |
default n
|
|
675 |
help
|
|
676 |
This will cause warnings to be shown for any instances of
|
|
677 |
bb_error_msg(), bb_error_msg_and_die(), bb_perror_msg(),
|
|
678 |
bb_perror_msg_and_die(), bb_herror_msg() or bb_herror_msg_and_die()
|
|
679 |
being called with a single parameter. In these cases the equivalent
|
|
680 |
bb_simple_xx_msg function should be used instead.
|
|
681 |
Note that use of STRERROR_FMT may give false positives.
|
|
682 |
||
683 |
If you aren't developing busybox, say N here.
|
|
684 |
||
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
685 |
choice
|
686 |
prompt "Additional debugging library" |
|
6365
by Denis Vlasenko
build system overhaul |
687 |
default NO_DEBUG_LIB
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
688 |
help
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
689 |
Using an additional debugging library will make busybox become
|
690 |
considerably larger and will cause it to run more slowly. You
|
|
14777
by Denys Vlasenko
config: deindent all help texts |
691 |
should always leave this option disabled for production use.
|
692 |
||
693 |
dmalloc support:
|
|
694 |
----------------
|
|
695 |
This enables compiling with dmalloc ( http://dmalloc.com/ )
|
|
696 |
which is an excellent public domain mem leak and malloc problem
|
|
697 |
detector. To enable dmalloc, before running busybox you will
|
|
698 |
want to properly set your environment, for example:
|
|
699 |
export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile
|
|
700 |
The 'debug=' value is generated using the following command
|
|
701 |
dmalloc -p log-stats -p log-non-free -p log-bad-space \
|
|
702 |
-p log-elapsed-time -p check-fence -p check-heap \
|
|
703 |
-p check-lists -p check-blank -p check-funcs -p realloc-copy \
|
|
704 |
-p allow-free-null
|
|
705 |
||
706 |
Electric-fence support:
|
|
707 |
-----------------------
|
|
708 |
This enables compiling with Electric-fence support. Electric
|
|
709 |
fence is another very useful malloc debugging library which uses
|
|
710 |
your computer's virtual memory hardware to detect illegal memory
|
|
14824
by Denys Vlasenko
config: trim/improve item names and help texts. |
711 |
accesses. This support will make busybox be considerably larger
|
14777
by Denys Vlasenko
config: deindent all help texts |
712 |
and run slower, so you should leave this option disabled unless
|
713 |
you are hunting a hard to find memory problem.
|
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
714 |
|
715 |
||
6365
by Denis Vlasenko
build system overhaul |
716 |
config NO_DEBUG_LIB
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
717 |
bool "None" |
718 |
||
6365
by Denis Vlasenko
build system overhaul |
719 |
config DMALLOC
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
720 |
bool "Dmalloc" |
721 |
||
6365
by Denis Vlasenko
build system overhaul |
722 |
config EFENCE
|
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
723 |
bool "Electric-fence" |
724 |
||
725 |
endchoice
|
|
726 |
||
14736
by Denys Vlasenko
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu |
727 |
source libbb/Config.in
|
728 |
||
5097
by Rob Landley
Zap sysdeps directory, moving Config.in and defconfig to top of tree. |
729 |
endmenu
|
5331
by Mike Frysinger
rearrange the menu a little to split general settings from applet selection |
730 |
|
731 |
comment "Applets" |
|
732 |
||
733 |
source archival/Config.in
|
|
734 |
source coreutils/Config.in
|
|
735 |
source console-tools/Config.in
|
|
736 |
source debianutils/Config.in
|
|
15010
by Denys Vlasenko
klibc-utils: new applets: resume, nuke, minips |
737 |
source klibc-utils/Config.in
|
5331
by Mike Frysinger
rearrange the menu a little to split general settings from applet selection |
738 |
source editors/Config.in
|
739 |
source findutils/Config.in
|
|
740 |
source init/Config.in
|
|
741 |
source loginutils/Config.in
|
|
742 |
source e2fsprogs/Config.in
|
|
743 |
source modutils/Config.in
|
|
744 |
source util-linux/Config.in
|
|
745 |
source miscutils/Config.in
|
|
746 |
source networking/Config.in
|
|
9515
by Bernhard Reutner-Fischer
- improve wording and fix alphabetical order |
747 |
source printutils/Config.in
|
9576
by Denis Vlasenko
total overhaul of mail applets. again. Vladimir as usual. |
748 |
source mailutils/Config.in
|
5331
by Mike Frysinger
rearrange the menu a little to split general settings from applet selection |
749 |
source procps/Config.in
|
9515
by Bernhard Reutner-Fischer
- improve wording and fix alphabetical order |
750 |
source runit/Config.in
|
751 |
source selinux/Config.in
|
|
5331
by Mike Frysinger
rearrange the menu a little to split general settings from applet selection |
752 |
source shell/Config.in
|
753 |
source sysklogd/Config.in
|