[package] update busybox to 1.18.4, patch from Peter Wagner
[openwrt.git] / package / busybox / config / Config.in
1 #
2 # For a description of the syntax of this configuration file,
3 # see scripts/kbuild/config-language.txt.
4 #
5
6
7 config BUSYBOX_CONFIG_HAVE_DOT_CONFIG
8         bool
9         default y
10
11 menu "Busybox Settings"
12
13 menu "General Configuration"
14
15 config BUSYBOX_CONFIG_DESKTOP
16         bool "Enable options for full-blown desktop systems"
17         default n
18         help
19           Enable options and features which are not essential.
20           Select this only if you plan to use busybox on full-blown
21           desktop machine with common Linux distro, not on an embedded box.
22
23 config BUSYBOX_CONFIG_EXTRA_COMPAT
24         bool "Provide compatible behavior for rare corner cases (bigger code)"
25         default n
26         help
27           This option makes grep, sed etc handle rare corner cases
28           (embedded NUL bytes and such). This makes code bigger and uses
29           some GNU extensions in libc. You probably only need this option
30           if you plan to run busybox on desktop.
31
32 config BUSYBOX_CONFIG_INCLUDE_SUSv2
33         bool "Enable obsolete features removed before SUSv3"
34         default y
35         help
36           This option will enable backwards compatibility with SuSv2,
37           specifically, old-style numeric options ('command -1 <file>')
38           will be supported in head, tail, and fold. (Note: should
39           affect renice too.)
40
41 config BUSYBOX_CONFIG_USE_PORTABLE_CODE
42         bool "Avoid using GCC-specific code constructs"
43         default n
44         help
45           Use this option if you are trying to compile busybox with
46           compiler other than gcc.
47           If you do use gcc, this option may needlessly increase code size.
48
49 config BUSYBOX_CONFIG_PLATFORM_LINUX
50         bool "Enable Linux-specific applets and features"
51         default y
52         help
53           For the most part, busybox requires only POSIX compatibility
54           from the target system, but some applets and features use
55           Linux-specific interfaces.
56
57           Answering 'N' here will disable such applets and hide the
58           corresponding configuration options.
59
60 choice
61         prompt "Buffer allocation policy"
62         default BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK
63         help
64           There are 3 ways BusyBox can handle buffer allocations:
65           - Use malloc. This costs code size for the call to xmalloc.
66           - Put them on stack. For some very small machines with limited stack
67             space, this can be deadly. For most folks, this works just fine.
68           - Put them in BSS. This works beautifully for computers with a real
69             MMU (and OS support), but wastes runtime RAM for uCLinux. This
70             behavior was the only one available for BusyBox versions 0.48 and
71             earlier.
72
73 config BUSYBOX_CONFIG_FEATURE_BUFFERS_USE_MALLOC
74         bool "Allocate with Malloc"
75
76 config BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_ON_STACK
77         bool "Allocate on the Stack"
78
79 config BUSYBOX_CONFIG_FEATURE_BUFFERS_GO_IN_BSS
80         bool "Allocate in the .bss section"
81
82 endchoice
83
84 config BUSYBOX_CONFIG_SHOW_USAGE
85         bool "Show terse applet usage messages"
86         default y
87         help
88           All BusyBox applets will show help messages when invoked with
89           wrong arguments. You can turn off printing these terse usage
90           messages if you say no here.
91           This will save you up to 7k.
92
93 config BUSYBOX_CONFIG_FEATURE_VERBOSE_USAGE
94         bool "Show verbose applet usage messages"
95         default y
96         depends on BUSYBOX_CONFIG_SHOW_USAGE
97         help
98           All BusyBox applets will show more verbose help messages when
99           busybox is invoked with --help. This will add a lot of text to the
100           busybox binary. In the default configuration, this will add about
101           13k, but it can add much more depending on your configuration.
102
103 config BUSYBOX_CONFIG_FEATURE_COMPRESS_USAGE
104         bool "Store applet usage messages in compressed form"
105         default y
106         depends on BUSYBOX_CONFIG_SHOW_USAGE
107         help
108           Store usage messages in compressed form, uncompress them on-the-fly
109           when <applet> --help is called.
110
111           If you have a really tiny busybox with few applets enabled (and
112           bunzip2 isn't one of them), the overhead of the decompressor might
113           be noticeable. Also, if you run executables directly from ROM
114           and have very little memory, this might not be a win. Otherwise,
115           you probably want this.
116
117 config BUSYBOX_CONFIG_FEATURE_INSTALLER
118         bool "Support --install [-s] to install applet links at runtime"
119         default n
120         help
121           Enable 'busybox --install [-s]' support. This will allow you to use
122           busybox at runtime to create hard links or symlinks for all the
123           applets that are compiled into busybox.
124
125 config BUSYBOX_CONFIG_INSTALL_NO_USR
126         bool "Don't use /usr"
127         default n
128         depends on BUSYBOX_CONFIG_FEATURE_INSTALLER
129         help
130           Disable use of /usr. busybox --install and "make install"
131           will install applets only to /bin and /sbin,
132           never to /usr/bin or /usr/sbin.
133
134 config BUSYBOX_CONFIG_LOCALE_SUPPORT
135         bool "Enable locale support (system needs locale for this to work)"
136         default n
137         help
138           Enable this if your system has locale support and you would like
139           busybox to support locale settings.
140
141 config BUSYBOX_CONFIG_UNICODE_SUPPORT
142         bool "Support Unicode"
143         default n
144         help
145           This makes various applets aware that one byte is not
146           one character on screen.
147
148           Busybox aims to eventually work correctly with Unicode displays.
149           Any older encodings are not guaranteed to work.
150           Probably by the time when busybox will be fully Unicode-clean,
151           other encodings will be mainly of historic interest.
152
153 config BUSYBOX_CONFIG_UNICODE_USING_LOCALE
154         bool "Use libc routines for Unicode (else uses internal ones)"
155         default n
156         depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && BUSYBOX_CONFIG_LOCALE_SUPPORT
157         help
158           With this option on, Unicode support is implemented using libc
159           routines. Otherwise, internal implementation is used.
160           Internal implementation is smaller.
161
162 config BUSYBOX_CONFIG_FEATURE_CHECK_UNICODE_IN_ENV
163         bool "Check $LANG environment variable"
164         default n
165         depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && !BUSYBOX_CONFIG_UNICODE_USING_LOCALE
166         help
167           With this option on, Unicode support is activated
168           only if LANG variable has the value of the form "xxxx.utf8"
169
170           Otherwise, Unicode support will be always enabled and active.
171
172 config BUSYBOX_CONFIG_SUBST_WCHAR
173         int "Character code to substitute unprintable characters with"
174         depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
175         default 63
176         help
177           Typical values are 63 for '?' (works with any output device),
178           30 for ASCII substitute control code,
179           65533 (0xfffd) for Unicode replacement character.
180
181 config BUSYBOX_CONFIG_LAST_SUPPORTED_WCHAR
182         int "Range of supported Unicode characters"
183         depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
184         default 767
185         help
186           Any character with Unicode value bigger than this is assumed
187           to be non-printable on output device. Many applets replace
188           such chars with substitution character.
189
190           The idea is that many valid printable Unicode chars are
191           nevertheless are not displayed correctly. Think about
192           combining charachers, double-wide hieroglyphs, obscure
193           characters in dozens of ancient scripts...
194           Many terminals, terminal emulators, xterms etc will fail
195           to handle them correctly. Choose the smallest value
196           which suits your needs.
197
198           Typical values are:
199           126 - ASCII only
200           767 (0x2ff) - there are no combining chars in [0..767] range
201                         (the range includes Latin 1, Latin Ext. A and B),
202                         code is ~700 bytes smaller for this case.
203           4351 (0x10ff) - there are no double-wide chars in [0..4351] range,
204                         code is ~300 bytes smaller for this case.
205           12799 (0x31ff) - nearly all non-ideographic characters are
206                         available in [0..12799] range, including
207                         East Asian scripts like katakana, hiragana, hangul,
208                         bopomofo...
209           0 - off, any valid printable Unicode character will be printed.
210
211 config BUSYBOX_CONFIG_UNICODE_COMBINING_WCHARS
212         bool "Allow zero-width Unicode characters on output"
213         default n
214         depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
215         help
216           With this option off, any Unicode char with width of 0
217           is substituted on output.
218
219 config BUSYBOX_CONFIG_UNICODE_WIDE_WCHARS
220         bool "Allow wide Unicode characters on output"
221         default n
222         depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
223         help
224           With this option off, any Unicode char with width > 1
225           is substituted on output.
226
227 config BUSYBOX_CONFIG_UNICODE_BIDI_SUPPORT
228         bool "Bidirectional character-aware line input"
229         default n
230         depends on BUSYBOX_CONFIG_UNICODE_SUPPORT && !BUSYBOX_CONFIG_UNICODE_USING_LOCALE
231         help
232           With this option on, right-to-left Unicode characters
233           are treated differently on input (e.g. cursor movement).
234
235 config BUSYBOX_CONFIG_UNICODE_NEUTRAL_TABLE
236         bool "In bidi input, support non-ASCII neutral chars too"
237         default n
238         depends on BUSYBOX_CONFIG_UNICODE_BIDI_SUPPORT
239         help
240           In most cases it's enough to treat only ASCII non-letters
241           (i.e. punctuation, numbers and space) as characters
242           with neutral directionality.
243           With this option on, more extensive (and bigger) table
244           of neutral chars will be used.
245
246 config BUSYBOX_CONFIG_UNICODE_PRESERVE_BROKEN
247         bool "Make it possible to enter sequences of chars which are not Unicode"
248         default n
249         depends on BUSYBOX_CONFIG_UNICODE_SUPPORT
250         help
251           With this option on, invalid UTF-8 bytes are not substituted
252           with the selected substitution character.
253           For example, this means that entering 'l', 's', ' ', 0xff, [Enter]
254           at shell prompt will list file named 0xff (single char name
255           with char value 255), not file named '?'.
256
257 config BUSYBOX_CONFIG_LONG_OPTS
258         bool "Support for --long-options"
259         default y
260         help
261           Enable this if you want busybox applets to use the gnu --long-option
262           style, in addition to single character -a -b -c style options.
263
264 config BUSYBOX_CONFIG_FEATURE_DEVPTS
265         bool "Use the devpts filesystem for Unix98 PTYs"
266         default y
267         help
268           Enable if you want BusyBox to use Unix98 PTY support. If enabled,
269           busybox will use /dev/ptmx for the master side of the pseudoterminal
270           and /dev/pts/<number> for the slave side. Otherwise, BSD style
271           /dev/ttyp<number> will be used. To use this option, you should have
272           devpts mounted.
273
274 config BUSYBOX_CONFIG_FEATURE_CLEAN_UP
275         bool "Clean up all memory before exiting (usually not needed)"
276         default n
277         help
278           As a size optimization, busybox normally exits without explicitly
279           freeing dynamically allocated memory or closing files. This saves
280           space since the OS will clean up for us, but it can confuse debuggers
281           like valgrind, which report tons of memory and resource leaks.
282
283           Don't enable this unless you have a really good reason to clean
284           things up manually.
285
286 config BUSYBOX_CONFIG_FEATURE_WTMP
287         bool "Support wtmp file"
288         default n
289         select BUSYBOX_CONFIG_FEATURE_UTMP
290         help
291           The file /var/run/wtmp is used to track when users have logged into
292           and logged out of the system.
293           With this option on, certain applets (getty, login, telnetd etc)
294           will append new entries there.
295           "last" applet requires this option.
296
297 config BUSYBOX_CONFIG_FEATURE_UTMP
298         bool "Support utmp file"
299         default n
300         help
301           The file /var/run/utmp is used to track who is currently logged in.
302           With this option on, certain applets (getty, login, telnetd etc)
303           will create and delete entries there.
304           "who" applet requires this option.
305
306 config BUSYBOX_CONFIG_FEATURE_PIDFILE
307         bool "Support writing pidfiles"
308         default y
309         help
310           This option makes some applets (e.g. crond, syslogd, inetd) write
311           a pidfile in /var/run. Some applications rely on them.
312
313 config BUSYBOX_CONFIG_FEATURE_SUID
314         bool "Support for SUID/SGID handling"
315         default y
316         help
317           With this option you can install the busybox binary belonging
318           to root with the suid bit set, enabling some applets to perform
319           root-level operations even when run by ordinary users
320           (for example, mounting of user mounts in fstab needs this).
321
322           Busybox will automatically drop priviledges for applets
323           that don't need root access.
324
325           If you are really paranoid and don't want to do this, build two
326           busybox binaries with different applets in them (and the appropriate
327           symlinks pointing to each binary), and only set the suid bit on the
328           one that needs it.
329
330           The applets currently marked to need the suid bit are:
331
332           crontab, dnsd, findfs, ipcrm, ipcs, login, passwd, ping, su,
333           traceroute, vlock.
334
335 config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG
336         bool "Runtime SUID/SGID configuration via /etc/busybox.conf"
337         default n if BUSYBOX_CONFIG_FEATURE_SUID
338         depends on BUSYBOX_CONFIG_FEATURE_SUID
339         help
340           Allow the SUID / SGID state of an applet to be determined at runtime
341           by checking /etc/busybox.conf. (This is sort of a poor man's sudo.)
342           The format of this file is as follows:
343
344           <applet> = [Ssx-][Ssx-][x-] (<username>|<uid>).(<groupname>|<gid>)
345
346           An example might help:
347
348           [SUID]
349           su = ssx root.0 # applet su can be run by anyone and runs with
350                           # euid=0/egid=0
351           su = ssx        # exactly the same
352
353           mount = sx- root.disk # applet mount can be run by root and members
354                                 # of group disk and runs with euid=0
355
356           cp = --- # disable applet cp for everyone
357
358           The file has to be owned by user root, group root and has to be
359           writeable only by root:
360                 (chown 0.0 /etc/busybox.conf; chmod 600 /etc/busybox.conf)
361           The busybox executable has to be owned by user root, group
362           root and has to be setuid root for this to work:
363                 (chown 0.0 /bin/busybox; chmod 4755 /bin/busybox)
364
365           Robert 'sandman' Griebl has more information here:
366           <url: http://www.softforge.de/bb/suid.html >.
367
368 config BUSYBOX_CONFIG_FEATURE_SUID_CONFIG_QUIET
369         bool "Suppress warning message if /etc/busybox.conf is not readable"
370         default n
371         depends on BUSYBOX_CONFIG_FEATURE_SUID_CONFIG
372         help
373           /etc/busybox.conf should be readable by the user needing the SUID,
374           check this option to avoid users to be notified about missing
375           permissions.
376
377 config BUSYBOX_CONFIG_SELINUX
378         bool "Support NSA Security Enhanced Linux"
379         default n
380         depends on BUSYBOX_CONFIG_PLATFORM_LINUX
381         help
382           Enable support for SELinux in applets ls, ps, and id. Also provide
383           the option of compiling in SELinux applets.
384
385           If you do not have a complete SELinux userland installed, this stuff
386           will not compile. Go visit
387                 http://www.nsa.gov/selinux/index.html
388           to download the necessary stuff to allow busybox to compile with
389           this option enabled. Specifially, libselinux 1.28 or better is
390           directly required by busybox. If the installation is located in a
391           non-standard directory, provide it by invoking make as follows:
392                 CFLAGS=-I<libselinux-include-path> \
393                 LDFLAGS=-L<libselinux-lib-path> \
394                 make
395
396           Most people will leave this set to 'N'.
397
398 config BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS
399         bool "exec prefers applets"
400         default y
401         help
402           This is an experimental option which directs applets about to
403           call 'exec' to try and find an applicable busybox applet before
404           searching the PATH. This is typically done by exec'ing
405           /proc/self/exe.
406           This may affect shell, find -exec, xargs and similar applets.
407           They will use applets even if /bin/<applet> -> busybox link
408           is missing (or is not a link to busybox). However, this causes
409           problems in chroot jails without mounted /proc and with ps/top
410           (command name can be shown as 'exe' for applets started this way).
411
412 config BUSYBOX_CONFIG_BUSYBOX_EXEC_PATH
413         string "Path to BusyBox executable"
414         default "/proc/self/exe"
415         help
416           When Busybox applets need to run other busybox applets, BusyBox
417           sometimes needs to exec() itself. When the /proc filesystem is
418           mounted, /proc/self/exe always points to the currently running
419           executable. If you haven't got /proc, set this to wherever you
420           want to run BusyBox from.
421
422 # These are auto-selected by other options
423
424 config BUSYBOX_CONFIG_FEATURE_SYSLOG
425         bool #No description makes it a hidden option
426         default y
427         #help
428         #  This option is auto-selected when you select any applet which may
429         #  send its output to syslog. You do not need to select it manually.
430
431 config BUSYBOX_CONFIG_FEATURE_HAVE_RPC
432         bool #No description makes it a hidden option
433         default n
434         #help
435         #  This is automatically selected if any of enabled applets need it.
436         #  You do not need to select it manually.
437
438 endmenu
439
440 menu 'Build Options'
441
442 config BUSYBOX_CONFIG_STATIC
443         bool "Build BusyBox as a static binary (no shared libs)"
444         default n
445         help
446           If you want to build a static BusyBox binary, which does not
447           use or require any shared libraries, then enable this option.
448           This can cause BusyBox to be considerably larger, so you should
449           leave this option false unless you have a good reason (i.e.
450           your target platform does not support shared libraries, or
451           you are building an initrd which doesn't need anything but
452           BusyBox, etc).
453
454           Most people will leave this set to 'N'.
455
456 config BUSYBOX_CONFIG_PIE
457         bool "Build BusyBox as a position independent executable"
458         default n
459         depends on !BUSYBOX_CONFIG_STATIC
460         help
461           (TODO: what is it and why/when is it useful?)
462           Most people will leave this set to 'N'.
463
464 config BUSYBOX_CONFIG_NOMMU
465         bool "Force NOMMU build"
466         default n
467         help
468           Busybox tries to detect whether architecture it is being
469           built against supports MMU or not. If this detection fails,
470           or if you want to build NOMMU version of busybox for testing,
471           you may force NOMMU build here.
472
473           Most people will leave this set to 'N'.
474
475 # PIE can be made to work with BUILD_LIBBUSYBOX, but currently
476 # build system does not support that
477 config BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
478         bool "Build shared libbusybox"
479         default n
480         depends on !BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS && !BUSYBOX_CONFIG_PIE && !BUSYBOX_CONFIG_STATIC
481         help
482           Build a shared library libbusybox.so.N.N.N which contains all
483           busybox code.
484
485           This feature allows every applet to be built as a tiny
486           separate executable. Enabling it for "one big busybox binary"
487           approach serves no purpose and increases code size.
488           You should almost certainly say "no" to this.
489
490 ### config FEATURE_FULL_LIBBUSYBOX
491 ###     bool "Feature-complete libbusybox"
492 ###     default n if !FEATURE_SHARED_BUSYBOX
493 ###     depends on BUILD_LIBBUSYBOX
494 ###     help
495 ###       Build a libbusybox with the complete feature-set, disregarding
496 ###       the actually selected config.
497 ###
498 ###       Normally, libbusybox will only contain the features which are
499 ###       used by busybox itself. If you plan to write a separate
500 ###       standalone application which uses libbusybox say 'Y'.
501 ###
502 ###       Note: libbusybox is GPL, not LGPL, and exports no stable API that
503 ###       might act as a copyright barrier. We can and will modify the
504 ###       exported function set between releases (even minor version number
505 ###       changes), and happily break out-of-tree features.
506 ###
507 ###       Say 'N' if in doubt.
508
509 config BUSYBOX_CONFIG_FEATURE_INDIVIDUAL
510         bool "Produce a binary for each applet, linked against libbusybox"
511         default n
512         depends on BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
513         help
514           If your CPU architecture doesn't allow for sharing text/rodata
515           sections of running binaries, but allows for runtime dynamic
516           libraries, this option will allow you to reduce memory footprint
517           when you have many different applets running at once.
518
519           If your CPU architecture allows for sharing text/rodata,
520           having single binary is more optimal.
521
522           Each applet will be a tiny program, dynamically linked
523           against libbusybox.so.N.N.N.
524
525           You need to have a working dynamic linker.
526
527 config BUSYBOX_CONFIG_FEATURE_SHARED_BUSYBOX
528         bool "Produce additional busybox binary linked against libbusybox"
529         default n
530         depends on BUSYBOX_CONFIG_BUILD_LIBBUSYBOX
531         help
532           Build busybox, dynamically linked against libbusybox.so.N.N.N.
533
534           You need to have a working dynamic linker.
535
536 ### config BUILD_AT_ONCE
537 ###     bool "Compile all sources at once"
538 ###     default n
539 ###     help
540 ###       Normally each source-file is compiled with one invocation of
541 ###       the compiler.
542 ###       If you set this option, all sources are compiled at once.
543 ###       This gives the compiler more opportunities to optimize which can
544 ###       result in smaller and/or faster binaries.
545 ###
546 ###       Setting this option will consume alot of memory, e.g. if you
547 ###       enable all applets with all features, gcc uses more than 300MB
548 ###       RAM during compilation of busybox.
549 ###
550 ###       This option is most likely only beneficial for newer compilers
551 ###       such as gcc-4.1 and above.
552 ###
553 ###       Say 'N' unless you know what you are doing.
554
555 config BUSYBOX_CONFIG_LFS
556         bool
557         default y
558         select BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS
559         help
560           If you want to build BusyBox with large file support, then enable
561           this option. This will have no effect if your kernel or your C
562           library lacks large file support for large files. Some of the
563           programs that can benefit from large file support include dd, gzip,
564           cp, mount, tar, and many others. If you want to access files larger
565           than 2 Gigabytes, enable this option. Otherwise, leave it set to 'N'.
566
567 config BUSYBOX_CONFIG_CROSS_COMPILER_PREFIX
568         string "Cross Compiler prefix"
569         default ""
570         help
571           If you want to build BusyBox with a cross compiler, then you
572           will need to set this to the cross-compiler prefix, for example,
573           "i386-uclibc-".
574
575           Note that CROSS_COMPILE environment variable or
576           "make CROSS_COMPILE=xxx ..." will override this selection.
577
578           Native builds leave this empty.
579
580 config BUSYBOX_CONFIG_EXTRA_CFLAGS
581         string "Additional CFLAGS"
582         default ""
583         help
584           Additional CFLAGS to pass to the compiler verbatim.
585
586 endmenu
587
588 menu 'Debugging Options'
589
590 config BUSYBOX_CONFIG_DEBUG
591         bool "Build BusyBox with extra Debugging symbols"
592         default n
593         help
594           Say Y here if you wish to examine BusyBox internals while applets are
595           running. This increases the size of the binary considerably, and
596           should only be used when doing development. If you are doing
597           development and want to debug BusyBox, answer Y.
598
599           Most people should answer N.
600
601 config BUSYBOX_CONFIG_DEBUG_PESSIMIZE
602         bool "Disable compiler optimizations"
603         default n
604         depends on BUSYBOX_CONFIG_DEBUG
605         help
606           The compiler's optimization of source code can eliminate and reorder
607           code, resulting in an executable that's hard to understand when
608           stepping through it with a debugger. This switches it off, resulting
609           in a much bigger executable that more closely matches the source
610           code.
611
612 config BUSYBOX_CONFIG_WERROR
613         bool "Abort compilation on any warning"
614         default n
615         help
616           Selecting this will add -Werror to gcc command line.
617
618           Most people should answer N.
619
620 choice
621         prompt "Additional debugging library"
622         default BUSYBOX_CONFIG_NO_DEBUG_LIB
623         help
624           Using an additional debugging library will make BusyBox become
625           considerable larger and will cause it to run more slowly. You
626           should always leave this option disabled for production use.
627
628           dmalloc support:
629           ----------------
630           This enables compiling with dmalloc ( http://dmalloc.com/ )
631           which is an excellent public domain mem leak and malloc problem
632           detector. To enable dmalloc, before running busybox you will
633           want to properly set your environment, for example:
634             export DMALLOC_OPTIONS=debug=0x34f47d83,inter=100,log=logfile
635           The 'debug=' value is generated using the following command
636             dmalloc -p log-stats -p log-non-free -p log-bad-space \
637                -p log-elapsed-time -p check-fence -p check-heap \
638                -p check-lists -p check-blank -p check-funcs -p realloc-copy \
639                -p allow-free-null
640
641           Electric-fence support:
642           -----------------------
643           This enables compiling with Electric-fence support. Electric
644           fence is another very useful malloc debugging library which uses
645           your computer's virtual memory hardware to detect illegal memory
646           accesses. This support will make BusyBox be considerable larger
647           and run slower, so you should leave this option disabled unless
648           you are hunting a hard to find memory problem.
649
650
651 config BUSYBOX_CONFIG_NO_DEBUG_LIB
652         bool "None"
653
654 config BUSYBOX_CONFIG_DMALLOC
655         bool "Dmalloc"
656
657 config BUSYBOX_CONFIG_EFENCE
658         bool "Electric-fence"
659
660 endchoice
661
662 ### config PARSE
663 ###     bool "Uniform config file parser debugging applet: parse"
664
665 endmenu
666
667 menu 'Installation Options ("make install" behavior)'
668
669 choice
670         prompt "What kind of applet links to install"
671         default BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS
672         help
673           Choose what kind of links to applets are created by "make install".
674
675 config BUSYBOX_CONFIG_INSTALL_APPLET_SYMLINKS
676         bool "as soft-links"
677         help
678           Install applets as soft-links to the busybox binary. This needs some
679           free inodes on the filesystem, but might help with filesystem
680           generators that can't cope with hard-links.
681
682 config BUSYBOX_CONFIG_INSTALL_APPLET_HARDLINKS
683         bool "as hard-links"
684         help
685           Install applets as hard-links to the busybox binary. This might
686           count on a filesystem with few inodes.
687
688 config BUSYBOX_CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS
689         bool "as script wrappers"
690         help
691           Install applets as script wrappers that call the busybox binary.
692
693 config BUSYBOX_CONFIG_INSTALL_APPLET_DONT
694         bool "not installed"
695         depends on BUSYBOX_CONFIG_FEATURE_INSTALLER || BUSYBOX_CONFIG_FEATURE_SH_STANDALONE || BUSYBOX_CONFIG_FEATURE_PREFER_APPLETS
696         help
697           Do not install applet links. Useful when you plan to use
698           busybox --install for installing links, or plan to use
699           a standalone shell and thus don't need applet links.
700
701 endchoice
702
703 choice
704         prompt "/bin/sh applet link"
705         default BUSYBOX_CONFIG_INSTALL_SH_APPLET_SYMLINK
706         depends on BUSYBOX_CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS
707         help
708           Choose how you install /bin/sh applet link.
709
710 config BUSYBOX_CONFIG_INSTALL_SH_APPLET_SYMLINK
711         bool "as soft-link"
712         help
713           Install /bin/sh applet as soft-link to the busybox binary.
714
715 config BUSYBOX_CONFIG_INSTALL_SH_APPLET_HARDLINK
716         bool "as hard-link"
717         help
718           Install /bin/sh applet as hard-link to the busybox binary.
719
720 config BUSYBOX_CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER
721         bool "as script wrapper"
722         help
723           Install /bin/sh applet as script wrapper that calls
724           the busybox binary.
725
726 endchoice
727
728 config BUSYBOX_CONFIG_PREFIX
729         string "BusyBox installation prefix"
730         default "./_install"
731         help
732           Define your directory to install BusyBox files/subdirs in.
733
734 endmenu
735
736 source package/busybox/config/libbb/Config.in
737
738 endmenu
739
740 comment "Applets"
741
742 source package/busybox/config/archival/Config.in
743 source package/busybox/config/coreutils/Config.in
744 source package/busybox/config/console-tools/Config.in
745 source package/busybox/config/debianutils/Config.in
746 source package/busybox/config/editors/Config.in
747 source package/busybox/config/findutils/Config.in
748 source package/busybox/config/init/Config.in
749 source package/busybox/config/loginutils/Config.in
750 source package/busybox/config/e2fsprogs/Config.in
751 source package/busybox/config/modutils/Config.in
752 source package/busybox/config/util-linux/Config.in
753 source package/busybox/config/miscutils/Config.in
754 source package/busybox/config/networking/Config.in
755 source package/busybox/config/printutils/Config.in
756 source package/busybox/config/mailutils/Config.in
757 source package/busybox/config/procps/Config.in
758 source package/busybox/config/runit/Config.in
759 source package/busybox/config/selinux/Config.in
760 source package/busybox/config/shell/Config.in
761 source package/busybox/config/sysklogd/Config.in